사용자 지정 게이트웨이 Istio 운영자에게 조정 루프 오류가 발생하는 이유는 무엇인가요?

가상 프라이빗 클라우드 클래식 인프라

IstioOperator (IOP) 로그를 확인하면 다음 줄이 반복되는 조정 루프가 로그에 표시되어 있는 것을 확인할 수 있습니다.

2022-09-29T12:57:48.412711Z info installer Reconciling IstioOperator

일반적으로 조정은 info installer Reconciling IstioOperator 메시지로 시작하고 구성이 유효성 검증되고 배치가 업데이트될 때 종료됩니다. 조정이 다시 시작되면 사용자 지정 게이트웨이 IstioOperator(IOP)리소스 구성에 문제가 있어 운영자가 다시 시작하게 됩니다.

테스트 클러스터에서 IOP 자원 구성을 구문 분석하여 오류가 포함된 행을 찾으십시오.

  1. IOP 자원 구성을 복사 하여 안전한 위치에 저장하십시오.

  2. 새 YAML 파일을 작성하여 IOP 자원의 각 섹션을 테스트하십시오. iop-test.yaml 로 이름을 지정하십시오.

  3. IOP 자원 구성에서 테스트 파일로 섹션을 복사하여 붙여넣으십시오.

  4. 테스트 클러스터에서 테스트 파일을 적용하십시오.

    워크로드가 중단되지 않도록 하려면 테스트 클러스터에서 다음 단계를 수행하는 것이 좋습니다.

    kubectl apply -f iop-test.yaml
    
  5. 몇 분 기다렸다가 Istio 운영자 포드 로그에서 조정 루프 오류가 있는지 확인하세요. 조정 루프 오류가 없는 경우 IOP 자원 구성의 다음 섹션을 테스트 파일에 추가하고 파일을 다시 적용한 후 로그를 다시 확인하십시오. 로그에 조정 루프 오류가 표시될 때까지 IOP 자원 구성의 각 섹션을 계속 확인하십시오.

    Istio 운영자 포드 로그를 확인하려면 다음 명령을 실행합니다.

    kubectl logs -n ibm-operators -l name=addon-istio-operator
    
  6. IOP 자원 구성에서 조정 루프 오류의 원인이 되는 섹션을 판별한 후에는 오류의 원인이 되는 행을 판별할 때까지 섹션의 각 개별 행을 사용하여 단계를 반복하십시오.

  7. 행을 디버그하여 오류를 해결하십시오.

  8. 모든 원래 IOP 구성을 테스트 파일에 복사하고 오류가 남아 있지 않음을 판별할 때까지 나머지 섹션에서 프로세스를 반복하십시오.

  9. 테스트 파일을 제거하십시오.

    kubectl remove <test_iop_name>
    
  10. 원래 IOP 자원 구성을 갱신하여 오류의 원인이 되는 회선을 대체하십시오. 그런 다음 원래 IOP 자원을 프로덕션 클러스터에 다시 적용하십시오.

    kubectl apply -f iop.yaml