4.2. Identity Client(keystone) connections 문제 해결
ID 클라이언트(keystone)가 ID 서비스에 연결할 수 없는 경우 오류를 반환합니다.
Unable to communicate with identity service: [Errno 113] No route to host. (HTTP 400)
이러한 일반적인 원인에 대한 문제 검사를 디버깅하려면 다음을 수행합니다.
- ID 서비스가 다운됨
ID 서비스는 이제 httpd.service 내에서 실행됩니다. ID 서비스를 호스팅하는 시스템에서 서비스 상태를 확인합니다.
# systemctl status httpd.service서비스가 활성 상태가 아닌 경우 root 사용자로 로그인하여 시작합니다.
# systemctl start httpd.service- 방화벽이 올바르게 구성되지 않았습니다.
-
포트
5000및35357에서 TCP 트래픽을 허용하도록 방화벽을 구성하지 못할 수 있습니다. 이 경우 방화벽 설정 확인 및 사용자 지정 규칙 정의에 대한 지침은 Advanced Overcloud Customization 가이드의 Overcloud 방화벽 관리를 참조하십시오. - Service Endpoints가 올바르게 정의되지 않음
ID 서비스를 호스팅하는 시스템에서 엔드포인트가 올바르게 정의되었는지 확인합니다.
관리 토큰을 확보합니다.
# grep admin_token /etc/keystone/keystone.conf admin_token = 91f0866234a64fc299db8f26f8729488ID 서비스의 올바른 관리 끝점을 결정합니다.
http://IP:35357/VERSIONIP 를 ID 서비스를 호스팅하는 시스템의 IP 주소 또는 호스트 이름으로 바꿉니다. VERSION 을 사용 중인 API 버전(
v2.0또는v3)으로 바꿉니다.사전 정의된 ID 서비스 관련 환경 변수를 설정 해제합니다.
# unset OS_USERNAME OS_TENANT_NAME OS_PASSWORD OS_AUTH_URL관리 토큰 및 엔드포인트를 사용하여 ID 서비스로 인증합니다. ID 서비스 엔드포인트가 올바른지 확인합니다. 예를 들면 다음과 같습니다.
# openstack endpoint list --os-token=91f0556234a64fc299db8f26f8729488 --os-url=https://osp.lab.local:35357/v3/ --os-identity-api-version 3ID 서비스에 대해 나열된
publicurl,internalurl,adminurl이 올바른지 확인합니다. 특히 각 엔드포인트에 나열된 IP 주소 및 포트 번호가 올바른지 확인하고 네트워크를 통해 연결할 수 있는지 확인합니다.이러한 값이 올바르지 않으면
openstack명령의endpoint delete작업을 사용하여 올바른 끝점을 추가하고 잘못된 엔드포인트를 제거합니다. 예를 들면 다음과 같습니다.# openstack endpoint delete 2d32fa6feecc49aab5de538bdf7aa018 --os-token=91f0866234a64fc299db8f26f8729488 --os-url=https://osp.lab.local:35357/v3/ --os-identity-api-version 3TOKEN 및 ENDPOINT 를 이전에 확인한 값으로 교체합니다.
endpoint-list작업에서 나열된 대로 제거할 끝점의 ID 로 ID를 교체합니다.