17.4. 컨트롤러 노드 교체

컨트롤러 노드를 교체하려면 교체할 노드의 인덱스를 확인합니다.

  • 노드가 가상 노드인 경우 오류가 발생한 디스크를 포함하는 노드를 확인하고 백업에서 디스크를 복원합니다. 오류가 발생한 서버에서 PXE 부팅에 사용되는 NIC의 MAC 주소가 디스크 교체 후에도 동일하게 유지되는지 확인합니다.
  • 노드가 베어 메탈 노드인 경우 디스크를 교체하고, 오버클라우드 구성을 사용하여 새 디스크를 준비한 후 새 하드웨어에서 노드 인트로스펙션을 수행합니다.
  • 노드가 펜싱 기능이 있는 고가용성 클러스터에 속하는 경우 Galera 노드를 별도로 복구해야 할 수 있습니다. 자세한 내용은 How Galera works and how to rescue Galera clusters in the context of Red Hat OpenStack Platform 문서를 참조하십시오.

overcloud-controller-1 노드를 overcloud-controller-3 노드로 교체하려면 다음 예제 단계를 완료합니다. overcloud-controller-3 노드의 ID는 75b25e9a-948d-424a-9b3b-f0ef70a6eacf입니다.

중요

노드를 기존 베어 메탈 노드로 교체하려면 director가 노드를 자동으로 다시 프로비저닝하지 않도록 발신 노드에서 유지보수 모드를 활성화합니다.

절차

  1. stackrc 파일을 소싱합니다.

    $ source ~/stackrc
  2. overcloud-controller-1 노드의 인덱스를 확인합니다.

    $ INSTANCE=$(openstack server list --name overcloud-controller-1 -f value -c ID)
  3. 인스턴스와 연결된 베어 메탈 노드를 확인합니다.

    $ NODE=$(openstack baremetal node list -f csv --quote minimal | grep $INSTANCE | cut -f1 -d,)
  4. 노드를 유지보수 모드로 설정합니다.

    $ openstack baremetal node maintenance set $NODE
  5. 컨트롤러 노드가 가상 노드인 경우 컨트롤러 호스트에서 다음 명령을 실행하여 백업에 있는 가상 디스크를 교체합니다.

    $ cp <VIRTUAL_DISK_BACKUP> /var/lib/libvirt/images/<VIRTUAL_DISK>

    <VIRTUAL_DISK_BACKUP>을 오류가 발생한 가상 디스크의 백업 경로로 교체하고, <VIRTUAL_DISK>를 교체할 가상 디스크 이름으로 교체합니다.

    발신 노드 백업이 없는 경우 가상화된 노드를 사용해야 합니다.

    컨트롤러 노드가 베어 메탈 노드인 경우 다음 단계를 완료하여 디스크를 새 베어 메탈 디스크로 교체합니다.

    1. 물리 하드 드라이브 또는 솔리드 스테이트 드라이브를 교체합니다.
    2. 오류가 발생한 노드와 동일한 구성으로 노드를 준비합니다.
  6. 연결되지 않은 노드를 나열하고 새 노드의 ID를 확인합니다.

    $ openstack baremetal node list --unassociated
  7. 새 노드를 control 프로필로 태그합니다.

    (undercloud) $ openstack baremetal node set --property capabilities='profile:control,boot_option:local' 75b25e9a-948d-424a-9b3b-f0ef70a6eacf