2.2. OpenShift 4.x 서버에 Fuse 이미지 스트림 및 템플릿 설치
Fuse 7.110에서는 IBM Power Systems, IBM Z 및 LinuxONE에 Fuse를 OpenShift 이미지 스트림 및 템플릿에 설치하는 것은 지원되지 않습니다. OpenShift Operator에서 Fuse를 사용하여 설치할 수 있는 구성 요소만 IBM Power Systems, IBM Z 및 LinuxONE에서 지원됩니다.
OpenShift Container Platform 4.x는 OpenShift 네임스페이스에서 작동하는 Samples Operator를 사용하여 RHEL(Red Hat Enterprise Linux) 기반 OpenShift Container Platform 이미지 스트림 및 템플릿을 설치하고 업데이트합니다. OpenShift 이미지 스트림 및 템플릿에 Fuse를 설치하려면 다음을 수행합니다.
- Samples Operator 재구성
Fuse 이미지 스트림과 템플릿을
Skipped Imagestreams 및 Skipped Templates
필드에 추가합니다.- 건너뛴 이미지 스트림: Samples Operator 인벤토리에 있지만 클러스터 관리자가 Operator에서 무시하거나 관리하지 않도록 하려는 이미지 스트림입니다.
- 건너뛰기된 템플릿: Samples Operator 인벤토리에 있지만 클러스터 관리자가 Operator에서 무시하거나 관리하지 않도록 하려는 템플릿입니다.
사전 요구 사항
- OpenShift Server에 액세스할 수 있습니다.
-
registry.redhat.io
에 대한 인증을 구성했습니다. - 선택적으로 설치한 후 OpenShift 대시보드에 Fuse 템플릿을 표시하려면 먼저 OpenShift 문서( https://docs.openshift.com/container-platform/4.1/applications/service_brokers/installing-service-catalog.html)에 설명된 대로 서비스 카탈로그 및 템플릿 서비스 브로커를 설치해야 합니다.https://docs.openshift.com/container-platform/4.1/applications/service_brokers/installing-service-catalog.html
절차
- OpenShift 4 Server를 시작합니다.
관리자로 OpenShift 서버에 로그인합니다.
oc login --user system:admin --token=my-token --server=https://my-cluster.example.com:6443
docker-registry 시크릿을 생성한 프로젝트를 사용하고 있는지 확인합니다.
oc project openshift
Samples Operator의 현재 구성을 확인합니다.
oc get configs.samples.operator.openshift.io -n openshift-cluster-samples-operator -o yaml
추가된 fuse 템플릿 및 이미지 스트림을 무시하도록 Samples Operator를 구성합니다.
oc edit configs.samples.operator.openshift.io -n openshift-cluster-samples-operator
Fuse 이미지 스트림 Skipped Imagestreams 섹션을 추가하고 Fuse 및 Spring Boot 2 템플릿을 Skipped Templates 섹션에 추가합니다.
[...] spec: architectures: - x86_64 managementState: Managed skippedImagestreams: - fuse-console-rhel8 - fuse-eap-openshift-jdk8-rhel7 - fuse-eap-openshift-jdk11-rhel8 - fuse-java-openshift-rhel8 - fuse-java-openshift-jdk11-rhel8 - fuse-karaf-openshift-rhel8 - fuse-karaf-openshift-jdk11-rhel8 - fuse-apicurito-generator-rhel8 - fuse-apicurito-rhel8 skippedTemplates: - s2i-fuse710-eap-camel-amq - s2i-fuse710-eap-camel-cdi - s2i-fuse710-eap-camel-cxf-jaxrs - s2i-fuse710-eap-camel-cxf-jaxws - s2i-fuse710-karaf-camel-amq - s2i-fuse710-karaf-camel-log - s2i-fuse710-karaf-camel-rest-sql - s2i-fuse710-karaf-cxf-rest - s2i-fuse710-spring-boot-2-camel-amq - s2i-fuse710-spring-boot-2-camel-config - s2i-fuse710-spring-boot-2-camel-drools - s2i-fuse710-spring-boot-2-camel-infinispan - s2i-fuse710-spring-boot-2-camel-rest-3scale - s2i-fuse710-spring-boot-2-camel-rest-sql - s2i-fuse710-spring-boot-2-camel - s2i-fuse710-spring-boot-2-camel-xa - s2i-fuse710-spring-boot-2-camel-xml - s2i-fuse710-spring-boot-2-cxf-jaxrs - s2i-fuse710-spring-boot-2-cxf-jaxws - s2i-fuse710-spring-boot-2-cxf-jaxrs-xml - s2i-fuse710-spring-boot-2-cxf-jaxws-xml
OpenShift 이미지 스트림에 Fuse를 설치합니다.
BASEURL 변수를 이미지 스트림 위치로 설정합니다.
Fuse 7.10.1
BASEURL=https://raw.githubusercontent.com/jboss-fuse/application-templates/application-templates-2.1.0.fuse-sb2-7_10_1-00010-redhat-00001
Fuse 7.10.0
BASEURL=https://raw.githubusercontent.com/jboss-fuse/application-templates/application-templates-2.1.0.fuse-sb2-7_10_0-00015-redhat-00001
이미지 스트림을 설치하는 명령을 실행합니다.
oc create -n openshift -f ${BASEURL}/fis-image-streams.json
참고"Error from server (AlreadyExists): imagestreams.image.openshift.io <imagestreamname>이 이미 존재하는 경우 다음 명령을 사용하여 기존 이미지 스트림을 최신 상태로 교체합니다.
oc replace --force -n openshift -f ${BASEURL}/fis-image-streams.json
OpenShift 빠른 시작 템플릿에 Fuse를 설치합니다.
for template in eap-camel-amq-template.json \ eap-camel-cdi-template.json \ eap-camel-cxf-jaxrs-template.json \ eap-camel-cxf-jaxws-template.json \ karaf-camel-amq-template.json \ karaf-camel-log-template.json \ karaf-camel-rest-sql-template.json \ karaf-cxf-rest-template.json ; do oc create -n openshift -f \ https://raw.githubusercontent.com/jboss-fuse/application-templates/application-templates-2.1.0.fuse-sb2-7_10_0-00015-redhat-00001/quickstarts/${template} done
Spring Boot 2 빠른 시작 템플릿을 설치합니다.
for template in spring-boot-2-camel-amq-template.json \ spring-boot-2-camel-config-template.json \ spring-boot-2-camel-drools-template.json \ spring-boot-2-camel-infinispan-template.json \ spring-boot-2-camel-rest-3scale-template.json \ spring-boot-2-camel-rest-sql-template.json \ spring-boot-2-camel-template.json \ spring-boot-2-camel-xa-template.json \ spring-boot-2-camel-xml-template.json \ spring-boot-2-cxf-jaxrs-template.json \ spring-boot-2-cxf-jaxws-template.json \ spring-boot-2-cxf-jaxrs-xml-template.json \ spring-boot-2-cxf-jaxws-xml-template.json ; do oc create -n openshift -f \ https://raw.githubusercontent.com/jboss-fuse/application-templates/application-templates-2.1.0.fuse-sb2-7_10_0-00015-redhat-00001/quickstarts/${template} done
(선택 사항) OpenShift 템플릿에 설치된 Fuse를 확인합니다.
oc get template -n openshift