부록 B. 전원 관리 드라이버
director는 기본적으로 전원 관리 컨트롤에 IPMI를 사용하지만 다른 전원 관리 유형도 지원합니다. 이 부록은 지원되는 전원 관리 기능 목록을 제공합니다. 5.1절. “오버클라우드에 노드 등록”에 대해 이러한 전원 관리 설정을 사용하십시오.
B.1. DRAC(Dell Remote Access Controller)
DRAC는 전원 관리 및 서버 모니터링을 포함하여 대역 외 원격 관리 기능을 제공하는 인터페이스입니다.
- pm_type
-
이 옵션을
pxe_drac
로 설정합니다. - pm_user; pm_password
- DRAC 사용자 이름 및 암호입니다.
- pm_addr
- DRAC 호스트의 IP 주소입니다.
B.2. iLO(Integrated Lights-Out)
Hewlett-Packard의 iLO는 전원 관리 및 서버 모니터링을 포함하여 대역 외 원격 관리 기능을 제공하는 인터페이스입니다.
- pm_type
-
이 옵션을
pxe_ilo
로 설정합니다. - pm_user; pm_password
- iLO 사용자 이름 및 암호입니다.
- pm_addr
iLO 인터페이스의 IP 주소입니다.
-
/etc/ironic/ironic.conf
파일을 편집하고pxe_ilo
를enabled_drivers
옵션에 추가하여 이 드라이버를 활성화합니다. director에는 iLo에 대한 추가 유틸리티 세트도 필요합니다.
python-proliantutils
패키지를 설치하고openstack-ironic-conductor
서비스를 다시 시작합니다.$ sudo yum install python-proliantutils $ sudo systemctl restart openstack-ironic-conductor.service
- 성공적인 introspection을 위해서는 HP 노드가 2015 펌웨어 버전이어야 합니다. director는 펌웨어 버전 1.85(2015년 5월 13일)를 사용하는 노드에서 성공적으로 테스트되었습니다.
- 공유 iLO 포트 사용은 지원되지 않습니다.
-
B.3. iBoot
Dataprobe의 iBoot는 시스템에 원격 관리를 제공하는 전원 장치입니다.
- pm_type
-
이 옵션을
pxe_iboot
로 설정합니다. - pm_user; pm_password
- iBoot 사용자 이름 및 암호입니다.
- pm_addr
- iBoot 인터페이스의 IP 주소입니다.
- pm_relay_id(선택 사항)
- 호스트에 대한 iBoot 릴레이 ID입니다. 기본값은 1입니다.
- pm_port(선택 사항)
iBoot 포트입니다. 기본값은 9100입니다.
-
/etc/ironic/ironic.conf
파일을 편집하고pxe_iboot
를enabled_drivers
옵션에 추가하여 이 드라이버를 활성화합니다.
-
B.4. Cisco UCS(Unified Computing System)
Cisco의 UCS는 계산, 네트워크, 스토리지 액세스 및 가상화 리소스를 통합한 데이터 센터 플랫폼입니다. 이 드라이버는 UCS에 연결된 베어 메탈 시스템의 전원 관리에 중점을 둡니다.
- pm_type
-
이 옵션을
pxe_ucs
로 설정합니다. - pm_user; pm_password
- UCS 사용자 이름 및 암호입니다.
- pm_addr
- UCS 인터페이스의 IP 주소입니다.
- pm_service_profile
사용할 UCS 서비스 프로필입니다. 일반적으로
org-root/ls-[service_profile_name]
형식을 사용합니다. 예를 들면 다음과 같습니다."pm_service_profile": "org-root/ls-Nova-1"
-
/etc/ironic/ironic.conf
파일을 편집하고pxe_ucs
를enabled_drivers
옵션에 추가하여 이 드라이버를 활성화합니다. director에는 UCS에 대한 추가 유틸리티 세트도 필요합니다.
python-UcsSdk
패키지를 설치하고openstack-ironic-conductor
서비스를 다시 시작합니다.$ sudo yum install python-UcsSdk $ sudo systemctl restart openstack-ironic-conductor.service
-
B.5. Fujitsu iRMC(Integrated Remote Management Controller)
Fujitsu의 iRMC는 통합된 LAN 연결 및 확장된 기능이 있는 BMC(Baseboard Management Controller)입니다. 이 드라이버는 iRMC에 연결된 베어 메탈 시스템의 전원 관리에 중점을 둡니다.
iRMC S4 이상이 필요합니다.
- pm_type
-
이 옵션을
pxe_irmc
로 설정합니다. - pm_user; pm_password
- iRMC 인터페이스에 대한 사용자 이름 및 암호입니다.
- pm_addr
- iRMC 인터페이스의 IP 주소입니다.
- pm_port(선택 사항)
- iRMC 작업에 사용할 포트입니다. 기본값은 443입니다.
- pm_auth_method(선택 사항)
-
iRMC 작업에 대한 인증 방법입니다.
basic
또는digest
를 사용합니다. 기본값은basic
입니다. - pm_client_timeout(선택 사항)
- iRMC 작업에 대한 타임아웃(초)입니다. 기본값은 60초입니다.
- pm_sensor_method(선택 사항)
센서 데이터 검색 방법입니다.
ipmitool
또는scci
를 사용합니다. 기본값은ipmitool
입니다.-
/etc/ironic/ironic.conf
파일을 편집하고pxe_irmc
를enabled_drivers
옵션에 추가하여 이 드라이버를 활성화합니다. SCCI를 센서 방법으로 활성화한 경우 director에는 추가 유틸리티 세트도 필요합니다.
python-scciclient
패키지를 설치하고openstack-ironic-conductor
서비스를 다시 시작합니다.$ yum install python-scciclient $ sudo systemctl restart openstack-ironic-conductor.service
-
B.6. VBMC(Virtual Bare Metal Controller)
director는 가상 머신을 KVM 호스트의 노드로 사용할 수 있습니다. 에뮬레이션된 IPMI 장치를 통해 해당 전원 관리를 제어합니다. 이를 통해 5.1절. “오버클라우드에 노드 등록”의 표준 IPMI 매개 변수를 사용할 수 있지만, 가상 노드에만 사용 가능합니다.
이 전원 관리 방법은 현재 더 이상 사용되지 않는 B.7절. “SSH 및 Virsh”의 방법을 대체합니다.
이 옵션은 가상 머신을 베어 메탈 노드 대신 사용합니다. 즉, 테스트 및 평가 목적에만 사용할 수 있습니다. Red Hat OpenStack Platform 엔터프라이즈 환경에는 사용하지 않는 것이 좋습니다.
KVM 호스트 구성
KVM 호스트에서 OpenStack Platform 리포지토리를 활성화하고 python-virtualbmc
패키지를 설치합니다.
$ sudo subscription-manager repos --enable=rhel-7-server-openstack-11-rpms $ sudo yum install -y python-virtualbmc
vbmc
명령을 사용하여 각 가상 머신에 대한 가상 BMC(베어 메탈 컨트롤러)를 생성합니다. 예를 들어 Node01
및 Node02
라는 가상 머신에 대한 BMC를 생성하려는 경우 다음 명령을 실행합니다.
$ vbmc add Node01 --port 6230 --username admin --password p455w0rd! $ vbmc add Node02 --port 6231 --username admin --password p455w0rd!
이는 각 BMC에 액세스할 포트를 정의하며 각 BMC의 인증 세부 사항을 설정합니다.
각 가상 머신에 다른 포트를 사용합니다. 1025 미만의 포트 번호에는 시스템에서 root 권한이 있어야 합니다.
다음 명령을 사용하여 각 BMC를 시작합니다.
$ vbmc start Node01 $ vbmc start Node02
KVM 호스트를 재부팅한 후 이 단계를 반복해야 합니다.
노드 등록
노드 등록 파일(/home/stack/instackenv.json
)에 다음 매개 변수를 사용합니다.
- pm_type
-
이 옵션을
pxe_ipmitool
로 설정합니다. - pm_user; pm_password
- 노드의 가상 BMC 장치에 대한 IPMI 사용자 이름 및 암호입니다.
- pm_addr
- 노드가 포함된 KVM 호스트의 IP 주소입니다.
- pm_port
- KVM 호스트에서 특정 노드에 액세스할 포트입니다.
- mac
- 노드에 있는 네트워크 인터페이스의 MAC 주소 목록입니다. 각 시스템의 프로비저닝 NIC에는 MAC 주소만 사용합니다.
예:
{ "nodes": [ { "pm_type": "pxe_ipmitool", "mac": [ "aa:aa:aa:aa:aa:aa" ], "pm_user": "admin", "pm_password": "p455w0rd!", "pm_addr": "192.168.0.1", "pm_port": "6230", "name": "Node01" }, { "pm_type": "pxe_ipmitool", "mac": [ "bb:bb:bb:bb:bb:bb" ], "pm_user": "admin", "pm_password": "p455w0rd!", "pm_addr": "192.168.0.1", "pm_port": "6231", "name": "Node02" } ] }
기존 노드 마이그레이션
더 이상 사용되지 않는 pxe_ssh
드라이버를 사용하는 기존 노드를 새 가상 BMC 방법을 사용하도록 마이그레이션합니다. 다음 명령은 pxe_ipmitool
드라이버와 해당 매개 변수를 사용하도록 노드를 설정하는 예입니다.
openstack baremetal node set Node01 \ --driver pxe_ipmitool \ --driver-info ipmi_address=192.168.0.1 \ --driver-info ipmi_port=6230 \ --driver-info ipmi_username="admin" \ --driver-info ipmi_password="p455w0rd!"
B.7. SSH 및 Virsh
director는 SSH를 통해 libvirt
를 실행하는 KVM 호스트에 액세스하고 가상 머신을 노드로 사용할 수 있습니다. director는 virsh를 사용하여 이러한 노드의 전원 관리를 제어합니다.
이제 B.6절. “VBMC(Virtual Bare Metal Controller)”에 나온 방법을 사용하므로 이 옵션은 더 이상 사용되지 않습니다. 사용되지 않는 이 드라이버를 계속 사용하려는 경우 테스트 및 평가 목적으로만 사용할 수 있습니다. Red Hat OpenStack Platform 엔터프라이즈 환경에는 사용하지 않는 것이 좋습니다.
- pm_type
-
이 옵션을
pxe_ssh
로 설정합니다. - pm_user; pm_password
SSH 개인 키의 SSH 사용자 이름 및 컨텐츠입니다. CLI 툴을 사용하여 노드를 등록하는 경우 개인 키는 이스케이프 문자(
\n
)로 새 줄이 교체된 줄에 있어야 합니다. 예를 들면 다음과 같습니다.-----BEGIN RSA PRIVATE KEY-----\nMIIEogIBAAKCAQEA .... kk+WXt9Y=\n-----END RSA PRIVATE KEY-----
SSH 공용 키를 libvirt 서버의
authorized_keys
컬렉션에 추가합니다.- pm_addr
가상 호스트의 IP 주소입니다.
-
libvirt를 호스팅하는 서버에는
pm_password
속성으로 설정된 공용 키와 SSH 키 쌍이 필요합니다. -
선택한
pm_user
가 libvirt 환경에 완전히 액세스할 수 있는지 확인합니다.
-
libvirt를 호스팅하는 서버에는
B.8. 페이크 PXE 드라이버
이 드라이버를 사용하면 전원 관리 없이 베어 메탈 장치를 사용할 수 있습니다. 따라서 director가 등록된 베어 메탈 장치를 제어하지 않으므로 introspect 및 배포 프로세스의 특정 시점에서 전원의 수동 제어가 필요합니다.
이 옵션은 테스트 및 평가 목적으로만 사용할 수 있습니다. Red Hat OpenStack Platform 엔터프라이즈 환경에는 사용하지 않는 것이 좋습니다.
- pm_type
이 옵션을
fake_pxe
로 설정합니다.- 이 드라이버는 전원 관리를 제어하지 않으므로 인증 세부 사항을 사용하지 않습니다.
/etc/ironic/ironic.conf
파일을 편집하고fake_pxe
를enabled_drivers
옵션에 추가하여 이 드라이버를 활성화합니다. 파일을 편집한 후에 베어 메탈 서비스를 다시 시작합니다.$ sudo systemctl restart openstack-ironic-api openstack-ironic-conductor
-
노드에서 introspection을 수행할 때
openstack baremetal introspection bulk start
명령을 실행한 후 노드의 전원을 수동으로 켭니다. -
오버클라우드 배포를 수행할 때
ironic node-list
명령을 사용하여 노드 상태를 확인합니다. 노드 상태가deploying
에서deploy wait-callback
으로 변경될 때까지 기다린 다음 노드의 전원을 수동으로 켭니다. -
오버클라우드 프로비저닝 프로세스가 완료되면 노드를 다시 시작합니다. 프로비저닝이 완료되었는지 확인하려면
ironic node-list
명령을 사용하여 노드 상태를 확인하고, 노드 상태가active
로 변경될 때까지 기다린 다음 모든 오버클라우드 노드를 수동으로 재부팅합니다.