콘텐츠로 이동

유진 중간평가

  • 문제에 답은 하나가 아닌 아는 것을 모두 써주시면 됩니다.

(빌트인 명령어, 벤더사 명령어 등 아는 것을 모두 써주세요)

(문제 지문의 내용이 이해가 되지 않으면 물어보셔도 됩니다.)

Q1. 싱글디스크 구성되어 있는 장비의 디스크 교체 절차.(장애디스크 /dev/sdb)

디스크가 하나 = 레이드 상태 x -> 디스크를 바로 마운트 해제한 뒤 교체해도 되는지 SE에게 질의 -> 해당 서버에 원격 접속 후. “disk u sdb” -> 물리 디스크 제거 및 교체 -> “disk m sdb” 다시 마운트 작업.

======================================================================================================================================================

Q2. cache, kage, tset 디스크 장애시 처리 절차

cache = SYS_IO_ERROR 발생 시 서버 원격 접속 후 로그 확인. -> 에러난 영역 확인 후 “df -Th” , “fdisk -l” , “smartctl” 등의 명령어를 활용하여 해당 영역의 오류가 맞는지 다시한 번 확인. -> “disk u [영역]” 으로 마운트 해제 -> 물리 디스크 제거 및 교체 -> “disk m [해당 영역]” 으로 마운드. -> 앞서 사용했던 확인 명령어로 디스크 마운트 잘 됬는지 확인.

kage = SYS_IO_ERROR 발생 시 원격 서버 접속 후 로그 확인. -> 에러난 영역 확인 후 “df -Th” , “fdisk -l” , “smartctl” 등의 명령어를 활용하여 해당 영역의 오류가 맞는지 다시한 번 확인. -> “./kagedisk.sh” 스크립트 사용하여 작업진행.

tset =. ….?

======================================================================================================================================================

Q3. 디스크 장애시 디스크 상태를 알 수 있는 벤더사별 명령어

공통

Ipmitool -I lanplus -H [iBMC IP] -U [user] -P [passworc] sdr type “Drive Slot”

: 서버의 드라이브 슬록에 대한 센서 정보를 나열하여 장애가 있는 디스크를 식별할 수 있다.

DELL

omreport system summary : 시스템의 전반적인 상태 확인(디스크 드라이브 정보 포함)

omreport storage controller : 서버에 설치된 모든 스토리지 컨트롤러의 상세 정보 확인

omreport storage pdisk controller=0 : 물리 디스크 상새정보 확인

omreprot storage vdisk controller=0 : 가상 디스크 상세정보 확인

omconfig storage pdisk controller=controller ID vdisk=virtual disk ID : 가상 디스크에 할당된 디스크 확인

HP

ssacli ctrl all show status : 컨트롤러 상태 확인

ssacli ctrl all show config : 모든 RAID 컨트롤러와 연결된 드라이브의 구성 및 상태 확인

ssacli ctrl slot=[슬롯 번호] pd all show status : 물리 드라이브 상태 확인

ssacli ctrl slot=0 pd all show detail : 물리 드라이브 상세 정보 ( slot 은 컨트롤러 정보 확인)

ssacli ctrl slot=[슬롯 번호] id all show status : 논리 드라이브 상태 확인

ssacli slot=0 id all show detail : 논리 드라이브 상세 정보 ( slot 은 컨트롤러 정보 확인)

Supermicro

sdc.sh : 디스크 정보 및 상태 확인

Huawei

uREST —method GET —resource /redfish/v1/System/1/Storage : REST API 를 통해 서버의 스토리지 시스템의 상태를 조회

Megaraid

megacli -PDlist -aALL : 물리 디스크 정보 확인

megacli -LDInfo -Lall -aALL : 논리 디스크 정보 확인

megacli -AdpAllInfo -aALL : 컨트롤러 정보 보기

megacli -PDInfo -PhysDrv [인클로저 번호 : 슬롯 번호] -aALL : 특정 물리 디스크에 대한 상세 정보 확인

megacli -AdpEventLog -GetEvents -aALL : 모든 이벤트 로그 보기

megacli -AdpBbuCmd -aALL : 배터리 백업 유닛(BBU) 상태 확인

megacli -CfgLdAdd -r0 [E:S] [E:S] -a0 : RAID 구성 생성

명령어 간편화

우선 절대 경로로 명령어를 사용하기엔 명령어가 상당히 길기때문에 링크 명령어로 간편화 한다.

ln -s /opt/MegaRAID/MegaCli/MegaCli64 /bin/megacli

이제부터 megacli로 명령어 사용 가능.

  1. 레이드 상태 요약 명령어
  1. 물리적 디스크 상태 확인
  1. 레이드 정보 확인
  1. 디스크 시간 체크
  1. 리빌딩 상태 확인
  1. 리빌딩 속도 확인
  1. RAID 컨트롤러 로그
  1. RAID 컨트롤러 정보 확인
  1. 인클로저 정보 확인
  1. 디바이스 별 펌웨어 상태 확인

StorCLI

storcli /c0 /eall /sall show : 컴트롤러 0에 연결된 모든 인클로저의 모든 슬롯에 있는 모든 디스크의 정보를 확인

storcli /c0 /eX /sY show : x(인클로저 번호), y(슬롯 번호) 특정 물리 디스크에 대한 정보 제공

[디스크 상태를 “online” , “offline” , “Failed” 등으로 확인할 수 있다.]

======================================================================================================================================================

Q4. 장애디스크 발생시 장애 위치(불빛)를 알 수 있는 명령어(storcli 외 벤더사 명령어 포함)

storcli /c0/eALL/sALL start locate : 컨트롤러,인클로저,슬롯 지정가능.

storcli /c0/eALL/sALL stop locate : 확인한 뒤 끔.

MegaCli -PdLocate -start -physdrv[E:S] -aALL : 인클로저 및 슬롯 번호 기입 후 킴.

MegaCli -PdLocate -stop -physdrv[E:S] -aALL : 끔.

HP 및 Dell 은 iLO 원격 관리 인터페이스 및 OMSA 웹 인터페이스를 이용.

======================================================================================================================================================

Q5. Fan 장애 확인 명령어

“cat /var/log/messages” 로 확인 시 “bnx2x 0000:06:00.0 eth0: Fan Failure on Network Controller has caused the driver to shutdown the card to prevent permanent damage.” 이라는 문구가 포함되어 있으면 NIC 카드 FAN 장애이다.

======================================================================================================================================================

Q6. 메모리 장애 확인 명령어 및 파트 넘버 확인

sudo dmidecode -t memory : 메모리 모듈에 대한 상세 정보 확인

sudo metester 1024 5 : 1GB의 메모리를 테스트하여 5회 반복한다는 명령어. (설치 되어있어야 가능)

======================================================================================================================================================

Q7. 파워 장애 확인 명령어

upower -i /org/freedesktop/devices/battery_BATO : 배터리 장치에 대한 정보 제공

dmesg | grep -i power : 시스템 로그에서 “power” 에 관련된 메시지를 필터링 하여 제공

acpi -v : 시스템의 배터리 상태, 전원 어댑터 상태 들을 제공

======================================================================================================================================================

Q7. PING_FAIL이 발생할 수 있는 상황

전원선이 제대로 연결되있지 않은 경우

서비스 케이블이 제대로 연결되있지 않은 경우

NIC 카드 FAN_ERROR

======================================================================================================================================================

Q8. HP 서버의 컨트롤러 및 컨트롤러 캐시, 배터리 상태 확인 명령어

ssacli ctrl all show status : 서버에 설치된 모든 HP 컨트롤러의 상태를 제공

ssacli ctrl all show detail : 모든 컨트롤러에 대한 자세한 정보 제공 (캐시의 상태, 구성, 용량 등)

ssacli ctrl all show detail : 컨트롤러 배터리 백업 유닛의 상태 제공 (배터리 상태, 충전 상태, 잔여 수명 등)

======================================================================================================================================================

Q9. ip 주소 변경 방법 및 CentOS에서의 설정파일 위치

centOS7 이상……

sudo vi /etc/sysconfig/network-scripts/ifcfg-[인터페이스 이름] : 설정 파일을 편집하여 IP 주소, 서브넷 마스크, 게이트웨이 등의 정보를 변경할 수 있음.

예)

BOOTPROTO=static

ONBOOT=yes

IPADDR=192.168.1.100

NETMASK=255.255.255.0

GATEWAY=192.168.1.1

DNS1=8.8.8.8

DNS2=8.8.4.4

등등등…

sudo systemctl restart network : 설정 완료 후 네트워크 재시작

======================================================================================================================================================

Q10. ipmi 주소 변경 방법

ipmitool lan print l : 현재 IPMI LAN 설정을 확인

sudo ipmitool lan set 1 ipaddr 192.xxx.x.xxx : iP 주소와 관련된 설정을 변경. (1은 LAN 채널을 의미하며, 대부분의 시스템에서 1을 사용한다.)

sudo ipmitool lan set 1 netmask 255.255.255.0 :iP 주소와 관련된 설정을 변경. (1은 LAN 채널을 의미하며, 대부분의 시스템에서 1을 사용한다.)

sudo ipmitool lan set 1 defgw ipaddr 192.xxx.x.x : iP 주소와 관련된 설정을 변경. (1은 LAN 채널을 의미하며, 대부분의 시스템에서 1을 사용한다.)

sudo ipmitool mc reset cold : 변경 사항을 적용하기 위해 IPMI 장치를 재설정하는 명령어

======================================================================================================================================================

Q11. 펌웨어 확인하는 법(BIOS, BMC, NIC)

공통사항…?

sudo ethtool -i [인터페이스 이름] : 인투페이스의 드라이버 및 펌웨어 정보를 제공

======================================================================================================================================================

Q<그림1>-1. 위 그림과 같이 디스크가 장착되어 있으며 RAID5로 구성되어 있을 떄 디스크 (RSIZE) 사용량을 구하시오.

(위 디스크 중 1장은 Hot spare로 사용됩니다.)

  • RAID 5는 최소 3개의 디스크가 필요하며, 데이터와 패리티가 모든 디스크에 분산 저장된다.
  • RAID 5 에서는 하나의 디스크 공간이 패리티 저장용으로 사용되므로, 실제 사용 가능한 총 저장 공간은 N -1 개 디스크의 용량이다.
  • 여기서 N 은 디스크의 총 수이다.
  • 총 12개의 디스크 중 1개가 핫 스페어로 사용되므로, 11개의 디스크가 사용되며, 각 디스크의 RSIZE 는819TB 이다.
  • RAID 5 의 사용 가능 저장 공간은 N - 1 이기 때문에, 11 - 1 = 10 즉19 TB 이다. (혹은 [인식불가한 디스크를 제외] 18.19 - 1.819 = 16.371 이다.)

======================================================================================================================================================

Q<그림1>-2. 위 그림에서 블록 부분인 unconfigured(bad) 부분을 unconfigured(good)으로 변경하는 법

  • unconfigured 는 디스크가 RAID 구성에 포함되지 않고, 일반적으로 오류가 있거나 사용할 수 없는 상태를 의미한다.
  • cat /var/log/messages 로 로그를 확인한다.
  • dmesg 로 로그를 확인한다.
  • smartctl -a /dev/sdl 을 실행하여 오류를 확인한다.
  • 물리적인 손상이 없는경우 (교체x) 다음을 진행

MegaCLI 사용

  • MegaCli -PDlist -aALL : 디스크 상태 확인
  • MefaCli -PDMakeGood -PhysDrv [E:S] -aALL : 상태 확인 시 찾아논 Enclosure Number 와 Slot Number 를 해당 명령어에 포함시켜 사용. 디스크 상태를 GOOD 으로 변경한다.
  • MegaCli -Cfgforeign -Clear -aALL : 스캔 후 재구성. 외부 구성을 제거하고, 시스템이 새로운 구성을 인식하도록 하는 명령어. 변경사항 적용.

StorCLI 사용

  • storcli /c0 /eall /sall show : 모든 컨트롤러, 모든 인클로저, 모든 슬록의 디스크 상태 확인
  • storcli /c0/eX/sY set good : X/Y 에 대입되는 인크롤저 및 슬롯 번호를 확인명령어를 통해 알아낸 뒤 적용하여 사용. 해당 명령어는 특정 디스크를 GOOD 상태로 설정한다.
  • storcli /c0/fall delete : 외부 구성 제거. 모든 외부 구성을 제거한다.
  • storcli /c0 rescan : 디스크 상태 변경 후 재스캔
  • storcli /c0/eX/sY show : 컨트롤러 0 의 특정 인클로저 X 와 슬롯 Y 에 있는 디스크의 상태를 보여준다.
  • storcli /c0 /eall /sall show : 컨트롤러 0 에 연결된 모든 인클로저와 모든 슬롯의 디스크 상태를 보여준다.

주의사항

  • 디스크가 실제로 물리적인 손상을 입었다면, 해당 명령어들로 상태를 “Good” 으로 변결하는 것은 추천되지 않는다. 대신, 디스크를 교체하는 것이 필수이다.
  • 상태 변경 전 디스크의 중요 데이터를 백업해야 한다.

변경 사항을 적용한 후에는 서버를 재시작하고, 디스크가 정상적으로 작동하는지 확인한다.