7.3. OpenShift에서 Fuse
이 섹션에는 OpenShift에서 Fuse 애플리케이션 배포에 영향을 미치는 문제가 나열되어 있습니다. 특정 컨테이너에 영향을 미치는 문제에 대한 자세한 내용은 Spring Boot, Apache Karaf의 Fuse 및 JBoss EAP의 Fuse 섹션을 참조하십시오. OpenShift 배포판의 Fuse에는 다음과 같은 알려진 문제가 있습니다.
- ENT Cryostat-10817 Openshift 4.1 + FMP: Unexpected 응답 (403 Forbidden)을 권한 부여 요청에 적용합니다. 헤더가 없습니다.[Location]!
OpenShift Container Platform (OCP) 4.1에서
fabric8-maven-plugin
이 Fabric8의 Kubernetes 클라이언트 구현을 사용하여oc login
command Cryostat- Cryostat에서 생성한 기존 세션을 사용하는 경우 다음 오류가 발생합니다.[ERROR] Failed to execute goal org.jboss.redhat-fuse:fabric8-maven-plugin:7.4.0.fuse-740024:build (default) on project fabric8-maven-sample-zero-config: Failed to execute the build: Unable to build the image using the OpenShift build service: Unexpected response (403 Forbidden), to the authorization request. Missing header:[Location]!
특히 도구 사용자 가이드 의 OpenShift 빠른 시작 예제에 Fuse 를 빌드하고 배포하는 절차는 OpenShift에 직접
fabric8-maven-plugin
인증을 사용합니다. 섹션의 지침에 따라 Fuse Integration 프로젝트를 OpenShift에 배포하여 OCP 4.1 클러스터에 프로젝트를 배포하려면 다음과 같이 단계 5를 수정합니다.- 애플리케이션을 배포하려는 OCP 4.1 클러스터에 대해 OpenShift 콘솔에 로그인합니다.
-
OpenShift 콘솔의 오른쪽 상단에 있는 사용자 이름을 클릭하고 메뉴 옵션인 Copy Login Command 를 선택합니다. 이렇게 하면
oc login https://192.168.42.218:8443 --token=xxxxxxxx
형식의 문자열이 클립보드에 복사됩니다. 여기서xxxxxxxx
는 세션 토큰을 나타내는 base-64 인코딩 문자열입니다. -
VM 인수 창에서
-Dkubernetes.auth.basic.password=admin
설정을 제거하고-Dkubernetes.auth.token=xxxxxxxx
설정으로 바꿉니다. 여기서xxxxxxxx
는 클립보드 문자열에서 추출된 세션 토큰입니다.
참고OpenShift 가이드의 Fuse 예제 및 튜토리얼은 일반적으로
oc login
명령으로 생성된 세션을 사용합니다. 따라서 이러한 예제 중 하나에 대한 단계를 따르는 경우 이 오류가 발생하지 않습니다.- ENT Cryostat-10694 OCP4.1 베타에서 Fuse Console 사용 문제
OpenShift 4에서는 Fuse Console을 사용하여 Fuse 서비스를 관리하려면 OperatorHub의 커뮤니티 Operator를 사용하여 커뮤니티 버전(Hawtio)을 설치해야 합니다. OpenShift 웹 콘솔의 기본 카탈로그에서 OperatorHub에 액세스합니다.
참고Kubernetes Operator는 OpenShift(또는 Kubernetes) 애플리케이션의 설치 및 관리를 간소화하는 스크립트입니다.
Fuse Console 프록시와 Jolokia 에이전트 간에 안전하게 연결을 유지하려면 Fuse Console의 커뮤니티 버전을 설치한 후 클라이언트 인증서를 생성, 서명 및 배포해야 합니다. OpenShift 4에서 Fuse Console을 보호하는 방법에 대한 자세한 내용은 README 파일을 참조하십시오.
- ENT Cryostat-10577 Apicurito는 YAML Open API 사양 파일을 지원하지 않습니다.
- OpenShift의 Fuse 7.4에서 Apicurito는 기본적으로 YAML 형식으로 OpenAPI 사양 파일을 생성하지만 생성된 YAML 파일을 다시 가져올 수 없습니다. 현재 JSON 형식만 Apicurito로 가져올 수 있습니다.