문제 해결 Red Hat OpenShift 문제 해결
Red Hat® OpenShift® 의 문제 진단 및 해결을 위해 문제 해결 정보를 활용하십시오.
RHEL 구독
구독에 문제점이 발생하면 다음 명령을 사용하여 조회를 실행하십시오.
subscription-manager list --available --all
로드 밸런서
로드 밸런싱이 작동 중인지 확인하려면 bastion 노드에서 다음 명령을 사용하십시오. 결과에 전체 헤더 세트가 있는 경우 로드 밸런싱이 성공한 것입니다.
wget --no-check-certificate https://api.ocp.dallas.ibm.local:6443
Red Hat CoreOS
SSH를 사용하여 노드에 연결할 필요는 없지만, 필요하다면 요새 노드를 통해 연결할 수 있습니다. 다음 예에서는 다음에 표시된 명령을 사용하여 부트스트랩 서버에 연결합니다.
ssh core@192.168.133.9
오류가 발생하면 지문 검사를 사용 안함으로 설정하는 다음 명령을 시도해보십시오.
ssh -o StrictHostKeyChecking=no core@192.168.133.9
이 예는 로그를 보고 읽기 권한을 변경하기 위해 요새 노드에서 제어 평면 노드에 연결하는 방법을 보여줍니다. 디렉토리 이름은 다를 수 있습니다.
ssh -i /root/.ssh/id_rsa core@192.168.133.12
sudo su
chmod 777 /var/log/pods/b2810e842791d83d48a4684295b7cd01/etcd-member/0.log
이 예에서는 가독성 및 로그 구문 분석 기능을 위해 로그를 bastion 노드에 다운로드한 다음 점프 서버 또는 원격 디바이스에 다운로드하는 방법을 보여줍니다. 디렉토리 이름은 다를 수 있습니다.
scp -i /root/.ssh/id_rsa core@192.168.133.10:/var/log/pods/b2810e842791d83d48a4684295b7cd01/etcd-member/0.log 0.log
Red Hat OpenShift
다음과 같이 노드의 목록 및 해당 상태를 가져옵니다.
oc get nodes
kubectl을 사용하는 경우 사용되는 kubeconfig 파일을 판별하는 중에 우선순위가 적용됩니다.
- 지정된 경우
--kubeconfig
플래그를 사용하십시오. - 지정된 경우 KUBECONFIG 환경 변수를 사용하십시오.
$HOME/.kube/config
파일을 사용하십시오.
Red Hat OpenShift 설치 프로그램에 의해 생성된 kubeconfig를 환경 변수로 내보내려면 다음 명령을 사용하십시오
export KUBECONFIG=/opt/ocpinstall/auth/kubeconfig
배치 삭제
Terraform 배치에 문제점이 발생하면 다음 명령을 사용하여 배치를 삭제할 수 있습니다.
terraform destroy
자동화를 완료하는 데 있어서 Terraform에 문제가 있는 경우가 있습니다. 이러한 경우에는 vCenter를 사용해 Terraform 상태 파일을 삭제하여 수동으로 배치를 삭제해야 할 수 있습니다.
- vCenter에서
ocp
폴더 및 해당 컨텐츠를 제거하십시오. ocp
리소스 그룹을 제거하십시오.rm /opt/ocpinstall/installer/upi/vsphere/terraform.tfstate
Terraform 상태 파일을 제거하십시오.
이 단계를 마치면 배포 문제를 해결하고 Red Hat OpenShift 플랫폼을 다시 배포할 수 있습니다.
새 Ignition 파일 생성
Ignition 파일은 24시간 동안 유효합니다. 다음 단계를 완료하여 .ign
파일을 생성할 수 있습니다.
-
이전 상태, 구성 및
ign
파일을 제거하십시오.cd /opt/ocpinstall rm -R .openshift_install.log .openshift_install_state.json auth *.ign metadata.json
-
Red Hat OpenShift 복사 yaml에
install-config
백업:cp install-config.bak install-config.yaml openshift-install create ignition-configs --dir=/opt/ocpinstall/
-
bootstrap.ign을 nginx 홈 폴더에 복사하십시오.
cp bootstrap.ign /usr/share/nginx/html
-
terraform.tfvars
의 기본 섹션cat master.ign
과 작업자 섹션cat worker.ign
을 대체합니다.nano /opt/ocpinstall/installer/upi/vsphere/terraform.tfvars
:// Ignition config for the control plane machines. You should copy the contents of the master.ign generated by$ control_plane_ignition = <<END_OF_MASTER_IGNITION <replace with new master.ign> END_OF_MASTER_IGNITION // Ignition config for the compute machines. You should copy the contents of the worker.ign generated by the i$ compute_ignition = <<END_OF_WORKER_IGNITION <replace with new worker.ign> END_OF_WORKER_IGNITION
Red Hat OpenShift 의 스냅샷 찍기
개발 또는 테스트 중에 Red Hat OpenShift 클러스터 VM을 중지했다가 다시 시작할 수 있습니다. 스냅샷을 작성하기 전에 다음을 고려해야 합니다.
Red Hat OpenShift 4.x 클러스터 설치 과정에서, 컨트롤 플레인 노드에서 kubelet 클라이언트 인증서(각 노드 또는 kubelet마다 하나씩)에 대한 인증서 서명 요청(CSR)을 생성하는 데 사용되는 부트스트랩 인증서가 생성됩니다. 이 인증서는 노드에서 각 kubelet을 식별하는 데 사용됩니다. 이 인증서를 취소할 수 없으므로 인증서는 클러스터 설치 후에 24시간의 짧은 만기 시간 동안 작성됩니다. 제어 플레인 노드 이외의 모든 노드에는 취소할 수 없는 서비스 계정 토큰이 있습니다. 부트스트랩 인증서는 클러스터 설치 후 24시간 동안만 유효합니다. 처음 24시간이 지나면 인증서가 30일마다 만료됩니다.
첫 번째 제어 플레인 kubelet는 재작성되기 전에 24시간 동안 지속됩니다. 배치 직후 스냅샷을 작성하는 경우 제어 플레인 kubelet에는 아직 30일 클라이언트 인증서가 없습니다. 그러면 누락된 kubelet 클라이언트 인증서 갱신 창이 나타나고, 클러스터가 백업될 때 부트스트랩 자격 증명을 사용할 수 없기 때문에 클러스터를 사용할 수 없게 됩니다. Red Hat OpenShift 실제로 이 과정을 실행하려면 설치 후 최소 25시간 동안 실행해야 합니다.
배치 후에 배스천 호스트(bastion host)에서 다음 명령을 실행하여 인증서의 유효성을 확인할 수 있습니다.
ssh -i ~/.ssh/id_rsa -o StrictHostKeyChecking=no core@192.168.133.10 -- sudo openssl x509 -text -noout -in /var/lib/kubelet/pki/kubelet-client-current.pem
출력의 인증서 수명을 확인하려면 다음 명령을 실행하십시오.
Warning: Identity file id_rsa_crc not accessible: No such file or directory.
Certificate:
Data:
Version: 3 (0x2)
Serial Number:
6a:73:78:19:f3:1e:8f:0c:a9:51:b8:53:f4:eb:29:8d:49:fa:7e:fd
Signature Algorithm: sha256WithRSAEncryption
Issuer: CN = kube-csr-signer_@1573016574
Validity
Not Before: Nov 6 08:22:00 2019 GMT
Not After : Dec 6 04:57:43 2019 GMT
설치 후 클러스터 종료에 대한 자세한 내용은 Red Hat OpenShift 4 클러스터에서 클러스터 VM을 중지하고 다시 시작하도록 설정하기를 참조하십시오.
초기 24시간 인증서 갱신 후, 클러스터 스냅샷은 다음 30일 동안 언제든지 재개할 수 있습니다. 30일 후에는 인증서 유효성으로 인해 클러스터 스냅샷을 사용할 수 없게 됩니다.