4.22. 컨트롤 플레인에서 실행되도록 네트워크 구성 요소 구성
컨트롤 플레인 노드에서 독점적으로 실행되도록 네트워킹 구성 요소를 구성할 수 있습니다. 기본적으로 OpenShift Container Platform에서는 머신 구성 풀의 모든 노드가 ingressVIP 가상 IP 주소를 호스팅할 수 있습니다. 그러나 일부 환경에서는 컨트롤 플레인 노드에서 실행되도록 ingressVIP 가상 IP 주소를 구성해야 하는 컨트롤 플레인 노드의 별도의 서브넷에 작업자 노드를 배포합니다.
별도의 서브넷에 작업자 머신 세트를 생성하여 원격 작업자를 확장할 수 있습니다.
별도의 서브넷에 원격 작업자를 배포할 때 컨트롤 플레인 노드에 독점적으로 ingressVIP 가상 IP 주소를 배치해야 합니다.
프로세스
install-config.yaml파일을 저장하는 디렉터리로 변경합니다.$ cd ~/clusterconfigsmanifests하위 디렉터리로 전환합니다.$ cd manifestscluster-network-avoid-workers-99-config.yaml이라는 파일을 생성합니다.$ touch cluster-network-avoid-workers-99-config.yaml편집기에서
cluster-network-avoid-workers-99-config.yaml파일을 열고 Operator 구성을 설명하는 CR(사용자 정의 리소스)을 입력합니다.apiVersion: machineconfiguration.openshift.io/v1 kind: MachineConfig metadata: name: 50-worker-fix-ipi-rwn labels: machineconfiguration.openshift.io/role: worker spec: config: ignition: version: 3.2.0 storage: files: - path: /etc/kubernetes/manifests/keepalived.yaml mode: 0644 contents: source: data:,이 매니페스트는 컨트롤 플레인 노드에
ingressVIP가상 IP 주소를 배치합니다. 또한 이 매니페스트는 컨트롤 플레인 노드에 다음 프로세스를 배포합니다.-
openshift-ingress-operator -
keepalived
-
-
cluster-network-avoid-workers-99-config.yaml파일을 저장합니다. manifests/cluster-ingress-default-ingresscontroller.yaml파일을 생성합니다.apiVersion: operator.openshift.io/v1 kind: IngressController metadata: name: default namespace: openshift-ingress-operator spec: nodePlacement: nodeSelector: matchLabels: node-role.kubernetes.io/master: ""-
manifests디렉터리를 백업하는 것이 좋습니다. 설치 프로그램은 클러스터를 생성할 때manifests/디렉터리를 삭제합니다. mastersSchedulable필드를true로 설정하여 컨트롤 플레인 노드를 예약할 수 있도록cluster-scheduler-02-config.yml매니페스트를 수정합니다. 기본적으로 컨트롤 플레인 노드는 예약할 수 없습니다. 예를 들면 다음과 같습니다.$ sed -i "s;mastersSchedulable: false;mastersSchedulable: true;g" clusterconfigs/manifests/cluster-scheduler-02-config.yml참고이 절차를 완료한 후 컨트롤 플레인 노드를 예약할 수 없는 경우 클러스터 배포가 실패합니다.