6.6.3. 새로운 제어 평면 노드 생성
BareMetalHost 개체와 노드를 만들어 새로운 제어 평면 노드를 만듭니다.
프로세스
이전에 저장한
bmh_affected.yaml파일을 편집합니다.파일에서 다음 메타데이터 항목을 제거합니다.
-
creationTimestamp -
세대 -
resourceVersion -
uid
-
-
파일의
상태섹션을 제거합니다.
결과 파일은 다음 예와 유사해야 합니다.
bmh_affected.yaml파일 예시apiVersion: metal3.io/v1alpha1 kind: BareMetalHost metadata: labels: installer.openshift.io/role: control-plane name: openshift-control-plane-2 namespace: openshift-machine-api spec: automatedCleaningMode: disabled bmc: address: credentialsName: disableCertificateVerification: true bootMACAddress: ab:cd:ef:ab:cd:ef bootMode: UEFI externallyProvisioned: true online: true rootDeviceHints: deviceName: /dev/disk/by-path/pci-0000:04:00.0-nvme-1 userData: name: master-user-data-managed namespace: openshift-machine-api다음 명령을 실행하여
bmh_affected.yaml파일을 사용하여BareMetalHost객체를 만듭니다.$ oc create -f bmh_affected.yamlBareMetalHost객체를 생성할 때 다음 경고가 예상됩니다.Warning: metadata.finalizers: "baremetalhost.metal3.io": prefer a domain-qualified finalizer name to avoid accidental conflicts with other finalizer writers다음 명령을 실행하여 제어 평면 점화 비밀을 추출합니다.
$ oc extract secret/master-user-data-managed \ -n openshift-machine-api \ --keys=userData \ --to=- \ | sed '/^userData/d' > new_controlplane.ign이 명령은 또한 점화 비밀의 시작
userData줄을 제거합니다.다음 예를 참조하여 새 노드의 네트워크 구성을 위한
new_controlplane_nmstate.yaml이라는 이름의 Nmstate YAML 파일을 만듭니다.Nmstate YAML 파일 예시
interfaces: - name: eno1 type: ethernet state: up mac-address: "ab:cd:ef:01:02:03" ipv4: enabled: true address: - ip: 192.168.20.11 prefix-length: 24 dhcp: false ipv6: enabled: false dns-resolver: config: search: - iso.sterling.home server: - 192.168.20.8 routes: config: - destination: 0.0.0.0/0 metric: 100 next-hop-address: 192.168.20.1 next-hop-interface: eno1 table-id: 254참고에이전트 기반 설치 프로그램을 사용하여 클러스터를 설치한 경우 원래 클러스터 배포의
agent-config.yaml파일에 있는 실패한 노드의networkConfig섹션을 새 제어 평면 노드의 Nmstate 파일의 시작점으로 사용할 수 있습니다. 예를 들어, 다음 명령은 첫 번째 제어 평면 노드에 대한networkConfig섹션을 추출합니다.$ cat agent-config-iso.yaml | yq .hosts[0].networkConfig > new_controlplane_nmstate.yaml다음 명령을 실행하여 사용자 지정 Red Hat Enterprise Linux CoreOS(RHCOS) 라이브 ISO를 만듭니다.
$ coreos-installer iso customize rhcos-live.86_64.iso \ --dest-ignition new_controlplane.ign \ --network-nmstate new_controlplane_nmstate.yaml \ --dest-device /dev/disk/by-path/<device_path> \ -f<device_path>를ISO가 생성될 대상 장치의 경로로 바꾸세요.- 사용자 정의된 RHCOS 라이브 ISO로 새로운 제어 평면 노드를 부팅합니다.
- 클러스터에 새 노드를 가입시키기 위해 인증서 서명 요청(CSR)을 승인합니다.