4.5. 호스팅된 클러스터의 NTP 서버 구성
Butane을 사용하여 호스팅된 클러스터에 대한 NTP(Network Time Protocol) 서버를 구성할 수 있습니다.
프로세스
chrony.conf파일의 내용을 포함하는 Butane 구성 파일99-worker-chrony.bu를 만듭니다. Butane에 대한 자세한 내용은 " Butane을 사용하여 머신 구성 생성"을 참조하십시오.99-worker-chrony.bu구성 예# ... variant: openshift version: 4.15.0 metadata: name: 99-worker-chrony labels: machineconfiguration.openshift.io/role: worker storage: files: - path: /etc/chrony.conf mode: 06441 overwrite: true contents: inline: | pool 0.rhel.pool.ntp.org iburst2 driftfile /var/lib/chrony/drift makestep 1.0 3 rtcsync logdir /var/log/chrony # ...참고머신 간 통신의 경우 UDP(User Datagram Protocol) 포트의 NTP는
123입니다. 외부 NTP 시간 서버를 구성한 경우 UDP 포트123을 열어야 합니다.Butane을 사용하여 Butane이 노드에 전송하는 구성이 포함된
MachineConfig파일99-worker-chrony.yaml을 생성합니다. 다음 명령을 실행합니다.$ butane 99-worker-chrony.bu -o 99-worker-chrony.yaml예:
99-worker-chrony.yaml구성# Generated by Butane; do not edit apiVersion: machineconfiguration.openshift.io/v1 kind: MachineConfig metadata: labels: machineconfiguration.openshift.io/role: worker name: <machineconfig_name> spec: config: ignition: version: 3.2.0 storage: files: - contents: source: data:... mode: 420 overwrite: true path: /example/path관리 클러스터의 구성 맵 내에
99-worker-chrony.yaml파일의 내용을 추가합니다.구성 맵 예
apiVersion: v1 kind: ConfigMap metadata: name: <configmap_name> namespace: <namespace>1 data: config: | apiVersion: machineconfiguration.openshift.io/v1 kind: MachineConfig metadata: labels: machineconfiguration.openshift.io/role: worker name: <machineconfig_name> spec: config: ignition: version: 3.2.0 storage: files: - contents: source: data:... mode: 420 overwrite: true path: /example/path # ...- 1
- &
lt;namespace>를클러스터와같이 노드 풀을 생성한 네임스페이스 이름으로 바꿉니다.
다음 명령을 실행하여 노드 풀에 구성 맵을 적용합니다.
$ oc edit nodepool <nodepool_name> --namespace <hosted_cluster_namespace>NodePool구성의 예apiVersion: hypershift.openshift.io/v1alpha1 kind: NodePool metadata: # ... name: nodepool-1 namespace: clusters # ... spec: config: - name: <configmap_name>1 # ...- 1
- &
lt;configmap_name>을 구성 맵 이름으로 바꿉니다.
InfraEnvCR(사용자 정의 리소스)을 정의하는infra-env.yaml파일에 NTP 서버 목록을 추가합니다.infra-env.yaml파일 예apiVersion: agent-install.openshift.io/v1beta1 kind: InfraEnv # ... spec: additionalNTPSources: - <ntp_server>1 - <ntp_server1> - <ntp_server2> # ...- 1
- &
lt;ntp_server>를 NTP 서버의 이름으로 바꿉니다. 호스트 인벤토리 및InfraEnvCR 생성에 대한 자세한 내용은 "호스트 인벤토리 생성"을 참조하십시오.
다음 명령을 실행하여
InfraEnvCR을 적용합니다.$ oc apply -f infra-env.yaml
검증
다음 필드를 확인하여 호스트 인벤토리의 상태를 확인합니다.
-
conditions: 이미지가 성공적으로 생성되었는지를 나타내는 표준 Kubernetes 상태입니다. -
isoDownloadURL: Discovery Image를 다운로드할 URL입니다. createdTime: 이미지가 마지막으로 생성된 시간입니다.InfraEnvCR을 수정하는 경우 새 이미지를 다운로드하기 전에 타임스탬프를 업데이트했는지 확인합니다.다음 명령을 실행하여 호스트 인벤토리가 생성되었는지 확인합니다.
$ oc describe infraenv <infraenv_resource_name> -n <infraenv_namespace>참고InfraEnvCR을 수정하는 경우InfraEnvCR이createdTime필드를 확인하여 새 검색 이미지를 생성했는지 확인합니다. 이미 호스트를 부팅한 경우 최신 Discovery Image를 사용하여 다시 부팅합니다.
-