워커 노드 교체 시 추가 단계

피어/주문자가 실행 중인 기존 워커 노드를 새 워커 노드로 바꾸는 경우 다음 추가 단계도 완료해야 합니다.

  1. 기존 노드에 마운트된 영구 볼륨을 새 노드로 마이그레이션하고 새 노드에서 액세스할 수 있는지 확인합니다. Oracle Kubernetes Engine에서 이 작업을 수행하려면 기존 노드와 동일한 가용성 도메인에 노드를 생성합니다.
  2. 이전 노드를 사용하는 모든 Instance를 정지합니다.
  3. 이전 노드를 코딩하고 드레인합니다. 이는 이전 노드에서 해당 서비스가 실행 중인 경우 Blockchain Platform Manager 서비스에 영향을 줄 수 있습니다. 실행 중인 POD가 새 노드로 이동될 때까지 기다립니다.
  4. 다음 명령을 실행하여 코딩된 노드에서 실행 중인 모든 피어 및 주문자 목록을 가져옵니다.
    kubectl get peer -A -o=custom-columns='NAMESPACE:.metadata.namespace,NAME:.metadata.name,NODESELECTOR:.spec.nodeSelector'
    kubectl get orderernode -A -o=custom-columns='NAMESPACE:.metadata.namespace,NAME:.metadata.name,NODESELECTOR:.spec.nodeSelector'
  5. 이전 노드에 대해 nodeSelector로 구성된 피어 및 주문자의 경우 다음 명령을 실행하여 사용자 정의 리소스 .spec.nodeSelector를 업데이트하고 새 노드를 선택합니다.
    kubectl patch peer <PEER> -n <NAMESPACE> -p '{"spec":{"nodeSelector":{"kubernetes.io/hostname":"<NEW_NODE_HOSTNAME>"}}}' --type='merge'
    kubectl patch orderernode <ORDERER> -n <NAMESPACE> -p '{"spec":{"nodeSelector":{"kubernetes.io/hostname":"<NEW_NODE_HOSTNAME>"}}}' --type='merge'
  6. Step 4에서 명령을 다시 실행하여 업데이트된 nodeSelector 값을 확인합니다.
  7. 이전에 정지된 모든 Instance를 시작합니다.