7.7. 노드 설정 파일
설치 중에 OpenShift Container Platform은 각 노드 그룹에 대해 openshift-node 프로젝트에 configmap을 생성합니다.
- node-config-master
- node-config-infra
- node-config-compute
- node-config-all-in-one
- node-config-master-infra
기존 노드를 구성하려면 적절한 구성 맵을 편집합니다. 각 노드의 동기화 Pod 는 구성 맵의 변경 사항을 감시합니다. 설치하는 동안 동기화 Pod는 동기화 Daemonsets 를 사용하고 노드 구성 매개 변수가 있는 /etc/origin/node/node-config.yaml 파일이 각 노드에 추가됩니다. 동기화 Pod에서 구성 맵 변경 사항을 탐지하면 해당 노드 그룹의 모든 노드에서 node-config.yaml 을 업데이트하고 적절한 노드에서 atomic-openshift-node.service 를 다시 시작합니다.
$ oc get cm -n openshift-node
출력 예
NAME DATA AGE node-config-all-in-one 1 1d node-config-compute 1 1d node-config-infra 1 1d node-config-master 1 1d node-config-master-infra 1 1d
node-config-compute 그룹의 구성 맵 샘플
apiVersion: v1 authConfig: 1 authenticationCacheSize: 1000 authenticationCacheTTL: 5m authorizationCacheSize: 1000 authorizationCacheTTL: 5m dnsBindAddress: 127.0.0.1:53 dnsDomain: cluster.local dnsIP: 0.0.0.0 2 dnsNameservers: null dnsRecursiveResolvConf: /etc/origin/node/resolv.conf dockerConfig: dockerShimRootDirectory: /var/lib/dockershim dockerShimSocket: /var/run/dockershim.sock execHandlerName: native enableUnidling: true imageConfig: format: registry.reg-aws.openshift.com/openshift3/ose-${component}:${version} latest: false iptablesSyncPeriod: 30s kind: NodeConfig kubeletArguments: 3 bootstrap-kubeconfig: - /etc/origin/node/bootstrap.kubeconfig cert-dir: - /etc/origin/node/certificates cloud-config: - /etc/origin/cloudprovider/aws.conf cloud-provider: - aws enable-controller-attach-detach: - 'true' feature-gates: - RotateKubeletClientCertificate=true,RotateKubeletServerCertificate=true node-labels: - node-role.kubernetes.io/compute=true pod-manifest-path: - /etc/origin/node/pods 4 rotate-certificates: - 'true' masterClientConnectionOverrides: acceptContentTypes: application/vnd.kubernetes.protobuf,application/json burst: 40 contentType: application/vnd.kubernetes.protobuf qps: 20 masterKubeConfig: node.kubeconfig networkConfig: 5 mtu: 8951 networkPluginName: redhat/openshift-ovs-subnet 6 servingInfo: 7 bindAddress: 0.0.0.0:10250 bindNetwork: tcp4 clientCA: client-ca.crt 8 volumeConfig: localQuota: perFSGroup: null volumeDirectory: /var/lib/origin/openshift.local.volumes
- 1
- 인증 및 권한 부여 구성 옵션.
- 2
- 포드의 /etc/resolv.conf 앞에 추가되는 IP 주소.
- 3
- Kubelet의 명령줄 인수 와 일치하는 Kubelet에 직접 전달되는 키 값 쌍입니다.
- 4
- Pod 매니페스트 파일 또는 디렉터리의 경로입니다. 디렉터리에는 하나 이상의 매니페스트 파일이 포함되어야 합니다. OpenShift Container Platform은 매니페스트 파일을 사용하여 노드에 Pod를 생성합니다.
- 5
- 노드의 Pod 네트워크 설정입니다.
- 6
- 소프트웨어 정의 네트워크(SDN) 플러그인. ovs
-subnet 플러그인의 경우 redhat/openshift-ovs
-subnet, ovs -multitenant 플러그인의 경우 redhat/openshift-ovs
-multitenant 또는 ovs -networkpolicy 플러그인의 경우 redhat/openshift-ovs
-networkpolicy 로 설정합니다. - 7
- 노드의 인증서 정보입니다.
- 8
- 선택 사항: PEM 인코딩 인증서 번들. 설정한 경우 요청 헤더에서 사용자 이름을 확인하기 전에 지정된 파일의 인증 기관에 대해 유효한 클라이언트 인증서를 제공하고 검증해야 합니다.
/etc/origin/node/node-config.yaml 파일을 수동으로 수정하지 마십시오.
노드 구성 파일에는 노드 리소스가 결정됩니다. 자세한 내용은 클러스터 관리자 안내서의 노드 리소스 할당 섹션을 참조하십시오.
7.7.1. Pod 및 노드 구성
매개변수 이름 | 설명 |
---|---|
| OpenShift Container Platform 노드를 시작하는 완전히 지정된 구성입니다. |
| 클러스터에서 이 특정 노드를 식별하는 데 사용되는 값입니다. 가능한 경우 이는 정규화된 호스트 이름이어야 합니다. 정적 노드 집합을 마스터에 설명하는 경우 이 값은 목록의 값 중 하나와 일치해야 합니다. |