18.2. 컨트롤러 노드 업그레이드
모든 컨트롤러 노드를 RHOSP(Red Hat OpenStack Platform) 16.2로 업그레이드하려면 부트스트랩 컨트롤러 노드부터 각 컨트롤러 노드를 업그레이드해야 합니다.
배포에서 director를 사용하여 배포된 Red Hat Ceph Storage 클러스터를 사용하는 경우 director가 배포한 Ceph Storage를 사용하여 컨트롤러 노드 업그레이드 절차를 따르십시오.
부트스트랩 컨트롤러 노드 업그레이드 프로세스 중에 새 Pacemaker 클러스터가 생성되고 새 RHOSP 16.2 컨테이너가 노드에서 시작되고 나머지 컨트롤러 노드는 RHOSP 13에서 계속 실행됩니다.
부트스트랩 노드를 업그레이드한 후 Pacemaker 서비스를 사용하여 각 추가 노드를 업그레이드하고 각 노드가 부트스트랩 노드와 함께 시작된 새 Pacemaker 클러스터에 참여하도록 해야 합니다. 자세한 내용은 Overcloud 노드 업그레이드 워크플로를 참조하십시오.
절차
stackrc파일을 소싱합니다.$ source ~/stackrc언더클라우드 노드에서 부트스트랩 컨트롤러 노드를 확인합니다.
$ tripleo-ansible-inventory --list [--stack <stack_name>] |jq .overcloud_Controller.hosts[0]-
&
lt;stack_name>을 스택 이름으로 바꿉니다.
-
&
부트스트랩 컨트롤러 노드를 업그레이드합니다.
부트스트랩 컨트롤러 노드에서 운영 체제의 Leapp 업그레이드를 수행합니다.
$ openstack overcloud upgrade run [--stack <stack>] --tags system_upgrade --limit <bootstrap_controller_node>-
&
lt;bootstrap_controller_node>를 환경에 있는 부트스트랩 컨트롤러 노드의 호스트 이름으로 바꿉니다(예:overcloud-controller-0). 기본 오버클라우드 스택 이름인
overcloud를 사용하지 않는 경우--stack선택적 인수를 포함하고 <stack>을 오버클라우드 스택의 이름으로 바꿉니다.부트스트랩 컨트롤러 노드는 Leapp 업그레이드의 일부로 재부팅됩니다.
-
&
기존 노드에서 부트스트랩 노드로 최신 버전의 데이터베이스를 복사합니다.
$ openstack overcloud external-upgrade run [--stack <stack>] --tags system_upgrade_transfer_data중요이 명령을 실행하면 컨트롤 플레인에서 중단됩니다. RHOSP 업그레이드가 완료되고 컨트롤 플레인이 다시 활성화될 때까지 오버클라우드에서 표준 작업을 수행할 수 없습니다.
컴퓨팅 노드에서 임시 16.2 컨테이너를 시작하여 이후 단계에서 컴퓨팅 노드를 업그레이드할 때 워크로드 마이그레이션을 용이하게 합니다.
$ openstack overcloud upgrade run --stack <stack> --playbook upgrade_steps_playbook.yaml --tags nova_hybrid_state --limit all태그가 없는 오버클라우드를 업그레이드합니다.
$ openstack overcloud upgrade run --stack <stack> --limit <bootstrap_controller_node>업그레이드 후 새 Pacemaker 클러스터가 시작되고
galera,rabbit,haproxy,redis와 같은 컨트롤 플레인 서비스가 실행 중인지 확인합니다.$ sudo pcs status
다음 컨트롤러 노드를 업그레이드합니다.
이전 클러스터가 더 이상 실행되지 않는지 확인합니다.
$ sudo pcs status클러스터가 실행되지 않으면 다음과 유사한 오류가 표시됩니다.
Error: cluster is not currently running on this node컨트롤러 노드에서 운영 체제의 Leapp 업그레이드를 수행합니다.
$ openstack overcloud upgrade run --stack <stack> --tags system_upgrade --limit <controller_node>&
lt;controller_node>를 업그레이드할 컨트롤러 노드의 호스트 이름으로 바꿉니다(예:overcloud-controller-1).컨트롤러 노드는 Leapp 업그레이드의 일부로 재부팅됩니다.
새 Pacemaker 클러스터에서 이전에 업그레이드한 노드에 추가하여 컨트롤러 노드를 업그레이드합니다.
$ openstack overcloud upgrade run --stack <stack> --limit <bootstrap_controller_node,controller_node_1,controller_node_n>-
<
bootstrap_controller_node,controller_node_1,controller_node_n>을 지금까지 업그레이드한 컨트롤러 노드의 쉼표로 구분된 목록과 Pacemaker 클러스터에 추가할 추가 컨트롤러 노드(예:overcloud-controller-0,overcloud-controller-1, overcloud-controller-2)로 바꿉니다.
-
<