OpenShift Container Platform에 온라인 설치 및 운영 체제


Red Hat Fuse 7.6

Fuse Online 설치, 구성 및 업그레이드, CI/CD 파이프라인에 대한 통합 내보내기/가져오기

Red Hat Fuse Documentation Team

초록

고객 관리 환경, 클라우드 또는 하이브리드 클라우드에서 OpenShift Container Platform에 Fuse Online을 설치, 관리 및 운영하기 위한 정보와 지침입니다.

머리말

OCP(OpenShift Container Platform)에 Fuse Online 사이트를 설치하고 작동할 수 있습니다. Fuse Online이 현장에서 실행되는 경우 Red Hat에서 Fuse Online을 관리하고 OpenShift Online 또는 OpenShift Dedicated에서 실행 중인 기능 외에도 추가 기능을 사용할 수 있습니다.

현장 이라는 용어는 고객이 관리하는 환경을 의미합니다. Red Hat은 Fuse Online 환경을 관리하지 않습니다. 고객 관리 환경은 온프레미스, 클라우드 또는 하이브리드 클라우드에 있을 수 있습니다.

자세한 내용은 다음 항목을 참조하십시오.

1장. OCP에 Fuse Online 설치

Fuse Online을 설치하려면 클러스터 관리자가 Fuse Online 사용자 정의 리소스 정의를 등록하고 적절한 사용자에게 설치 권한을 부여해야 합니다. Fuse Online을 설치하는 사용자는 기본 Fuse Online 환경 또는 사용자 지정 Fuse Online 환경을 설치할지 여부를 결정해야 합니다. 사용자 지정 Fuse Online 환경의 경우 기본 사용자 지정 리소스 파일을 편집해야 합니다.

각 Fuse Online 설치를 Fuse Online 환경이라고 합니다. 지정된 OpenShift 프로젝트에는 정확히 하나의 Fuse Online 환경이 있을 수 있습니다. 각 Fuse Online 환경에는 고유한 URL이 있습니다. 단일 OpenShift 클러스터에는 여러 Fuse Online 환경이 있을 수 있습니다.

중요

Fuse Online 설치 프로세스에서는 컨테이너 이미지의 Red Hat 카탈로그인 registry.redhat.io 에 액세스해야 합니다. Fuse Online은 연결이 끊긴 환경에서 외부 컨테이너 레지스트리, 사용자 지정 레지스트리 또는 레지스트리 사용을 지원하거나 테스트하지 않습니다.

다음 주제에서는 Fuse Online 설치에 대한 세부 정보를 제공합니다.

1.1. OCP에 Fuse Online을 설치하는 데 필요한 단계 개요

OCP 온사이트에 Fuse Online을 설치하려면 클러스터 관리자가 일부 작업을 수행해야 하며 특정 OpenShift 프로젝트에 Fuse Online을 설치할 수 있는 권한이 있는 사용자는 일부 작업을 수행하고 설치 스크립트를 실행해야 합니다. 다음 다이어그램에서는 워크플로우를 보여줍니다.

OCP에 Fuse Online 설치를 위한 워크플로

Fuse Online을 설치해야 하는 OpenShift 프로젝트마다 클러스터 관리자가 해당 특정 프로젝트에 Fuse Online을 설치할 수 있는 권한을 부여해야 합니다.

기본 Fuse Online 환경을 설치하려면 Fuse Online을 설치할 수 있는 권한이 있는 사용자가 설치 스크립트를 다운로드하여 실행합니다. 다른 단계는 필요하지 않습니다.

1.2. Fuse Online 리소스 배포를 위한 사용자 정의 리소스 정의 등록

Fuse Online 설치를 활성화하려면 클러스터 관리자가 사용자 정의 리소스 정의를 등록합니다. 관리자는 OpenShift 클러스터에 대해 이 작업을 한 번만 수행해야 합니다. 그런 다음 관리자가 Fuse Online을 설치하려는 각 프로젝트에 대해 관리자는 해당 프로젝트에 Fuse Online을 설치할 수 있는 적절한 권한을 부여합니다.

사전 요구 사항

  • 클러스터 관리 권한이 있어야 합니다.
  • oc 클라이언트 도구를 설치하고 Fuse Online을 설치할 OCP 클러스터에 연결됩니다.
  • OCP 환경에서 Fuse Online에서 영구 볼륨을 3개 이상 사용할 수 있습니다.

절차

  1. 다음 위치에서 Fuse Online 설치 스크립트가 포함된 패키지를 다운로드합니다.

    https://github.com/syndesisio/fuse-online-install/releases/tag/1.9

  2. 파일 시스템의 편리한 위치에 다운로드한 아카이브의 압축을 풉니다. fuse-online-install-1.9 디렉터리에는 Fuse Online 설치를 위한 스크립트 및 지원 파일이 포함되어 있습니다.
  3. 클러스터 관리자 권한이 있는 계정으로 OpenShift에 로그인합니다. 예를 들면 다음과 같습니다.

    oc login -u admin -p adminpwd

  4. 이 클러스터에 이미 등록된 사용자 정의 리소스 정의를 나열하는 다음 명령을 실행하여 올바르게 연결되어 있는지 확인합니다.

    oc get crd

    오류 메시지가 없는 경우 올바르게 연결되어 있습니다.

  5. fuse-online-install-1.9 디렉터리로 전환하고 다음 명령을 호출하여 클러스터 수준에서 사용자 정의 리소스 정의를 등록합니다.

    bash install_ocp.sh --setup

  6. 다음 명령을 다시 실행하여 등록이 완료되었는지 확인합니다.

    oc get crd

    등록된 사용자 정의 리소스 정의의 출력 목록에는 개요 가 포함되어야 합니다.

  7. Fuse Online을 설치하려는 각 프로젝트에서 사용자에게 설치 권한을 부여합니다. 각 프로젝트에 대해:

    1. 사용자가 Fuse Online을 설치할 수 있는 프로젝트로 변경합니다. 예를 들면 다음과 같습니다.

      oc project fuse-online-project

    2. 사용자에게 해당 프로젝트에 Fuse Online을 설치할 수 있는 권한을 부여합니다. 예를 들어 다음 명령은 Fuse Online을 개발자 사용자에게 설치할 수 있는 권한을 부여합니다. 이 명령을 실행하면 개발자 사용자가 현재 프로젝트에 Fuse Online을 설치할 수 있습니다. 이 예제에서는 fuse-online-project 입니다.

      bash install_ocp.sh --grant developer

      Fuse Online 설치에 대한 권한을 부여하려는 각 OpenShift 프로젝트에 대해 이 두 명령을 반복합니다. 단일 사용자는 클러스터에서 둘 이상의 프로젝트에 Fuse Online을 설치할 수 있습니다. 이를 활성화하려면 다른 프로젝트로 변경하고 동일한 사용자를 지정합니다. 예를 들면 다음과 같습니다.

      oc project another-fuse-online-project
      bash install_ocp.sh --grant 개발자

결과

syndesis 사용자 정의 리소스 정의는 클러스터에 등록됩니다.

다음 단계

Fuse Online을 설치할 수 있는 권한이 있는 사용자는 기본 Fuse Online 환경 또는 사용자 지정 Fuse Online 환경을 설치할지 여부를 결정해야 합니다.

Fuse Online 다운로드 패키지에는 설정 가능한 Fuse Online 환경 애드온 기능 및 매개변수 설정에 대한 기본 설정을 지정하는 default-cr.yml 파일이 포함되어 있습니다. Fuse Online은 default-cr.yml 파일을 사용하여 Fuse Online 환경의 구성을 제어하는 syndesis 사용자 지정 리소스를 만듭니다.

설치된 Fuse Online 환경이 다음과 같이 필요한 경우에만 Fuse Online을 설치하기 전에 default-cr.yml 파일을 편집해야 합니다.

  • Fuse Online 콘솔에 도달할 수 있는 OpenShift 경로에 지정하는 URL을 사용합니다. 기본값은 설치 프로세스에서 이 경로를 계산하는 것입니다.
  • Camel 통합을 위해 Spring Boot 런타임 대신 Camel K 런타임 엔진을 실행합니다. Camel K 런타임은 기술 프리뷰 기능입니다.
  • Knative 리소스에 대한 액세스를 활성화합니다. Knative 리소스 액세스는 기술 프리뷰 기능입니다.
  • 외부 데이터베이스를 사용하여 연결 및 통합 정의를 저장합니다. 기본값은 환경에서 내부 데이터베이스를 사용한다는 것입니다.
  • 연결 및 통합 정의 유지에 사용할 수 있는 내부 스토리지의 양을 늘립니다. 기본적으로 1Gi 는 대부분의 Fuse Online 환경에 충분합니다.

이러한 동작 중 하나에 대해 Fuse Online 환경을 구성하려면 Fuse Online을 설치하기 전에 default-cr.yml 파일을 편집해야 합니다. 즉, 설치된 Fuse Online 환경의 구성을 변경하여 이러한 동작을 구현할 수 없습니다. 또한 이러한 동작에 맞게 구성된 Fuse Online 환경을 설치한 후에는 설치된 환경의 해당 동작을 변경할 수 없습니다.

1.4. Fuse Online을 구성하는 사용자 정의 리소스 속성에 대한 설명

설치 전에만 지정할 수 있는 사용자 정의 리소스 속성 외에도 설치 전이나 후에 변경할 수 있는 여러 사용자 지정 리소스 속성이 있습니다.

아래 표는 구성 가능한 사용자 정의 리소스 설정에 대한 간략한 설명을 제공하고 설치 전만 변경할 수 있는지 여부를 나타냅니다. 원하는 Fuse Online 구성을 달성하려면 이 테이블의 정보를 사용하여 설치 전에 default-cr.yml 파일을 변경하는 방법 또는 설치 후 syndesis 사용자 정의 리소스를 변경하는 방법을 결정합니다. 그런 다음 적절한 절차를 따르십시오.

중요

Camel K 런타임, Knative 리소스에 대한 액세스 및 데이터 가상화는 기술 프리뷰 기능 전용입니다. 기술 프리뷰 기능은 Red Hat 프로덕션 서비스 수준 계약(SLA)에서 지원되지 않으며 기능적으로 완전하지 않을 수 있습니다. 따라서 프로덕션 환경에서 사용하는 것은 권장하지 않습니다. 이러한 기능을 사용하면 향후 제품 기능을 조기에 이용할 수 있어 개발 과정에서 고객이 기능을 테스트하고 피드백을 제공할 수 있습니다. Red Hat 기술 프리뷰 기능의 지원 범위에 대한 자세한 내용은 https://access.redhat.com/support/offerings/techpreview/를 참조하십시오.

Expand
기능/설정이 값을 설정할 수 있는 경우사양

Camel K 런타임(기술 프리뷰)

Camel K 런타임에 대한 추가 정보는 이 표를 따릅니다.

설치 전만 설정

addons:
camelk:
enabled: true

향상된 활동 추적

활동 추적 강화에 대한 추가 정보는 이 표를 따릅니다.

설치 전만 설정

addons:
jaeger:
enabled: true

외부 데이터베이스

외부 데이터베이스 사용에 대한 추가 정보는 이 표를 따릅니다.

설치 전만 설정

spec:
구성 요소:
database:
externalDbURL: postgresql://custom-postgres:5432
user: db-user-name
name: db-name


custom-postgres:5432 를 PostgreSQL 데이터베이스의 호스트 이름 및 포트로 바꿉니다.
db-user-name 을 해당 데이터베이스에 액세스할 수 있는 사용자 계정 이름으로 교체합니다.
db-name 을 데이터베이스 이름으로 교체합니다.

연결 및 통합을 위한 내부 스토리지 용량.

외부 데이터베이스도 지정하는 경우 무시됩니다.

내부 스토리지 증가에 대한 자세한 내용은 이 표를 따릅니다.

설치 전만 설정

spec:
구성 요소:
데이터베이스:
리소스:
volumeCapacity: 1Gi
volumeName: my-volume


1Gi 를 필요한 스토리지 용량으로 바꿉니다. 기본값은 1Gi 입니다.

my-volume 을 내부 스토리지에 사용할 볼륨의 이름으로 교체합니다. 이 매개변수는 선택 사항입니다.

Knative 리소스 액세스
(기술 프리뷰)

Knative 리소스에 대한 액세스를 활성화하려면 Camel K 런타임도 활성화해야 합니다.

설치 전만 설정

addons:
camelk:
enabled: true
knative:
enabled: true

Fuse Online 콘솔에 액세스하기 위한 OpenShift 경로

설치 전만 설정

spec:
routeHostname: project.route.com


Fuse Online 콘솔에 도달할 수 있는 OpenShift 경로로 project.route.com 을 바꿉니다.
예: north-project.6a63.fuse-online.openshiftapps.com

3scale 검색

Fuse Online API 공급자 통합을 위한 API를 노출하여 Red Hat 3scale에서 검색할 수 있습니다.

자세한 내용은 API를 3scale 검색을 사용하도록 Fuse Online 구성입니다.

설치 전후 설정

구성 요소:
기능:
managementUrlFor3scale: https://url-for-3scale

3scale 사용자 인터페이스의 URL을 지정합니다.

백업

Fuse Online 환경 백업에 추가 설정 단계를 설명합니다.

설치 전후 설정

spec:
backup:
schedule: interval


을 백업 간에 원하는 기간으로 바꿉니다. 간격사전 정의된 일정에 cron 유틸리티 형식을 사용합니다. 간격 앞에 @ 기호를 지정하지 마십시오.

데이터 가상화
(기술 프리뷰)
데이터 가상화 기능에 대한 추가 정보는 이 표를 따릅니다.

설치 전후 설정

addons:
dv:
enabled: true
resources:
메모리: 1024Mi



통합 제한실행 중인 최대 통합 수를 지정합니다. 기본값은 실행 중인 통합 수를 제한하지 않습니다.

설치 전후 설정

components:
server:
기능:
integrationLimit: 0

Maven

Fuse Online 환경에서 액세스해야 하는 외부 Maven 리포지토리를 지정합니다.

설치 전후 설정

구성 요소:
server:
features:
mavenRepotories:
customRepo1:
customRepo2:


customRepo 를 리포지토리 이름으로 바꿉니다. https://customRepo1 https://customRepo2
각 리포지토리에 대해 해당 URL을 지정합니다.

Memory

하나 이상의 구성 요소에 사용할 수 있는 기본 메모리 양을 늘립니다. 각 구성 요소는 자체 메모리 요구 사항을 정의합니다. 즉, 각 pod에는 할당된 메모리 양에 제한이 있습니다.

데이터베이스 구성 요소는 연결 및 통합 정의를 저장하는 내부 데이터베이스입니다.

메타 구성 요소는 서버가 로드하는 커넥터와 같은 비즈니스 논리를 제공합니다.

설치 전후 설정

구성 요소:
데이터베이스:
리소스:
메모리:
리소스:
리소스:
메모리: 300Mi
server: Cryostat 리소스: 810Mi

Monitoring

도 참조하십시오. Prometheus를 사용하여 OCP에서 Fuse Online 통합 모니터링.

설치 전후 설정

addons:
ops:
enabled: true

퍼블릭 REST API

추가 설정 단계는 외부 툴에서 사용하기 위해 Fuse Online 공용 REST API 끝점을 추가하는 데 설명되어 있습니다.

설치 전후 설정

addons:
publicApi:
enabled: true
routeHostname: public-syndesis.192.168.64.63.nip.io


routeHostname 을 Fuse Online REST API 엔드포인트를 호출하는 공용 주소로 설정합니다. 클러스터 설정에 따라 지정해야 하는 공용 주소가 결정됩니다. 이전 예에서 경로 호스트 이름은 Minishift 클러스터에 유효합니다.

Todo 앱
샘플 통합 테스트용.

설치 전후 설정

addons:
todo:
enabled: true

애드온 기능 및 구성 설정 정보

  • Camel K 런타임 엔진 (기술 프리뷰)

    Apache Camel K 런타임은 OCP에 통합을 배포하고 재배포할 때 대기 시간을 단축합니다. 예를 들어 성능이 1-2분에서 몇 초로 향상될 수 있습니다. Camel K가 런타임 엔진으로 설치되면 Camel 통합을 위한 Spring Boot 런타임이 대체됩니다.

    Apache Camel K는 엔터프라이즈 통합 패턴용 Apache Camel 프레임워크를 기반으로 하는 경량 클라우드 통합 플랫폼입니다. Camel K는 Kubernetes, OpenShift 및 Knative에서 기본적으로 실행되며 서버리스 및 마이크로 서비스 아키텍처에 맞게 설계 및 최적화되었습니다. Camel K는 클라우드에서 통합을 실행할 때 자동화 및 성능 최적화를 제공합니다. Camel K는 Kubernetes Operator SDK를 사용하여 통합을 배포합니다. 예를 들어 OCP에서 서비스와 경로를 자동으로 생성합니다.

    Camel K는 Apache Camel 오픈 소스 커뮤니티의 하위 프로젝트입니다. 자세한 내용은 https://github.com/apache/camel-k 을 참조하십시오.

    Camel K 런타임이 Fuse Online을 사용하여 설치된 경우 다음 제한 사항이 적용됩니다.

    • Fuse Online 확장은 Camel K 런타임에서 지원되지 않습니다.
    • 사용자 지정 의 Fuse Online 사용자 인터페이스에 확장 기능이 표시되지 않습니다.
  • 데이터 가상화 (기술 프리뷰)

    데이터 가상화를 통해 Fuse Online 개발자는 여러 이기종 소스의 데이터를 통합하여 OpenShift에 배포할 수 있는 가상 데이터베이스 이미지를 생성할 수 있습니다. 자세한 내용은 Red Hat Integration Data Virtualization 설명서를 참조하십시오.

  • 활동 추적 기능 개선

    install_ocp.sh 스크립트를 실행하여 Fuse Online을 설치하는 경우 기본 동작은 Fuse Online 환경에서 향상된 활동 추적이 활성화된다는 것입니다. OperatorHub를 사용하는 경우 Fuse Online을 설치하기 전에 향상된 활동 추적을 활성화하는 것이 좋습니다. 사용자 인터페이스는 이 작업을 안내합니다.

  • 연결 및 통합을 유지하기 위한 외부 데이터베이스

    기본 설치는 Fuse Online에서 연결 및 통합 정의를 유지하기 위해 사용하는 내부 PostgreSQL 데이터베이스를 제공합니다. 대신 Amazon RDS for PostgreSQL 과 같은 외부 PostgreSQL 데이터베이스를 사용하도록 선택할 수 있습니다.

  • 내부 스토리지 용량

    1Gi 의 기본 설정은 대부분의 Fuse Online 환경에 충분합니다. Red Hat 기술 지원을 권장하는 경우에만 새로운 Fuse Online 설치에 대해 이 설정을 늘릴 것으로 예상됩니다. 즉, Fuse Online 서버 오류가 발생한 다른 Fuse Online 환경을 실행하고 있으며 Red Hat 기술 지원은 기본값보다 큰 데이터베이스 볼륨 용량을 사용하여 새 Fuse Online 환경을 설치해야 함을 확인했습니다.

    이미 Fuse Online을 실행 중인 OpenShift 프로젝트에서 Fuse Online 내부 스토리지 용량을 늘리려면 먼저 Fuse Online을 제거해야 합니다. OCP 프로젝트에서 Fuse Online 설치 제거를 참조하십시오.

1.5. Fuse Online을 설치하기 전에 기본 사용자 정의 리소스 파일 편집

기본 Fuse Online 환경을 설치하려면 기본 사용자 지정 리소스 파일을 편집할 필요가 없습니다. OCP에 Fuse Online 설치를 참조하십시오.

사용자 지정 Fuse Online 환경을 설치하려면 Fuse Online을 설치하기 전에 default-cr.yml 파일을 편집해야 합니다. 이 파일은 Fuse Online 다운로드 패키지에 있습니다. Fuse Online 설치 전에만 지정할 수 있는 몇 가지 사용자 지정 리소스 설정이 있습니다. 설치하기 전에 기본 사용자 정의 리소스를 편집할 때 를 참조하십시오.

Fuse Online 설치 전이나 후에 지정할 수 있는 기타 사용자 지정 리소스 설정이 있습니다. Fuse Online을 구성하는 사용자 지정 리소스 속성에 대한 설명을 참조하십시오.

Fuse Online 설치 프로세스는 default-cr.yml 파일에 지정하는 설정을 사용하여 syndesis 사용자 지정 리소스를 생성합니다. 개요 사용자 지정 리소스 설정은 설치된 Fuse Online 환경의 구성을 결정합니다.

사전 요구 사항

  • 사용자는 사이트에서 OCP Online을 설치하고 실행할 계획입니다.
  • oc 클라이언트 툴이 설치되고 Fuse Online을 설치하려는 OCP 클러스터에 연결되어 있습니다.
  • 클러스터 관리 권한이 있는 사용자는 클러스터에서 액세스할 수 있는 권한이 있는 모든 프로젝트에 Fuse Online을 설치할 수 있는 권한을 부여했습니다.

절차

  1. Fuse Online 설치 스크립트가 포함된 패키지를 아직 다운로드하지 않은 경우:

    1. 지금 다음 위치에서 다운로드합니다.

      https://github.com/syndesisio/fuse-online-install/releases/tag/1.9

    2. 파일 시스템의 편리한 위치에 다운로드한 아카이브의 압축을 풉니다. fuse-online-install-1.9 디렉터리에는 Fuse Online 설치를 위한 스크립트 및 지원 파일이 포함되어 있습니다.
  2. Fuse Online을 설치할 수 있는 권한이 있는 계정으로 OpenShift에 로그인합니다. 예를 들면 다음과 같습니다.

    oc login -u developer -p developer

  3. 편집기에서 fuse-online-install-1.9/default-cr.yml 파일을 엽니다.
  4. default-cr.yml 파일을 편집하여 기능을 활성화하고 원하는 매개변수를 설정합니다. 지정할 항목을 확인하려면 Fuse Online을 구성하는 사용자 지정 리소스 속성에 대한 설명을 참조하십시오.
  5. default-cr.yml 파일을 저장합니다.

결과

default-cr.yml 파일에는 새 Fuse Online 설치에 대한 구성 사양이 포함되어 있습니다.

다음 단계

default-cr.yml 파일을 편집하여 외부 데이터베이스를 지정한 경우 Fuse Online을 설치하기 전에 외부 데이터베이스를 사용하여 Fuse Online을 설치하기 위한 시크릿 생성 의 지침을 따르십시오. 그렇지 않으면 OCP에 Fuse Online 설치 지침을 따를 준비가 되어 있습니다.

외부 데이터베이스를 사용하여 연결 및 통합 정의를 유지하는 Fuse Online 환경을 설치하려면 Fuse Online을 설치하기 전에 OpenShift 시크릿, syndesis-global-config 를 생성합니다.

사전 요구 사항

  • 연결 및 통합 정의를 유지하기 위해 외부 데이터베이스를 사용하도록 default-cr.yml 파일을 편집했습니다.
  • Fuse Online은 아직 설치되지 않았습니다.
  • oc 클라이언트 툴이 설치되고 Fuse Online을 설치하려는 OCP 클러스터에 연결되어 있습니다.
  • 클러스터 관리 권한이 있는 사용자는 클러스터에서 액세스할 수 있는 권한이 있는 모든 프로젝트에 Fuse Online을 설치할 수 있는 권한을 부여했습니다.

절차

  1. Fuse Online을 설치할 수 있는 권한이 있는 계정으로 OpenShift에 로그인합니다. 예를 들면 다음과 같습니다.

    oc login -u developer -p developer

  2. 다음을 포함하는 리소스 파일(예: my-fuse-onling-secret-cr.yml)을 생성하고 저장합니다.

    apiVersion: v1
    kind: Secret
    metadata:
      name: syndesis-global-config
      namespace: my-fuse-online-project
      type: Opaque
      data:
        POSTGRESQL_PASSWORD: base64-encoded-value

    my-fuse-online-project 를 외부 데이터베이스를 지정하는 Fuse Online 환경을 설치하려는 OpenShift 프로젝트의 이름으로 바꿉니다.

    base64로 인코딩된 값을 Fuse Online에서 외부 데이터베이스에 액세스하는 데 암호로 사용할 base64 인코딩 값으로 바꿉니다.

    OpenShift 보안에 대한 자세한 내용은 시크릿을 참조하십시오.

  3. 클러스터에 보안을 추가합니다. 예를 들면 다음과 같습니다.

    oc apply -f my-fuse-online-secret-cr.yml

결과

클러스터에서는 외부 데이터베이스를 지정하는 사용자 지정 리소스와 함께 설치된 Fuse Online 환경에서 syndesis-global-config 시크릿을 사용할 수 있습니다.

다음 단계

OCP에 Fuse Online 설치 의 지침을 따르십시오.

1.7. OCP에 Fuse Online을 설치하는 스크립트 실행

Fuse Online 설치 스크립트는 Fuse Online 다운로드 패키지에 있는 default-cr.yml 파일의 사양에 따라 Fuse Online 환경을 설치합니다. 기본 환경을 설치하려면 해당 파일을 편집할 필요가 없습니다. 사용자 지정 환경을 설치하려면 설치 스크립트를 실행하기 전에 default-cr.yml 파일을 편집해야 합니다.

사전 요구 사항

절차

  1. Fuse Online 설치 스크립트가 포함된 패키지를 아직 다운로드하지 않은 경우:

    1. 다음 위치에서 다운로드합니다.

      https://github.com/syndesisio/fuse-online-install/releases/tag/1.9

    2. 파일 시스템의 편리한 위치에 다운로드한 아카이브의 압축을 풉니다. fuse-online-install-1.9 디렉터리에는 Fuse Online 설치를 위한 스크립트 및 지원 파일이 포함되어 있습니다.
  2. Fuse Online을 설치할 수 있는 권한이 있는 계정으로 OpenShift에 로그인합니다. 예를 들면 다음과 같습니다.

    $ oc login -u developer -p developer

  3. Fuse Online을 설치하려는 OpenShift 프로젝트로 전환합니다. 예를 들면 다음과 같습니다.

    $ oc project my-fuse-online-project

    또는 설치 스크립트를 실행할 때 --project my-fuse-online-project )를 지정할 수 있습니다.

  4. 설치 스크립트를 다운로드한 디렉터리에서 설치 스크립트를 호출합니다.

    bash install_ocp.sh

    설치 스크립트 옵션에 대해 알아보려면 $ bash install_ocp.sh --help 명령을 호출합니다.

  5. Fuse Online을 설치하는 데 사용된 syndesis -operator 에 원하는 콘텐츠가 정확히 포함되어 있는지 확인합니다.

    1. 다음 명령을 호출하여 syndesis 사용자 정의 리소스 콘텐츠를 표시합니다.

      oc describe syndesis/app

    2. 사용자 정의 리소스의 콘텐츠를 확인합니다.

      모든 업데이트가 포함되어 있지 않은 경우 사용자 정의 리소스에 구문 오류가 발생했습니다. Fuse Online을 제거한 후 유효한 사용자 정의 리소스를 정의하려면 다시 시도해야 합니다. OCP 프로젝트에서 Fuse Online 설치 제거를 참조하십시오.

  6. 설치에 성공했는지 확인합니다.

    1. https://openshift-route 에서 OpenShift OAuth 프록시 로그인 페이지를 표시합니다.

      설치 스크립트에서 OpenShift 경로를 계산하도록 선택한 경우 스크립트는 실행 종료 시 계산된 경로를 표시합니다. openshift-route 를 스크립트에서 제공한 값으로 바꿉니다.

      default-cr.yml 파일을 편집하여 Fuse Online의 routeHostname 을 지정하는 경우 openshift-route 를 지정한 경로로 교체합니다.

    2. OpenShift 콘솔에 로그인하지 않은 경우 로그인 페이지가 표시됩니다. 로그인할 OpenShift 사용자 이름과 암호를 입력합니다.

    Fuse Online 홈 페이지가 즉시 또는 OpenShift 콘솔에 로그인한 후 표시됩니다.

2장. Fuse Online 환경의 구성 변경

사이트에서 OpenShift Container Platform (OCP)에 Fuse Online을 설치한 후 Fuse Online 환경의 구성을 변경할 수 있습니다.

자세한 내용은 다음 항목을 참조하십시오.

2.1. 설치 후 Fuse Online 구성 변경 가능

사이트에서 OCP(OpenShift Container Platform)에 Fuse Online을 설치한 후 일부 기능을 활성화/비활성화하거나 일부 구성 설정을 변경하도록 구성을 변경할 수 있습니다. 다음 표에는 변경할 수 있는 기능 및 설정, 변경 사항의 영향, 변경에 대한 지침을 찾을 수 있는 위치가 나열되어 있습니다.

syndesis 사용자 정의 리소스를 변경하면 syndesis-server 가 다시 배포되면 OpenShift에서 새 서버 배포를 생성합니다. 새 서버가 준비될 때까지 최대 1~2분이 걸립니다. 이 기간 동안 Fuse Online 콘솔을 사용할 수 없습니다. 새 서버를 배포하는 동안 실행 중인 통합이 계속 실행됩니다. 새 배포가 준비되면 새 서버가 통합 상태를 로드합니다. syndesis-server pod 상태가 Running 이면 Fuse Online 콘솔을 다시 사용하고 Fuse Online 콘솔을 새로 고치면 통합, 연결, 메시지, 가동 시간에 대한 값이 표시됩니다.

중요

데이터 가상화는 기술 프리뷰 기능 전용입니다. 기술 프리뷰 기능은 Red Hat 프로덕션 서비스 수준 계약(SLA)에서 지원되지 않으며 기능적으로 완전하지 않을 수 있습니다. 따라서 프로덕션 환경에서 사용하는 것은 권장하지 않습니다. 이러한 기능을 사용하면 향후 제품 기능을 조기에 이용할 수 있어 개발 과정에서 고객이 기능을 테스트하고 피드백을 제공할 수 있습니다. Red Hat 기술 프리뷰 기능의 지원 범위에 대한 자세한 내용은 https://access.redhat.com/support/offerings/techpreview/를 참조하십시오.

Expand
기능/설정변경의 영향정보

3scale 검색

Redploys syndesis-server

API 3scale 검색을 사용하도록 Fuse Online 구성

백업

syndesis-operator에 백업 작업 추가

Fuse Online 환경 백업

데이터 가상화
(기술 프리뷰)

새로운 syndesis-dv Pod를 생성하고 Fuse Online 콘솔을 업데이트합니다.

Fuse Online을 구성하는 사용자 정의 리소스 속성에 대한 설명

모니터링

새 OpenShift 리소스 설치

Prometheus를 사용하여 OCP에서 Fuse Online 통합 모니터링

퍼블릭 Fuse Online REST API 끝점

syndesis-public-oauthproxy Pod 생성

외부 툴에서 사용할 Fuse Online 공용 REST API 노출

통합을 테스트하기 위한 샘플 Todo 앱

todo Pod 생성

OCP에서 실행되는 Fuse Online 환경에 샘플 앱 추가

외부 Maven 리포지토리 사양

syndesis-server재배포

Fuse Online을 구성하는 사용자 정의 리소스 속성에 대한 설명

Fuse Online 구성 요소에서 사용 가능한 메모리

변경된 메모리로 구성 요소 재배포

허용되는 실행 중인 통합 수

syndesis-server재배포

2.2. Fuse Online 구성 변경 절차

OCP에 설치된 Fuse Online 환경의 경우 syndesis 사용자 정의 리소스를 업데이트하여 구성을 변경할 수 있습니다. 변경 사항을 저장한 후 OpenShift는 구문적으로 올바르면 업데이트와 함께 syndesis-operator 를 업데이트합니다. 구문 오류로 인해 업데이트가 수행되지 않습니다.

syndesis 사용자 정의 리소스를 편집하는 동안 구문적으로 올바른 잘못된 설정을 지정하지 않아야 합니다. syndesis-operator 는 구문이 올바른 설정이 유효하지 않은 경우에도 업데이트된 syndesis 사용자 정의 리소스를 사용합니다. 유효하지 않은 설정을 지정하면 OpenShift가 업데이트를 완료한 후에만 확인할 수 있습니다. 업데이트 중에 OpenShift는 잘못된 설정을 삭제합니다.

사전 요구 사항

절차

  1. Fuse Online을 설치할 수 있는 권한이 있는 계정으로 OpenShift에 로그인합니다. 예를 들면 다음과 같습니다.

    oc login -u developer -p developer

  2. 구성을 변경하려는 Fuse Online 환경을 실행 중인 OpenShift 프로젝트로 전환합니다. 예를 들면 다음과 같습니다.

    oc project my-fuse-online-project

  3. 선택 사항: 업데이트한 후 잘못된 콘텐츠를 저장하는 경우 구문 분석 사용자 정의 리소스에서 현재 설정의 백업 사본을 생성합니다. 예를 들어 다음 명령을 호출하면 syndesis_app_backup.yml 파일에 백업을 저장합니다.

    oc get syndesis app -o yaml > syndesis_app_backup.yml

  4. 다음 명령을 호출하여 편집기에서 syndesis 사용자 정의 리소스를 엽니다.

    oc edit syndesis

  5. 필요에 따라 syndesis 사용자 정의 리소스를 편집합니다.
  6. 리소스를 저장합니다.
  7. 2분 정도 기다린 다음 syndesis-operator 에서 syndesis 사용자 정의 리소스에 대한 업데이트를 사용할 수 있는지 확인합니다.

    1. 다음 명령을 호출하여 syndesis 사용자 정의 리소스의 내용을 표시합니다.

      oc describe syndesis/app

    2. 콘텐츠를 확인합니다.

      syndesis 사용자 정의 리소스에 필요한 설정이 포함되어 있지 않은 경우 다시 편집하여 유효한 설정을 지정합니다.

결과

syndesis 사용자 정의 리소스 트리거 syndesis-operator 에 대한 대부분의 변경 사항은 Fuse Online(syndesis-server)을 재배포합니다. 즉, OpenShift가 새 서버 배포를 생성합니다. 새 서버가 준비될 때까지 최대 1~2분이 걸립니다. 이 기간 동안 Fuse Online 콘솔을 사용할 수 없습니다. 새 서버를 배포하는 동안 실행 중인 통합이 계속 실행됩니다. 새 배포가 준비되면 새 서버가 통합 상태를 로드합니다. 다음과 같은 경우 Fuse Online 콘솔을 다시 사용할 수 있습니다.

  • syndesis-server Pod 상태는 Running 입니다.
  • Fuse Online 콘솔을 새로 고치면 통합, 연결, 메시지, 가동 시간 값이 표시됩니다.

syndesis 사용자 지정 리소스에 대한 일부 변경 사항은 Fuse Online 구성을 업데이트하지만 syndesis-server 를 다시 배포할 필요는 없습니다. 예를 들면 다음과 같습니다.

  • syndesis 사용자 정의 리소스를 업데이트하여 백업을 지정할 때 백업 작업이 시작되기 몇 초 전입니다.
  • 데이터 가상화를 활성화하려면 Fuse Online 구성을 업데이트하려면 Fuse Online 콘솔 사용자 인터페이스 및 데이터 가상화 Pod를 배포해야 합니다. 콘솔 업데이트에는 일반적으로 최대 10초가 필요하지만 데이터 가상화 Pod를 배포하는 데 걸리는 시간은 여러 변수에 따라 다릅니다. Fuse Online 환경에서 데이터 가상화를 활성화하는지 확인하려면 다음을 수행하십시오.

    1. Fuse Online 콘솔의 왼쪽 패널에서 데이터를 클릭합니다.
    2. 데이터 가상화 페이지에서 데이터 보기를 추가할 수 있어야 합니다.

각 구성 변경의 영향은 설치 후 허용되는 Fuse Online 구성 변경 사항에 설명되어 있습니다.

2.3. API 3scale 검색을 사용하도록 Fuse Online 구성

API 공급자 통합을 생성하는 경우 Red Hat 3scale에서 해당 통합을 위해 API를 검색할 수 있습니다. 기본 동작은 3scale에서 자동 검색에 대해 API가 노출되지 않는다는 것입니다. 검색을 활성화하면 3scale 사용자 인터페이스에 대한 URL을 제공해야 합니다.

Fuse Online을 설치하기 전에 API의 3scale 검색을 사용하도록 Fuse Online을 구성하려면 Fuse Online을 구성하는 사용자 지정 리소스 속성에 대한 설명을 참조하십시오.

설치 후 syndesis 사용자 정의 리소스를 업데이트하여 검색을 활성화할 수 있습니다. 이를 위한 지침은 이 주제에서 확인할 수 있습니다. 검색을 활성화하면 리소스를 업데이트할 때 연결된 OpenShift 프로젝트에만 적용됩니다.

3scale 서비스 검색을 활성화하면 다음을 의미합니다.

  • 기본 동작은 3scale이 API 공급자 통합을 게시하는 것입니다. 3scale에서 API 공급자 통합을 게시하는 경우:

    • Fuse Online에서는 실행 중인 API 공급자 통합을 위한 외부 URL을 제공하지 않습니다.
    • API는 3scale에서만 액세스할 수 있습니다. 엔드포인트를 노출하려면 3scale의 구성이 필요합니다. 자세한 내용은 Red Hat 3scale API Management, Service Discovery 를 참조하십시오.
  • API 공급자 통합 작성자는 해당 통합을 위해 3scale 검색을 비활성화할 수 있습니다. 즉, 각 API 공급자 통합 작성자는 통합의 API를 검색할 수 있는지 여부를 선택할 수 있습니다.

사전 요구 사항

  • Fuse Online은 OCP 현장에 설치됩니다.
  • oc 클라이언트 툴이 설치되고 Fuse Online이 설치된 OCP 클러스터에 연결됩니다.
  • API 검색을 활성화하려는 프로젝트에 Fuse Online을 설치할 수 있는 권한이 있습니다.

절차

  1. Fuse Online을 설치할 수 있는 권한이 있는 계정으로 OpenShift에 로그인합니다. 예를 들면 다음과 같습니다.

    oc login -u developer -p developer

  2. Fuse Online이 실행 중인 OpenShift 프로젝트로 전환합니다. 이 프로젝트에만 검색을 활성화할 수 있습니다. 예를 들면 다음과 같습니다.

    oc project my-fuse-online-project

  3. syndesis 사용자 정의 리소스를 편집합니다.

    1. 일반적으로 편집기에서 리소스를 여는 다음 명령을 호출합니다.

      oc edit syndesis

    2. managementUrlFor3scale 을 3scale 사용자 인터페이스의 URL로 설정하여 리소스를 편집합니다. 결과는 다음과 같습니다.

      spec:
        components:
          server:
            features:
              managementUrlFor3scale: https://3scale-admin.apps.mycluster.com
    3. 리소스를 저장합니다.
  4. 선택 사항: 전환한 프로젝트에 대해 검색이 켜져 있는지 확인하려면 다음 명령을 호출합니다.

    oc describe dc/syndesis-server

    discovery가 켜지면 이 명령의 출력은 OPENSHIFT_MANAGEMENT_URL_FOR3SCALE 환경 변수가 사용자 정의 리소스에서 지정한 URL로 설정되어 있음을 표시합니다.

결과

syndesis 사용자 정의 리소스 트리거의 변경으로 Fuse Online 설치를 담당하는 syndesis-operator 를 트리거하여 syndesis-server 를 재배포합니다. 전환한 OpenShift 프로젝트에서 새로운 기본 동작은 API가 3scale의 검색에 노출된다는 것입니다.

syndesis-server DeploymentConfig 오브젝트를 편집하여 OPENSHIFT_MANAGEMENT_URL_FOR3SCALE 환경 변수를 설정하지 마십시오. syndesis-operator 가 변경 사항을 되돌리기 때문에 이 작업이 작동하지 않습니다. syndesis-operator 는 Fuse Online이 syndesis 사용자 정의 리소스에 따라 배포되고 항상 배포되도록 합니다.

2.4. API의 3scale 검색을 비활성화하도록 Fuse Online 구성

API 의 3scale 검색을 활성화하기 위해 Fuse Online 구성에 설명된 절차를 수행한 경우 각 API 공급자 통합 작성자는 통합 API를 검색할 수 있는지 여부를 선택할 수 있습니다. 예를 들어 Fuse Online에서 API 공급자 통합을 편집하고 테스트하려는 경우 예를 들어 통합 API를 3scale에서 검색할 수 없는 기본 동작을 재구성할 수 있습니다. 이렇게 하려면 managementUrlFor3scale 키와 값을 지정하는 줄이 주석 처리되도록 Fuse Online syndesis 사용자 정의 리소스를 업데이트합니다. 이렇게 하면 3scale의 검색이 비활성화됩니다. 그런 다음 검색 가능한 API와 함께 게시된 API 공급자 통합을 다시 게시합니다.

사전 요구 사항

절차

  1. Fuse Online을 설치할 수 있는 권한이 있는 계정으로 OpenShift에 로그인합니다. 예를 들면 다음과 같습니다.

    oc login -u developer -p developer

  2. 3scale 검색이 활성화된 OpenShift 프로젝트로 전환합니다. 예를 들면 다음과 같습니다.

    oc project my-fuse-online-project

  3. syndesis 사용자 정의 리소스를 편집합니다.

    1. 일반적으로 편집기에서 리소스를 여는 다음 명령을 호출합니다.

      oc edit syndesis

    2. managementUrlFor3scale 키와 값을 지정하는 행 시작 부분에 해시 기호(#)를 삽입하여 리소스를 편집합니다. 이렇게 하면 행이 주석으로 만들어 검색을 비활성화합니다. 결과는 다음과 같아야 합니다.

      spec:
        components:
          server:
            features:
            #  managementUrlFor3scale: https://3scale-admin.apps.mycluster.com
    3. 리소스를 저장합니다.

      이렇게 하면 syndesis 사용자 정의 리소스가 업데이트됩니다. 이번 업데이트에서는 OPENSHIFT_MANAGEMENT_URL_FOR3SCALE 환경 변수가 제거됩니다. syndesis 사용자 정의 리소스 트리거의 변경으로 Fuse Online 설치를 담당하는 syndesis-operator 를 트리거하여 syndesis-server 를 재배포합니다. 새로운 기본 동작은 API가 더 이상 3scale의 검색에 노출되지 않는다는 것입니다.

    syndesis-server DeploymentConfig 오브젝트를 편집하여 OPENSHIFT_MANAGEMENT_URL_FOR3SCALE 환경 변수의 설정을 제거하지 마십시오. syndesis-operator 가 변경 사항을 되돌리기 때문에 이 작업이 작동하지 않습니다. syndesis-operator 는 Fuse Online이 syndesis 사용자 정의 리소스에 따라 배포되고 항상 배포되도록 합니다.

  4. 검색이 활성화되었으며 검색을 비활성화한 프로젝트에서 생성된 API 공급자 통합을 다시 게시합니다.

    즉, API 공급자 통합이 생성된 프로젝트에 대해 검색을 활성화하는 동안 해당 통합 API 검색을 비활성화한 경우 API 공급자 통합을 다시 게시할 필요가 없습니다.

결과

관련 OpenShift 프로젝트에서 생성된 API 공급자 통합을 위한 API는 더 이상 3scale에서 검색할 수 없습니다.

Fuse Online에서 관련 프로젝트에 있는 API 공급자 통합을 게시(또는 다시 게시)할 때 Fuse Online은 API 공급자 통합 작업을 호출하기 위한 외부 URL을 제공합니다.

2.5. OCP에서 실행되는 Fuse Online 환경에 샘플 앱 추가

새로운 사용자가 Fuse Online과의 통합을 생성하는 방법을 배울 수 있도록 Fuse Online 환경에 샘플 앱을 추가할 수 있습니다. ToDo 앱을 사용하면 AMQ to REST API 샘플 통합이 예상대로 작동하는지 확인할 수 있습니다.

Fuse Online을 설치하기 전에 ToDo 앱을 갖도록 Fuse Online을 구성하려면 Fuse Online을 구성하는 사용자 지정 리소스 속성에 대한 설명을 참조하십시오.

또는 Fuse Online 환경에 ToDo 앱을 추가하는 대신 모든 사용자는 샘플 앱이 포함된 Fuse Online 평가 환경을 요청할 수 있습니다. 그런 다음 Fuse Online Sample Integration Tutorials 의 지침에 따라 새 사용자가 샘플 통합을 생성할 수 있습니다.

사전 요구 사항

  • Fuse Online은 OCP 현장에 설치되어 실행됩니다.
  • oc 클라이언트 툴이 설치되고 Fuse Online이 설치된 OCP 클러스터에 연결됩니다.
  • 클러스터 관리 권한이 있는 사용자는 클러스터에서 액세스할 수 있는 권한이 있는 모든 프로젝트에 Fuse Online을 설치할 수 있는 권한을 부여했습니다.
  • 사용자 이름과 암호를 알고 있는 Red Hat 개발자 계정이 있습니다. 설치 스크립트에서 https://developers.redhat.com 에 대해 인증할 수 있도록 이러한 인증 정보를 입력하라는 메시지를 표시합니다. 계정 생성에 대한 자세한 내용은 Red Hat Registry 액세스 및 구성을 참조하십시오.

절차

  1. Fuse Online을 설치할 수 있는 권한이 있는 계정으로 OpenShift에 로그인합니다. 예를 들면 다음과 같습니다.

    oc login -u developer -p developer

  2. Fuse Online이 실행 중인 프로젝트로 전환합니다. 예를 들면 다음과 같습니다.

    oc project my-fuse-online-project

  3. syndesis 사용자 정의 리소스를 편집합니다.

    1. 일반적으로 편집기에서 리소스를 여는 다음 명령을 호출합니다.

      oc edit syndesis

    2. 다음 행이 리소스에 있는지 확인합니다. 필요에 따라 를 편집합니다.

      spec:
        addons:
          todo:
            enabled: true
    3. 리소스를 저장합니다.

      syndesis 사용자 정의 리소스 트리거 syndesis-operator 에 이러한 변경 사항을 저장하여 새 todo Pod를 생성합니다.

다음 단계

AMQ를 REST API 샘플 통합에 구현하여 Todo 앱을 사용합니다.

3장. OCP에서 Fuse Online 관리

Fuse Online을 OCP(OpenShift Container Platform) 현장에 설치한 후 Prometheus를 사용하여 통합 활동을 모니터링할 수 있으며 Fuse Online 환경을 복원하는 데 사용할 수 있는 주기적인 Fuse Online 백업을 설정할 수 있습니다. 필요에 따라 Fuse Online을 업그레이드하거나, Fuse Online을 제거하거나, Fuse Online이 포함된 OCP 프로젝트를 삭제할 수 있습니다.

자세한 내용은 다음 항목을 참조하십시오.

3.1. Prometheus를 사용하여 OCP에서 Fuse Online 통합 모니터링

Prometheus를 사용하여 Fuse Online 인프라 및 Fuse Online 통합을 모니터링할 수 있습니다. 이렇게 하려면 syndesis 사용자 정의 리소스에서 ops 애드온을 활성화합니다. ops 를 활성화하면 별도의 OpenShift 프로젝트에 설치된 Prometheus 인스턴스의 모니터링을 위해 Fuse Online이 노출됩니다. Fuse Online을 설치하기 전이나 후에 ops 애드온을 활성화할 수 있습니다.

여기에서 절차는 Prometheus를 사용하도록 Fuse Online 구성을 변경하는 것입니다. Fuse Online을 설치하기 전에 Prometheus를 활성화하려면 Fuse Online 을 구성하는 사용자 지정 리소스 속성에 대한 설명을 참조하십시오.

사전 요구 사항

  • Fuse Online은 OCP 현장에 설치되어 실행됩니다.
  • oc 클라이언트 툴이 설치되고 Fuse Online이 설치된 OCP 클러스터에 연결됩니다.
  • 클러스터 관리 권한이 있는 사용자는 클러스터에서 액세스할 수 있는 권한이 있는 모든 프로젝트에 Fuse Online을 설치할 수 있는 권한을 부여했습니다.
  • 사용자 이름과 암호를 알고 있는 Red Hat 개발자 계정이 있습니다. 설치 스크립트에서 https://developers.redhat.com 에 대해 인증할 수 있도록 이러한 인증 정보를 입력하라는 메시지를 표시합니다. 계정 생성에 대한 자세한 내용은 Red Hat Registry 액세스 및 구성을 참조하십시오.

절차

  1. Fuse Online을 설치할 수 있는 권한이 있는 계정으로 OpenShift에 로그인합니다. 예를 들면 다음과 같습니다.

    oc login -u developer -p developer

  2. Fuse Online이 실행 중인 프로젝트로 전환합니다. 예를 들면 다음과 같습니다.

    oc project my-fuse-online-project

  3. syndesis 사용자 정의 리소스를 편집합니다.

    1. 일반적으로 편집기에서 리소스를 여는 다음 명령을 호출합니다.

      oc edit syndesis

    2. 다음 행이 리소스에 있는지 확인합니다. 필요에 따라 를 편집합니다.

      spec:
        addons:
          ops:
            enabled: true
    3. 리소스를 저장합니다.

결과

syndesis 사용자 정의 리소스 트리거 syndesis-operator 에 이러한 변경 사항을 저장하여 새 OpenShift 리소스를 설치합니다. syndesis-server 를 다시 배포할 필요가 없습니다.

다음 단계

Prometheus 및 Grafana를 설치하는 Application Monitoring Operator 를 설치합니다.

추가 리소스

3.2. Fuse Online 환경 백업

정기적으로 백업하도록 Fuse Online을 구성할 수 있습니다.

  • Fuse Online에서 연결 및 통합을 저장하는 내부 PostgreSQL 데이터베이스입니다.
  • syndesis-operator 에서 생성하고 Fuse Online을 실행하는 데 필요한 OpenShift 리소스입니다. 여기에는 구성 맵, 배포 구성 및 서비스 계정이 포함되며 이에 국한되지 않습니다.

Fuse Online을 설치하기 전에 Fuse Online 환경에 대한 백업을 구성하거나 Fuse Online 환경의 구성을 변경하여 백업을 활성화할 수 있습니다.

Fuse Online이 백업을 수행하도록 구성된 경우 Fuse Online은 데이터를 하나의 파일에 압축하고 사용자가 지정한 Amazon S3 버킷에 해당 파일을 업로드합니다. 새 Fuse Online 환경(연결 또는 정의된 통합 없음)에 백업을 적용하여 백업된 Fuse Online 환경을 복원할 수 있습니다.

사전 요구 사항

  • OCP는 현장에서 실행되고 있습니다.
  • oc 클라이언트 툴이 설치되어 Fuse Online이 실행 중이거나 실행 중인 OCP 클러스터에 연결되어 있습니다.
  • 클러스터 관리 권한이 있는 사용자는 클러스터에서 액세스할 수 있는 권한이 있는 모든 프로젝트에 Fuse Online을 설치할 수 있는 권한을 부여했습니다.
  • AWS 액세스 키와 AWS 시크릿 키가 있습니다. 이러한 인증 정보를 얻는 방법에 대한 자세한 내용은 IAM 사용자의 액세스 키 관리에 대한 AWS 문서를 참조하십시오.
  • 업로드하려는 S3 버킷이 상주하는 AWS 리전을 알고 있습니다.
  • 백업을 업로드할 S3 버킷의 이름을 알고 있습니다.

절차

  1. Fuse Online을 설치할 수 있는 권한이 있는 계정으로 OpenShift에 로그인합니다. 예를 들면 다음과 같습니다.

    oc login -u developer -p developer

  2. 백업을 구성하려는 Fuse Online 환경을 실행 중이거나 실행 중인 OpenShift 프로젝트로 전환합니다. 예를 들면 다음과 같습니다.

    oc project my-fuse-online-project

  3. OpenShift 시크릿을 생성합니다. 명령줄에서 다음을 수행합니다.

    • 다음 명령 형식에 표시된 대로 syndesis-backup-s3 을 지정합니다.
    • AWS 변수를 AWS 액세스 키, AWS 시크릿 키, 버킷이 있는 AWS 리전 및 버킷 이름으로 교체합니다.

      다음 명령 형식을 사용하여 보안을 생성합니다.

      oc create secret generic syndesis-backup-s3 \
      --from-literal=secret-key-id="my-aws-access-key" \
      --from-literal=secret-access-key="my-aws-secret-key" \
      --from-literal=region="aws-region" \
      --from-literal=bucket-name="aws-bucket-name"

      백업 작업이 실행 중인 경우 이 시크릿이 있어야 합니다.

  4. Fuse Online 이 아직 설치되지 않은 경우 default-cr.yml 파일을 편집하여 백업을 활성화해야 합니다. Fuse Online을 설치하기 전에 syndesis 사용자 정의 리소스 편집을 참조하십시오. Fuse Online이 설치되면 사용자 정의 리소스에서 지정한 일정에 따라 백업 작업이 있습니다.

    Fuse Online 이 실행 중인 경우 syndesis 사용자 정의 리소스를 편집해야 합니다.

    1. 다음 명령을 호출하여 편집기에서 syndesis 사용자 정의 리소스를 엽니다.

      oc edit syndesis

    2. spec 아래에 다음을 추가합니다.

      backup:
        schedule: my-backup-interval

      my-backup-interval 을 백업 사이에 원하는 기간으로 바꿉니다. 백업 간 간격을 지정하는 방법을 확인하려면 다음 리소스를 참조하십시오.

      • 사전 정의된 Cron 스케줄
      • Cron 간격

        간격 앞에 @ 기호를 지정하지 마십시오. 예를 들어 일별 백업을 구성하려면 사용자 정의 리소스에 다음과 같은 내용이 포함됩니다.

        apiVersion: syndesis.io/v1beta1
        kind: Syndesis
        metadata:
          name: app
        spec:
          backup:
            schedule: daily
  5. 파일을 저장합니다.

    그러면 syndesis-operator 에 백업 작업이 추가됩니다.

결과

Fuse Online이 이미 실행 중인 경우 사용자가 정의한 일정에 따라 Fuse Online 백업 작업이 있습니다.

다음 단계

Fuse Online을 설치해야 하는 경우 default-cr.yml 파일을 편집하여 원하는 다른 기능을 활성화하거나 기타 다른 매개 변수를 설정합니다. default-cr.yml 파일에 원하는 모든 설정이 있는 경우 OpenShift 시크릿을 생성할 때 지정한 프로젝트에 Fuse Online을 설치합니다.

3.3. Fuse Online 환경 복원

연결 또는 통합을 아직 생성하지 않은 새 Fuse Online 환경에서는 Fuse Online 환경의 백업을 복원할 수 있습니다. Fuse Online 환경을 복원한 후에는 복원된 연결을 편집하여 암호를 업데이트해야 합니다. 그런 다음 복원된 통합을 게시할 수 있습니다.

사전 요구 사항

  • OCP는 현장에서 실행되고 있습니다.
  • oc 클라이언트 툴이 설치되어 Fuse Online 환경을 복원하려는 OCP 클러스터에 연결되어 있습니다.
  • 클러스터 관리 권한이 있는 사용자는 클러스터에서 액세스할 수 있는 권한이 있는 모든 프로젝트에 Fuse Online을 설치할 수 있는 권한을 부여했습니다.
  • 데이터를 정기적으로 백업하고 Amazon S3에 데이터를 업로드하도록 구성된 Fuse Online 환경이 있습니다.
  • Fuse Online 릴리스 번호(예: 7.6)는 백업된 Fuse Online 환경과 백업을 복원하려는 Fuse Online 환경과 동일합니다.
  • Fuse Online 백업이 포함된 AWS 버킷에 액세스할 수 있는 권한이 있습니다.
  • 백업을 복원하려는 Fuse Online 환경은 새로운 Fuse Online 설치입니다. 즉, 사용자가 정의한 연결 또는 통합이 없습니다. 연결 및 통합이 있는 Fuse Online 환경이 있는 프로젝트에서 Fuse Online을 복원하려면 해당 Fuse Online 환경을 제거하고 새 Fuse Online 환경을 설치해야 합니다.

절차

  1. Amazon S3에서 원하는 백업 파일을 다운로드합니다. 이에 대한 자세한 내용은 AWS 문서에서 S3 버킷에서 오브젝트를 다운로드하는 방법에 대한 것입니다.
  2. zip 파일의 내용을 추출합니다. 예를 들어 다음 명령줄은 7.6-2020-03-15-23:30:00.zip 파일의 압축을 해제하고 콘텐츠를 /tmp/fuse-online-backup 폴더에 복사합니다.

    unzip 7.6-2020-03-15-23:30:00.zip -d /tmp/fuse-online-backup

  3. Fuse Online 데이터베이스를 디코딩합니다. 예를 들면 다음과 같습니다.

    base64 -d /tmp/fuse-online-backup/syndesis-db.dump > /tmp/fuse-online-backup/syndesis-db
  4. 새 Fuse Online 환경을 실행 중인 OpenShift 프로젝트로 전환합니다. 예를 들어 새 Fuse Online 환경이 my-fuse-online-project 인 경우 다음 명령을 호출합니다.

    oc project my-fuse-online-project

    이 절차의 나머지 부분에서는 새 Fuse Online 환경이 포함된 프로젝트로 전환했다고 가정합니다.

  5. 데이터베이스 pod의 이름을 가져옵니다.

    복원된 Fuse Online 환경에서 제공된 내부, PostgreSQL 데이터베이스를 사용하는 경우 다음 명령을 호출하여 데이터베이스 포드의 이름을 가져옵니다.

    oc get pods -l deploymentconfig=syndesis-db -o jsonpath='{.items[*].metadata.name}'

    복원된 Fuse Online 환경에서 외부 데이터베이스를 사용하는 경우 해당 데이터베이스의 포드 이름을 가져오는 방법을 알고 있다고 가정합니다.

    DATABASE_POD_NAME 이 표시되는 나머지 명령에서 복원된 Fuse Online 환경에 대한 데이터베이스 포드 이름을 삽입합니다.

  6. 어떤 방식으로든 데이터베이스에 액세스하는 구성 요소를 축소합니다.

    1. 다른 구성 요소를 축소할 수 있도록 축소된 syndesis-operator 를 축소합니다.

      oc scale dc syndesis-operator --replicas 0

    2. syndesis-serversyndesis-meta 구성 요소를 축소합니다.

      oc scale dc syndesis-server --replicas 0
      oc scale dc syndesis-meta --replicas 0

  7. 데이터베이스 백업 파일을 Fuse Online 데이터베이스 Pod로 보냅니다.

    oc cp /tmp/fuse-online-backup/syndesis-db DATABASE_POD_NAME:/tmp/syndesis-db
  8. Fuse Online 데이터베이스 포드에서 원격 쉘 세션을 엽니다.

    oc rsh DATABASE_POD_NAME

  9. 다음 명령을 호출하여 Fuse Online 데이터베이스를 복원합니다.

    psql 명령이 데이터베이스 암호를 입력하라는 메시지를 표시하고 복원된 Fuse Online 환경에서 제공된 내부 PostgreSQL 데이터베이스를 사용하는 경우 syndesis-db 배포 구성에서 POSTGRESQL_PASSWORD 환경 변수에서 암호를 찾을 수 있습니다. 복원된 Fuse Online 환경에서 외부 데이터베이스를 사용하는 경우 암호를 알고 있다고 가정합니다.

    cd /tmp
    psql -c 'DROP database if exists syndesis_restore'
    psql -c 'CREATE database syndesis_restore'
    pg_restore -v -d syndesis_restore /tmp/syndesis-db
    psql -c "SELECT pg_terminate_backend(pid) FROM pg_stat_activity WHERE datname = 'syndesis'"
    psql -c 'DROP database if exists syndesis'
    psql -c 'ALTER database syndesis_restore rename to syndesis'

    이제 Fuse Online을 복원해야 합니다. RSH 세션을 종료할 수 있습니다.

    exit

  10. Fuse Online 구성 요소를 확장합니다.

    oc scale dc syndesis-operator --replicas 1

    syndesis-operator1 로 스케일링하면 축소된 다른 Pod가 표시되어야 합니다. 그러나 이러한 상황이 발생하지 않으면 수동으로 확장할 수 있습니다.

    oc scale dc syndesis-server --replicas 1
    oc scale dc syndesis-meta --replicas 1

  11. 서버는 복원된 각 통합을 시작하려고 하지만 먼저 연결을 업데이트해야 합니다. 결과적으로 복원된 통합이 실행되고 있지 않은지 확인합니다.

    1. Fuse Online 콘솔 경로를 가져옵니다.

      echo "https://$(oc get route/syndesis -o jsonpath='{.spec.host}' )"
    2. Fuse Online을 설치할 수 있는 권한이 있는 OpenShift 사용자 계정으로 Fuse Online 콘솔에 로그인합니다.
    3. 통합 목록을 표시하고 모든 통합이 중지되었는지 확인합니다. 통합이 실행 중인 경우 중지합니다.
  12. 암호가 있는 각 연결에 대해 이 Fuse Online 환경에 대해 올바른 암호를 갖도록 연결을 업데이트해야 합니다. 다음 단계에서는 제공된 PostgresDB 연결에 대해 이 작업을 수행하는 방법을 보여줍니다.

    1. 복원된 Fuse Online 환경이 실행되는 프로젝트에 대한 OpenShift 콘솔에서 PostgresDB 연결의 암호를 검색합니다. syndesis-db 배포에서 이 암호는 환경 변수에서 사용할 수 있습니다.
    2. Fuse Online 콘솔에서 연결을 표시합니다.
    3. PostgresDB 연결을 편집합니다.
    4. PostgresDB 연결의 연결 세부 정보에서 검색된 암호를 Password 필드에 붙여넣습니다.
  13. 각 통합에 대해 구성 필수 지표가 없는지 확인합니다. 통합이 있는 경우 통합을 편집하여 문제를 해결합니다. 통합의 모든 단계가 올바르면 통합을 게시합니다.

    빌드 단계 직후 Fuse Online에서 통합을 중지 상태로 되돌리는 경우 배포를 삭제하고 구성이 필요하지 않은지 확인한 후 통합을 다시 게시하십시오.

    로그에 표시되는 경우 다음 메시지는 무시해도 됩니다.

    Error performing GET request to https://syndesis-my-fuse-online-project.my-cluster-url/api/v1/metrics/integrations

3.4. OCP에서 Fuse Online 업그레이드

OCP에서 Fuse Online을 업그레이드하려면 최신 Fuse Online 릴리스를 다운로드하고, 클러스터 관리자에서 Fuse Online을 업그레이드할 수 있는 권한을 확보하고, 업데이트 스크립트를 실행합니다.

경우에 따라 패치 및 보안 수정 사항을 통합하는 새로운 애플리케이션 이미지가 Fuse Online용으로 릴리스됩니다. Red Hat의 에라타 업데이트 채널을 통해 이러한 업데이트에 대한 알림을 받습니다. 그런 다음 Fuse Online 이미지를 업그레이드할 수 있습니다.

다음 업그레이드의 업그레이드 절차는 동일합니다.

  • Fuse Online 7.5에서 Fuse Online 7.6까지
  • Fuse Online 7.6 버전에서 최신 Fuse Online 7.6 버전으로 사용

사전 요구 사항

  • 사이트에서 OCP Online 버전 7.5를 설치하고 실행 중입니다. 또는 OCP 사이트에서 7.6 버전의 Fuse Online을 설치하고 실행 중이며 새로운 애플리케이션 이미지로 업그레이드하려고 합니다.

    이전 버전의 경우:

  • oc 클라이언트 도구를 설치하고 Fuse Online이 설치된 OCP 클러스터에 연결되어 있습니다.
  • 이 절차의 처음 5 단계에 필요한 클러스터 관리 권한이 있습니다.

절차

  1. 클러스터 관리자는 Fuse Online 패키지를 다운로드하고 사용자가 특정 프로젝트에서 Fuse Online을 업그레이드할 수 있는 권한을 부여합니다.

    1. 다음 위치에서 Fuse Online 설치 스크립트가 포함된 패키지를 다운로드합니다.

      https://github.com/syndesisio/fuse-online-install/releases/tag/1.9

      파일 시스템의 편리한 위치에 다운로드한 아카이브의 압축을 풉니다. fuse-online-install-1.9 디렉터리에는 Fuse Online 업그레이드를 위한 스크립트 및 지원 파일이 포함되어 있습니다.

    2. 추출된 아카이브가 포함된 디렉터리로 변경합니다. 예를 들면 다음과 같습니다.

      cd fuse-online-install-1.9

    3. 클러스터 관리 계정을 사용하여 OpenShift에 로그인합니다. 예를 들면 다음과 같습니다.

      oc login -u admin -p admin

    4. Fuse Online을 업그레이드해야 하는 OpenShift 프로젝트로 변경합니다. 예를 들면 다음과 같습니다.

      oc project fuse-online-project

    5. 이 프로젝트에서만 Fuse Online 업그레이드 권한을 부여합니다. 예를 들어 다음 명령은 Fuse Online을 developer 사용자로 업그레이드할 수 있는 권한을 부여합니다. 클러스터 관리자가 이 명령을 실행한 후 developer 사용자는 이 프로젝트에서만 Fuse Online을 업그레이드할 수 있습니다(예: fuse-online-project ).

      bash install_ocp.sh --grant developer

  2. Fuse Online 업그레이드 권한이 부여된 사용자는 업그레이드를 수행합니다.

    1. OpenShift에 로그인합니다. 예를 들면 다음과 같습니다.

      oc login -u developer

    2. Fuse Online을 업그레이드하려는 프로젝트로 전환합니다. 예를 들면 다음과 같습니다.

      oc project fuse-online-project

    3. 업그레이드할 버전을 확인하려면 다음과 같이 --version 옵션을 사용하여 업데이트 스크립트를 실행합니다.

      bash update_ocp.sh --version

    4. 다음과 같이 업데이트 스크립트를 호출합니다.

      bash update_ocp.sh

      스크립트에 대해 자세히 알아보려면 bash update_ocp.sh --help 를 호출합니다.

      인프라 업그레이드 중 및 이후에 기존 통합은 이전 버전의 Fuse Online 라이브러리 및 종속 항목을 계속 실행합니다.

  3. 다음과 같이 실행 중인 Fuse Online 통합 업그레이드:

    1. Fuse Online에서 업그레이드할 통합을 선택합니다.
    2. 편집을 선택합니다.
    3. 게시 를 선택하여 통합을 다시 게시합니다.

    통합을 다시 게시하면 최신 Fuse Online 종속성을 사용하는 다시 빌드가 수행됩니다.

3.5. OCP 프로젝트에서 Fuse Online 설치 제거

프로젝트를 삭제하지 않고 OCP 프로젝트에서 Fuse Online을 제거할 수 있으며 해당 프로젝트의 다른 항목은 삭제할 수 있습니다. Fuse Online을 제거한 후 실행 중인 통합은 계속 실행되지만 더 이상 편집하거나 다시 게시할 수 없습니다.

사전 요구 사항

  • Fuse Online이 설치된 OCP 프로젝트가 있습니다.
  • Fuse Online이 설치된 다른 OpenShift 프로젝트에서 사용할 모든 통합을 내보냈습니다. 필요한 경우 통합 내보내기 를 참조하십시오.

절차

  1. Fuse Online을 설치할 수 있는 권한이 있는 계정으로 OpenShift에 로그인합니다. 예를 들면 다음과 같습니다.

    oc login -u developer -p developer

  2. 제거하려는 Fuse Online 환경을 실행 중인 OpenShift 프로젝트로 전환합니다. 예를 들면 다음과 같습니다.

    oc project my-fuse-online-project

  3. Fuse Online 인프라 삭제:

    oc delete syndesis 앱

  4. syndesis-operator DeploymentConfigImageStream 리소스를 삭제합니다.

    oc delete dc/syndesis-operator
    oc delete is/syndesis-operator

3.6. Fuse Online이 포함된 OCP 프로젝트 삭제

Fuse Online이 설치된 OpenShift 프로젝트를 삭제하면 프로젝트의 모든 항목이 삭제됩니다. 여기에는 실행된 모든 통합뿐만 아니라 정의된 모든 통합이 포함됩니다.

사전 요구 사항

  • Fuse Online이 설치된 OCP 프로젝트가 있습니다.
  • Fuse Online이 설치된 다른 OpenShift 프로젝트에서 사용할 모든 통합을 내보냈습니다. 필요한 경우 통합 내보내기를 참조하십시오.

절차

oc delete project 명령을 호출합니다. 예를 들어 이름이 fuse-online-project 인 OpenShift 프로젝트를 삭제하려면 다음 명령을 입력합니다.

oc delete project fuse-online-project

4장. Fuse Online 공용 REST API 엔드포인트를 호출하는 방법

OCP에서 Fuse Online을 실행하는 경우 각 Fuse Online 환경에서 퍼블릭 REST API 엔드포인트를 노출할 수 있습니다. CI/CD(외부 지속적 통합/지속적 제공) 툴은 이러한 엔드포인트를 호출하여 Fuse Online 환경에 있는 리소스에서 작동할 수 있습니다.

각 Fuse Online 환경에서 OpenShift 관리자는 외부 툴에서 해당 엔드포인트를 호출하기 전에 Fuse Online 공용 REST API 엔드포인트를 노출해야 합니다. API 엔드포인트를 호출하는 명령은 엔드포인트가 작동하는 Fuse Online 환경의 URL, 시크릿 토큰 및 권한 부여 토큰을 지정합니다.

자세한 내용은 다음 항목을 참조하십시오.

4.1. 외부 툴에서 사용할 Fuse Online 공용 REST API 노출

사이트에서 Fuse Online을 실행하는 경우 외부 툴을 사용하여 Fuse Online 환경에서 다른 Fuse Online 환경으로 Fuse Online 통합을 복사할 수 있습니다. 외부 CI/CD 툴은 Jenkins 작업, Ansible 플레이북, cron- 기반 쉘 스크립트 또는 기타 작업일 수 있습니다. 예를 들어 Ansible Playbook은 Fuse Online 개발 환경에서 통합을 내보내 Fuse Online 테스트 환경으로 가져올 수 있습니다.

이 기능을 사용하려면 각 Fuse Online 환경에 대해 Fuse Online 공용 REST API 엔드포인트를 공개해야 합니다. 즉, Fuse Online이 설치된 각 OpenShift 프로젝트에서 이 절차를 반복해야 합니다.

사전 요구 사항

  • Fuse Online이 설치된 OCP 프로젝트가 있습니다.
  • oc 클라이언트 툴이 설치되고 Fuse Online이 설치된 OCP 클러스터에 연결됩니다.
  • 외부 CI/CD 툴을 사용하며 하나의 Fuse Online 환경에서 다른 Fuse Online 환경으로 마크된 통합을 복사하려고 합니다.
  • syndesis-operator grant 명령을 실행하려면 클러스터 관리 권한이 필요합니다. 클러스터 관리 권한이 없지만 OpenShift 프로젝트에 대한 관리 권한이 있는 사용자는 다른 명령을 실행할 수 있습니다.

절차

  1. 클러스터 관리 권한이 있는 계정으로 OpenShift에 로그인합니다. 예를 들면 다음과 같습니다.

    oc login -u admin -p admin

    이 절차에서는 syndesis-operator grant 명령에만 클러스터 관리 권한이 필요하지만 클러스터 관리자가 모든 단계를 수행하는 것으로 가정합니다.

  2. Fuse Online이 실행 중인 OpenShift 프로젝트로 전환합니다. 이 프로젝트에서만 공용 API를 노출하고 있습니다. 예를 들면 다음과 같습니다.

    oc project fuse-online-north

  3. syndesis-public-oauthproxy 서비스 계정에 역할을 부여합니다. OpenShift 프로젝트에서는 이 서비스 계정을 사용하여 OAuth 프록시 서비스를 실행합니다. 클러스터 관리 권한이 있는 사용자 계정을 지정합니다. 예를 들면 다음과 같습니다.

    syndesis-operator grant --user developer

    이 명령은 클러스터 역할 및 클러스터 역할 바인딩을 syndesis-public-oauthproxy 서비스 계정에 생성하고 할당합니다. ClusterRoleBinding 은 이 예에서 fuse-online-north 인 API를 노출하는 OpenShift 프로젝트의 이름을 지정합니다.

    • ClusterRole:syndesis-auth-delegator
    • ClusterRoleBinding:syndesis-fuse-online-north-auth-delegator
  4. 클라이언트 서비스 계정을 생성하고 Fuse Online 공용 API에 액세스할 수 있는 권한을 부여합니다.

    1. 원하는 이름으로 OpenShift 서비스 계정을 생성합니다. 예를 들어 다음 명령은 cicd-client 서비스 계정을 생성합니다.

      oc create serviceaccount cicd-client

      공용 API 엔드포인트를 호출하는 명령은 이 계정을 사용하여 공용 API에 액세스합니다. 또한 API 엔드포인트에 대한 호출에 지정해야 하는 시크릿 토큰을 얻으려면 이 서비스 계정이 필요합니다. 이는 REST API 엔드포인트를 호출하기 위한 시크릿 토큰을 가져오는 데 사용됩니다.

    2. 클라이언트 서비스 계정에 Fuse Online 공용 API에 액세스할 수 있는 권한을 부여합니다. fuse-online-north 가 Fuse Online이 설치된 OpenShift 프로젝트의 이름이며 cicd-client 가 API 서비스 액세스를 위해 생성한 서비스 계정의 이름이면 다음 명령을 호출합니다.

      $ oc policy add-role-to-user edit system:serviceaccount:fuse-online-north:cicd-client`
  5. syndesis 사용자 정의 리소스를 편집합니다.

    1. 일반적으로 편집기에서 리소스를 여는 다음 명령을 호출합니다.

      oc edit syndesis

    2. 공용 API를 사용하도록 리소스를 편집하고 routeHostname 의 설정으로 엔드포인트를 호출하는 Fuse Online 환경의 공용 주소를 지정합니다. ( Fuse Online을 설치하는 데 사용된 default-cr.yml 파일을 편집하고 공용 API를 활성화하고 엔드포인트의 경로 호스트 이름을 지정한 경우 리소스를 편집할 필요가 없습니다.)

      클러스터 설정에 따라 지정해야 하는 공용 주소가 결정됩니다. 자세한 내용은 경로의 OpenShift 설명서에 있습니다. 다음 예에서 경로 호스트 이름은 Minishift 클러스터에 유효합니다.

      spec:
        addons:
          publicApi:
            enabled: true
            routeHostname: public-syndesis.192.168.64.63.nip.io
    3. 리소스를 저장(또는 닫기)합니다.

      syndesis 사용자 정의 리소스 트리거를 저장하면 Fuse Online 설치를 담당하는 syndesis-operator 가 공용 API OAuth 프록시 서비스를 배포합니다.

      syndesis 사용자 정의 리소스를 편집할 필요가 없는 경우 공용 API OAuth 프록시 서비스가 이미 배포되었습니다. 이는 publicApi 가 활성화되고 Fuse Online을 설치하는 데 사용된 default-cr.yml 파일에 지정된 경로가 있기 때문일 수 있습니다.

결과

OpenShift에서 다음을 확인할 수 있습니다.

  • syndesis-public-oauthproxy 배포 구성을 위한 Pod입니다.
  • syndesis-public-oauthproxy 서비스입니다.
  • syndesis-public-api 경로입니다.

이 절차를 수행한 OpenShift 프로젝트에서 외부 CI/CD 툴에서는 Fuse Online 공용 REST API 엔드포인트를 사용하여 Fuse Online 통합을 내보내거나 가져올 수 있습니다.

다음 단계

4.2. Fuse Online 공용 REST API 엔드 포인트의 기본 URL 설명

Fuse Online 공용 REST API 엔드포인트의 기본 URL은 다음과 같습니다.

https://public-syndesis.192.168.64.42.nip.io/api/v1/public

기본 URL의 첫 번째 부분은 Fuse Online 환경에 따라 다릅니다. 공용 REST API 엔드포인트에 액세스할 수 있는 Fuse Online 공용 OAuth 프록시를 실행하는 OpenShift 애플리케이션을 생성하면 Fuse Online 환경의 공용 주소를 지정합니다. 이 주소는 해당 Fuse Online 환경에서 작동하는 엔드포인트를 호출하는 기본 URL의 첫 번째 부분입니다. 예를 들면 다음과 같습니다.

https://public-syndesis.192.168.64.42.nip.io

기본 URL의 두 번째 부분은 모든 Fuse Online 환경에서 동일합니다.

/api/v1/public

Fuse Online 공용 REST API는 세 가지 리소스에서 작동하는 끝점을 제공합니다.

  • /integrations 는 기본 URL에서 식별되는 Fuse Online 환경에 있는 통합입니다.
  • /connections 는 기본 URL에서 식별되는 Fuse Online 환경에 있는 연결입니다.
  • /environments 는 기본 URL에서 식별되는 Fuse Online 환경에 있는 환경 레이블 세트입니다.

4.3. 공용 REST API 끝점 호출을 위한 시크릿 토큰 가져오기

Fuse Online 공용 REST API 엔드포인트를 호출하는 명령은 시크릿 토큰을 지정해야 합니다. 이 토큰은 지정된 Fuse Online 환경에서 Fuse Online 공용 REST API를 노출할 때 생성한 서비스 계정을 위한 토큰입니다.

사전 요구 사항

  • OCP 온-사이트에서 Fuse Online을 실행하고 있습니다.
  • 엔드포인트를 호출하려는 Fuse Online 환경에서 제공하는 공용 REST API를 노출했습니다.

절차

  1. 이 Fuse Online 환경의 공용 REST API를 노출할 때 생성한 서비스 계정에 대한 시크릿 토큰의 이름을 가져옵니다. 예를 들어 cicd-client 가 서비스 계정의 이름인 경우 다음 명령을 호출합니다.

    oc describe serviceaccount cicd-client

    그러면 다음 두 토큰의 이름을 포함하여 cicd-client 서비스 계정에 대한 정보 목록이 표시됩니다.

    Tokens:      cicd-client-token-gxb25
                 cicd-client-token-gxdnv
  2. 토큰 중 하나의 콘텐츠를 표시합니다. 예를 들면 다음과 같습니다.

    oc describe secret cicd-client-token-gxb25

    그러면 토큰을 표시하는 데이터 섹션이 포함된 정보 목록이 표시되고 그 뒤에 긴 임의 문자가 표시됩니다. 이는 서비스 계정의 두 가지 시크릿 토큰 중 하나입니다.

  3. 시크릿 토큰을 복사하여 파일에 붙여넣어 저장합니다.

결과

curl 명령에서 시크릿 토큰의 사양은 다음과 같습니다.

-H 'Authorization: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6IiJ9.eyJpc3MiOiJrdWJlcm5ldGVzL3NlcnZpY2VhY2NvdW50Iiwia3ViZXJuZXRlcy5pby9zZXJ2aWNlYWNjb3VudC9uYW1lc3BhY2UiOiJzeW5kZXNpcyIsImt1YmVybmV0ZXMuaW8vc2VydmljZWFjY291bnQvc2VjcmV0Lm5hbWUiOiJzeW5kZXNpcy1jZC1jbGllbnQtdG9rZW4tMnZjNmwiLCJrdWJlcm5ldGVzLmlvL3NlcnZpY2VhY2NvdW50L3NlcnZpY2UtYWNjb3VudC5uYW1lIjoic3luZGVzaXMtY2QtY2xpZW50Iiwia3ViZXJuZXRlcy5pby9zZXJ2aWNlYWNjb3VudC9zZXJ2aWNlLWFjY291bnQudWlkIjoiNjUxMjYxNGMtMmYwMS0xMWU5LTk3OWEtNDI1YWNlMzY3MTcyIiwic3ViIjoic3lzdGVtOnNlcnZpY2VhY2NvdW50OnN5bmRlc2lzOnN5bmRlc2lzLWNkLWNsaWVudCJ9.uKsri0JSKJDbgHoQwAhBJSNuWKwJgjegf2QlrCkhxVssSK1zIMZQaF9P5a4R7ZcWRnrZ_345UTqxYVeRlfHWVH0PqBkD-n7PAS9dcKJIFdS1jUHOmL1FTGgc3YW-bz1SlWT93tvK1EhorZ4_-EBfXhSAP4Uumi5qAg3_QUTMDstq233NSwBKYtFOw3Pp1ys3p3y0hcaiLMimeCH60vR4iWvptqqzc5QDigHiPySZNWxs_5awZlwdoIDvR-nSj690aC-49UKFgyEEdzdFU4bI2W4hOyDyhN9fVaIAZQKeJUrJBU-lnFTHI_NAd2OwzOEBpWZuj31Za5w9fU4kf4UDGA'

다음 단계

저장된 파일에서 토큰을 지정된 Fuse Online 환경에서 공용 REST API 엔드포인트를 호출하는 명령으로 복사합니다.

4.4. 통합 ID 찾기 방법

특정 통합에서만 작동하는 Fuse Online 공용 REST API 엔드포인트를 호출하는 명령에서 끝점이 작동하도록 통합 ID를 지정해야 합니다. 다음 중 하나를 지정합니다.

  • 통합의 이름

    Fuse Online 콘솔에 표시되는 대로 정확하게 지정해야 합니다(예: timer-to-log ). 통합 이름에 공백 또는 특수 문자가 있는 경우 HTML 이스케이프 문자를 지정해야 합니다.

  • 내부 통합 ID

    통합 요약을 보면 이 ID는 Fuse Online 콘솔 URL에 있습니다. 통합 요약을 보려면 왼쪽 탐색 패널에서 통합을 클릭합니다. 통합 목록에서 필요한 ID가 있는 통합 항목을 클릭합니다.

    브라우저에 통합 요약이 표시되면 URL 끝에 다음과 같은 내용이 표시됩니다. /integrations/i-Lauq5ShznJ4LcuWwiwcz. 이 통합 ID는 i-Lauq5ShznJ4LcuWwiwcz 입니다.

4.5. Fuse Online 공용 엔드포인트를 호출할 curl 명령을 지정하는 형식

Fuse Online 공용 REST API 엔드포인트를 호출하는 curl 명령의 형식은 다음과 같습니다.

curl [options] \
     -H "Content-Type: <media-type>" \
     -H "SYNDESIS-XSRF-TOKEN: awesome" \
     -H `Authorization: Bearer <token>` \
     <base-url><endpoint> \
     [--request <HTTP-method>] \
     [-d <data>] \
     [-o <filename>]
Expand

[options]

선택한 curl 옵션을 지정합니다.

<media-type>

내보내기 및 가져오기 끝점의 경우 multipart/form-data 를 지정합니다. 기타 모든 끝점의 경우 application/json 을 지정합니다.

<token>

공용 REST API를 노출할 때 생성한 OpenShift 서비스 계정에 대한 시크릿 토큰을 지정합니다.

<base-url>

엔드포인트가 작동하도록 하는 통합, 연결 또는 환경 레이블이 있는 Fuse Online 환경의 기본 URL을 지정합니다.

<endpoint>

호출할 끝점을 지정합니다.

[--request <HTTP-method>]

선택적으로 HTTP 메서드를 지정합니다(예: --request POST ).

[-d <data>]

호출 중인 끝점에 따라 끝점에 필요한 인수를 지정합니다. 예를 들어 테스트하도록 통합의 환경 레이블을 변경하려면 -d ' test '를 지정합니다.

[-o <filename>]

선택적으로 출력이 포함된 파일의 이름을 지정해야 하는 경우 파일 이름으로 -o curl 옵션을 지정합니다(예: -o export.zip ).

다음 curl 명령은 지정한 하나 이상의 환경에 대한 통합을 표시하는 Fuse Online 공용 API 엔드포인트를 호출합니다.

curl -v -k -L -H "Content-Type: application/json" -H "SYNDESIS-XSRF-TOKEN: awesome" -H 'Authorization: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6IiJ9.eyJpc3MiOiJrdWJlcm5ldGVzL3NlcnZpY2VhY2NvdW50Iiwia3ViZXJuZXRlcy5pby9zZXJ2aWNlYWNjb3VudC9uYW1lc3BhY2UiOiJzeW5kZXNpcyIsImt1YmVybmV0ZXMuaW8vc2VydmljZWFjY291bnQvc2VjcmV0Lm5hbWUiOiJzeW5kZXNpcy1jZC1jbGllbnQtdG9rZW4tMnZjNmwiLCJrdWJlcm5ldGVzLmlvL3NlcnZpY2VhY2NvdW50L3NlcnZpY2UtYWNjb3VudC5uYW1lIjoic3luZGVzaXMtY2QtY2xpZW50Iiwia3ViZXJuZXRlcy5pby9zZXJ2aWNlYWNjb3VudC9zZXJ2aWNlLWFjY291bnQudWlkIjoiNjUxMjYxNGMtMmYwMS0xMWU5LTk3OWEtNDI1YWNlMzY3MTcyIiwic3ViIjoic3lzdGVtOnNlcnZpY2VhY2NvdW50OnN5bmRlc2lzOnN5bmRlc2lzLWNkLWNsaWVudCJ9.uKsri0JSKJDbgHoQwAhBJSNuWKwJgjegf2QlrCkhxVssSK1zIMZQaF9P5a4R7ZcWRnrZ_345UTqxYVeRlfHWVH0PqBkD-n7PAS9dcKJIFdS1jUHOmL1FTGgc3YW-bz1SlWT93tvK1EhorZ4_-EBfXhSAP4Uumi5qAg3_QUTMDstq233NSwBKYtFOw3Pp1ys3p3y0hcaiLMimeCH60vR4iWvptqqzc5QDigHiPySZNWxs_5awZlwdoIDvR-nSj690aC-49UKFgyEEdzdFU4bI2W4hOyDyhN9fVaIAZQKeJUrJBU-lnFTHI_NAd2OwzOEBpWZuj31Za5w9fU4kf4UDGA'
https://public-syndesis.192.168.64.42.nip.io/api/v1/public/integrations/timer-to-log/tags -d '["test","staging"]' --request PUT

샘플 curl 명령에서 다음을 수행합니다.

  • 명령 끝에 있는 URL은 호출 중인 엔드포인트가 있는 Fuse Online 환경을 식별합니다.
  • timer-to-log 는 지정된 환경에 대한 timer-to-log 통합을 표시 중임을 나타냅니다.
  • 테스트스테이징 의 사양은 해당 환경의 타이머에서 로그 간 통합을 표시합니다.

OCP 사이트에서 Fuse Online을 실행하는 경우 특정 통합에서 작업하려는 CI/CD(Continuous Integration/Continuous Deployment) 파이프라인이 있을 수 있습니다. 이를 구현하려면 다음 작업을 완료해야 합니다.

  • Fuse Online 콘솔에서 CI/CD 파이프라인에 대한 통합을 표시합니다.
  • OpenShift에서 Fuse Online 공용 API를 노출 합니다.
  • 외부 툴을 사용하여 통합을 내보내고 가져오는 Fuse Online 공용 API 엔드포인트를 호출합니다.

자세한 내용은 다음 항목을 참조하십시오.

5.1. CI/CD 통합 정보

사이트에서 OCP Online을 실행하는 경우 파이프라인 통합을 식별하기 위해 지정한 CI/CD 환경에 대한 통합을 표시합니다. 이렇게 하면 타임스탬프가 통합에 적용됩니다. 백엔드 CI/CD Fuse Online 공용 API는 레이블과 타임스탬프를 사용하여 파이프라인이 작동하는 통합을 찾기 위해 통합을 필터링합니다.

예를 들어 Fuse Online에서는 test1 환경에 대한 통합을 표시한다고 가정합니다. 그런 다음 Fuse Online 공용 API 내보내기 엔드포인트를 호출하여 test1 환경 레이블이 있는 통합을 내보낼 수 있습니다. 엔드포인트 패키지 test1 은 내보내기 파일에 통합되고 해당 파일을 반환합니다. test1 통합을 Fuse Online 테스트 환경으로 복사하려면 공개 API 가져오기 엔드포인트를 호출하고 내보낸 test1 통합 파일이 포함된 파일을 제공합니다.

이제 이전에 test1 환경에 표시된 통합을 반복적으로 업데이트하고 게시한다고 가정합니다. 이제 통합의 새 버전이 있으며 업데이트된 버전을 test1 환경으로 내보내려고 합니다. 이미 test1 환경에 표시된 경우에도 통합을 다시 표시해야 합니다. 통합을 다시 표시하면 test1 환경 레이블의 타임스탬프가 업데이트됩니다. 이는 통합이 업데이트되었으며 내보낼 준비가 되었음을 외부 툴에 나타냅니다.

즉, 통합에 이미 할당된 환경 레이블의 타임스탬프를 새로 고치려면 CI/CD 에 대한 통합 표시를 시작하는 절차를 시작합니다. CI/CD 대화 상자에서 원하는 환경의 확인란이 이미 선택되어 있으므로 저장을 클릭합니다.

5.2. CI/CD 통합 표시

사이트에서 OCP Online을 실행하는 경우 파이프라인 통합을 식별하기 위해 지정한 CI/CD 환경에 대한 통합을 표시합니다. 이렇게 하면 통합에 레이블이 적용됩니다.

사전 요구 사항

Fuse Online이 설치된 OCP 프로젝트가 있습니다.

절차

  1. 왼쪽의 Fuse Online 탐색 패널에서 통합을 클릭합니다.
  2. 통합 목록에서 표시할 통합 항목 오른쪽에 있는 Kebab 를 클릭하여 팝업 메뉴를 표시하고 CI/CD 관리를 클릭합니다.
  3. 표시되는 대화 상자에서 다음 중 하나 이상을 수행합니다.

    • 이 통합을 표시할 환경이 이미 표시되면 해당 환경 왼쪽에 있는 확인란을 선택합니다.
    • 이 통합을 표시할 환경이 이미 선택되어 있으면 선택한 상태로 둡니다.
    • 환경의 레이블을 생성해야 하는 경우 CI/CD 관리를 클릭하면 새 환경 레이블을 생성하기 위한 대화 상자가 표시됩니다. 필요한 레이블을 생성한 다음 이 절차로 돌아가 통합을 표시합니다.

    Fuse Online은 선택한 환경 레이블을 통합에 적용합니다. 통합에 원하는 수의 환경 레이블을 적용할 수 있습니다.

  4. 저장을 클릭합니다.

결과

Fuse Online은 선택한 환경의 릴리스 통합에 레이블을 지정합니다. 백엔드 API는 통합을 필터링하여 (예: test1 레이블)가 있는 통합을 찾을 수 있습니다.

다음 단계

파이프라인이 특정 환경에 표시된 통합 작업을 수행하기 전에 Fuse Online 공용 API 끝점을 공개해야 합니다. 외부 툴에서 사용할 수 있는 Fuse Online 공용 REST API 사용을 참조하십시오.

5.3. CI/CD의 환경 레이블 관리

Fuse Online 콘솔에서 CI/CD 환경 레이블을 생성, 변경 또는 제거할 수 있습니다. CI/CD 환경 레이블은 통합에 적용하여 CI/CD 파이프라인에 대해 식별할 수 있는 태그입니다.

사전 요구 사항

  • Fuse Online은 OCP 현장에서 실행되고 있습니다.
  • 외부 툴은 Fuse Online 환경 레이블을 사용하여 CI/CD 파이프라인의 통합을 식별합니다.

절차

  1. Fuse Online의 왼쪽 탐색 패널에서 통합을 클릭합니다.
  2. 오른쪽 상단에서 CI/CD 관리를 클릭합니다.
  3. CI/CD 관리 페이지에서 다음을 수행합니다.

    • CI/CD 환경 레이블을 생성하려면 다음을 수행합니다.

      1. 새 추가를 클릭합니다.
      2. 태그 이름 추가 대화 상자의 Tag Name 입력 필드에 새 환경 레이블의 이름을 입력합니다(예: test1 ).
      3. 저장을 클릭합니다. CI/CD 관리 페이지에는 방금 추가한 환경 레이블의 새 항목이 있습니다.
    • CI/CD 환경 레이블을 변경하려면 다음을 수행합니다.

      1. CI/CD 환경 레이블 목록에서 변경하려는 라벨의 항목에서 편집 을 클릭합니다.
      2. Edit Tag (태그 편집) 대화 상자에서 필요에 따라 이름을 변경합니다.
      3. 저장을 클릭하여 환경 레이블 목록에서 업데이트된 이름을 확인합니다. Fuse Online은 변경된 환경 레이블로 이미 표시된 모든 통합에 업데이트된 이름을 적용합니다.
    • CI/CD 환경 레이블을 삭제하려면 다음을 수행합니다.

      1. CI/CD 환경 레이블 목록에서 삭제하려는 라벨 항목의 제거를 클릭합니다.
      2. 확인 대화 상자에서 예를 클릭합니다. Fuse Online은 환경 레이블을 삭제하고 해당 레이블로 표시된 통합에서 삭제된 환경 레이블도 제거합니다.

다음 단계

새 환경 레이블과의 통합을 표시합니다. CI/CD에 대한 통합 표시를 참조하십시오.

5.4. Fuse Online 공용 API 내보내기 끝점 호출

외부 도구를 사용하여 Fuse Online 환경에서 다른 Fuse Online 환경으로 Fuse Online 통합을 복사하려면 먼저 다음 작업을 완료해야 합니다.

  • Fuse Online에서는 CI/CD 파이프라인을 위해 내보내려는 통합이 특정 환경에 맞게 표시되어야 합니다. CI/CD에 대한 통합 표시를 참조하십시오.

    이 요구 사항에는 예외가 있습니다. 하나의 내보내기 작업으로 Fuse Online 환경의 모든 통합을 내보내려는 경우 통합이 특정 환경에 대해 이미 표시되어 있는지 여부는 중요하지 않습니다.

  • Fuse Online 공용 API를 노출했습니다. 외부 툴은 Fuse Online 공용 API 끝점 사용을 참조하십시오.

특정 환경의 통합 내보내기를 위한 끝점

특정 환경에 대해 표시된 통합을 내보내기 위해 Fuse Online에서는 다음과 같은 GET 메서드 엔드포인트를 제공합니다.

/public​/integrations​/{env}​/export.zip

{env} 를 이미 생성한 CI/CD 환경 레이블로 교체합니다. 특정 환경에 대한 통합이 표시되면 Fuse Online에서 표시 시기를 나타내는 타임스탬프를 유지 관리합니다. 엔드포인트는 이미 내보낸 경우에만 통합을 내보냅니다. 예를 들어 test1 환경에 표시된 통합을 내보내려면 끝점은 다음과 같습니다.

/public/integrations/test1/export.zip

이 엔드포인트는 test1 환경 레이블이 있고 test1 환경에 대해 마지막으로 내보낸 이후 각 통합을 내보냅니다. 엔드포인트는 export.zip 파일에 통합을 패키지하고 해당 파일을 반환합니다.

통합이 마지막으로 내보낸 후 지정된 환경에 대해 표시된 통합이 없는 경우 끝점은 HTTP 204 응답을 반환하지 않음을 나타냅니다.

모든 통합을 내보내기 위한 끝점

내보내기 엔드포인트를 호출하여 하나의 Fuse Online 환경에서 모든 통합을 내보낼 수 있습니다. 따라서 다른 Fuse Online 환경에서 모든 통합을 쉽게 복제할 수 있습니다. 이렇게 하려면 다음을 수행합니다.

  • 환경 레이블이 이미 생성되어 있어야 합니다. CI/CD에 대한 통합 표시를 참조하십시오.
  • all=true 옵션을 내보내기 엔드포인트 호출에 추가합니다.

예를 들면 다음과 같습니다.

/public/integrations/{env}/export.zip?all=true

{env} 를 CI/CD 환경 레이블로 교체합니다. 엔드포인트는 해당 환경에 아직 표시되지 않은 각 통합에 지정된 환경 레이블을 할당합니다.

all=true 옵션을 추가할 때 내보낸 통합을 export.zip 파일에 패키징하도록 명시적으로 지정해야 합니다. 예를 들면 다음과 같습니다.

/public/integrations/test1/export.zip?all=true -o export.zip

이 끝점 호출:

  • test1 환경에 대한 각 통합을 표시합니다.
  • export.zip 파일의 모든 통합을 반환합니다.

    -o export.zip 옵션을 지정하지 않으면 엔드포인트에서 이름이 export.zip?all=true 인 파일을 반환합니다.

내보내기 끝점에 필요한 사용자 정의 헤더

내보내기 끝점을 호출하는 명령은 다음과 같은 사용자 지정 헤더를 지정해야 합니다.

  • -h "Content-Type: multipart/form-data"
  • -h "SYNDESIS-XSRF-TOKEN: SYNDESIS-XSRF-TOKEN"

    이 사용자 지정 헤더는 위에 표시된 대로 정확하게 지정해야 합니다. Fuse Online 공용 API를 사용하려면 이 헤더가 요청을 인증해야 합니다.

  • -h 'Authorization: Bearer <token>'

    & lt;token >을 Fuse Online 공용 API를 노출하는 데 사용되는 OpenShift 서비스 계정을 생성할 때 파일에 복사한 시크릿 토큰으로 바꿉니다.

통합을 내보내는 샘플 curl 명령

다음은 통합을 내보내는 Fuse Online API 엔드포인트를 호출하는 curl 명령의 예입니다.

curl -v -k -L -H "Content-Type: multipart/form-data" -H "SYNDESIS-XSRF-TOKEN: awesome" -H 'Authorization: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6IiJ9.eyJpc3MiOiJrdWJlcm5ldGVzL3NlcnZpY2VhY2NvdW50Iiwia3ViZXJuZXRlcy5pby9zZXJ2aWNlYWNjb3VudC9uYW1lc3BhY2UiOiJzeW5kZXNpcyIsImt1YmVybmV0ZXMuaW8vc2VydmljZWFjY291bnQvc2VjcmV0Lm5hbWUiOiJzeW5kZXNpcy1jZC1jbGllbnQtdG9rZW4tMnZjNmwiLCJrdWJlcm5ldGVzLmlvL3NlcnZpY2VhY2NvdW50L3NlcnZpY2UtYWNjb3VudC5uYW1lIjoic3luZGVzaXMtY2QtY2xpZW50Iiwia3ViZXJuZXRlcy5pby9zZXJ2aWNlYWNjb3VudC9zZXJ2aWNlLWFjY291bnQudWlkIjoiNjUxMjYxNGMtMmYwMS0xMWU5LTk3OWEtNDI1YWNlMzY3MTcyIiwic3ViIjoic3lzdGVtOnNlcnZpY2VhY2NvdW50OnN5bmRlc2lzOnN5bmRlc2lzLWNkLWNsaWVudCJ9.uKsri0JSKJDbgHoQwAhBJSNuWKwJgjegf2QlrCkhxVssSK1zIMZQaF9P5a4R7ZcWRnrZ_345UTqxYVeRlfHWVH0PqBkD-n7PAS9dcKJIFdS1jUHOmL1FTGgc3YW-bz1SlWT93tvK1EhorZ4_-EBfXhSAP4Uumi5qAg3_QUTMDstq233NSwBKYtFOw3Pp1ys3p3y0hcaiLMimeCH60vR4iWvptqqzc5QDigHiPySZNWxs_5awZlwdoIDvR-nSj690aC-49UKFgyEEdzdFU4bI2W4hOyDyhN9fVaIAZQKeJUrJBU-lnFTHI_NAd2OwzOEBpWZuj31Za5w9fU4kf4UDGA'
https://public-syndesis.192.168.64.42.nip.io/api/v1/public/integrations/dev1/export.zip

명령에서 다음을 수행합니다.

  • 명령 끝에 있는 URL은 통합을 내보낼 Fuse Online 환경을 식별합니다.
  • dev1 환경 레이블의 사양은 dev1 환경에 대해 표시된 통합을 내보내고 표시된 이후 아직 내보내지 않았음을 나타냅니다.

5.5. Fuse Online 공용 API 가져오기 끝점 호출

Fuse Online 공용 API 내보내기 엔드포인트를 호출하여 하나 이상의 통합을 가져올 수 있습니다. 내보낸 통합을 다른 Fuse Online 환경에 복사하려면 Fuse Online 공용 API 가져오기 엔드포인트를 호출합니다.

통합을 가져오기 위한 끝점

통합을 가져오기 위해 Fuse Online에서는 다음과 같은 POST 메서드 끝점을 제공합니다.

​/public​/integrations

다음 예에서 끝점은 export.zip 파일에 있는 통합을 가져와서 테스트 환경에 태그를 지정합니다.

/public/integrations -F data=@export.zip -F environment=testing --request POST

가져오기 끝점은 항상 제공된 통합을 가져옵니다. 즉, 마지막으로 가져온 이후 통합이 변경되지 않았더라도 끝점은 여전히 이를 가져옵니다.

가져오기 끝점에 필요한 사용자 정의 헤더

가져오기 끝점을 호출하는 명령은 다음과 같은 사용자 지정 헤더를 지정해야 합니다.

  • -h "Content-Type: multipart/form-data"
  • -h "SYNDESIS-XSRF-TOKEN: SYNDESIS-XSRF-TOKEN"

    이 사용자 지정 헤더는 위에 표시된 대로 정확하게 지정해야 합니다. Fuse Online 공용 API를 사용하려면 이 헤더가 요청을 인증해야 합니다.

  • -h 'Authorization: Bearer <token>'

    & lt;token >을 Fuse Online 공용 API를 노출하는 데 사용되는 OpenShift 서비스 계정을 생성할 때 파일에 복사한 시크릿 토큰으로 바꿉니다.

통합을 가져오는 샘플 curl 명령

다음은 통합을 가져오는 Fuse Online API 엔드포인트를 호출하는 curl 명령의 예입니다.

curl -v -k -L -H "Content-Type: multipart/form-data" -H "SYNDESIS-XSRF-TOKEN: awesome" -H 'Authorization: Bearer eyJhbGciOiJSUzI1NiIsImtpZCI6IiJ9.eyJpc3MiOiJrdWJlcm5ldGVzL3NlcnZpY2VhY2NvdW50Iiwia3ViZXJuZXRlcy5pby9zZXJ2aWNlYWNjb3VudC9uYW1lc3BhY2UiOiJzeW5kZXNpcyIsImt1YmVybmV0ZXMuaW8vc2VydmljZWFjY291bnQvc2VjcmV0Lm5hbWUiOiJzeW5kZXNpcy1jZC1jbGllbnQtdG9rZW4tMnZjNmwiLCJrdWJlcm5ldGVzLmlvL3NlcnZpY2VhY2NvdW50L3NlcnZpY2UtYWNjb3VudC5uYW1lIjoic3luZGVzaXMtY2QtY2xpZW50Iiwia3ViZXJuZXRlcy5pby9zZXJ2aWNlYWNjb3VudC9zZXJ2aWNlLWFjY291bnQudWlkIjoiNjUxMjYxNGMtMmYwMS0xMWU5LTk3OWEtNDI1YWNlMzY3MTcyIiwic3ViIjoic3lzdGVtOnNlcnZpY2VhY2NvdW50OnN5bmRlc2lzOnN5bmRlc2lzLWNkLWNsaWVudCJ9.uKsri0JSKJDbgHoQwAhBJSNuWKwJgjegf2QlrCkhxVssSK1zIMZQaF9P5a4R7ZcWRnrZ_345UTqxYVeRlfHWVH0PqBkD-n7PAS9dcKJIFdS1jUHOmL1FTGgc3YW-bz1SlWT93tvK1EhorZ4_-EBfXhSAP4Uumi5qAg3_QUTMDstq233NSwBKYtFOw3Pp1ys3p3y0hcaiLMimeCH60vR4iWvptqqzc5QDigHiPySZNWxs_5awZlwdoIDvR-nSj690aC-49UKFgyEEdzdFU4bI2W4hOyDyhN9fVaIAZQKeJUrJBU-lnFTHI_NAd2OwzOEBpWZuj31Za5w9fU4kf4UDGA'
https://public-syndesis.192.168.64.45.nip.io/api/v1/public/integrations -F data=@export.zip -F environment=testing --request POST

이 명령에서는 다음을 수행합니다.

  • 명령 끝에 있는 URL은 통합을 가져올 Fuse Online 환경을 식별합니다.
  • export.zip 파일에는 가져올 통합이 포함되어 있습니다.
  • environment=testing 의 사양으로 인해 끝점에서 테스트 환경에 가져온 각 통합이 표시됩니다.
  • 이 명령은 multipart/form-data 를 생성합니다.

6장. Fuse Online 공용 REST API 엔드포인트 참조

이 섹션에서는 각 Fuse Online 공용 REST API 엔드포인트에 대한 참조 정보를 제공합니다. 자세한 내용은 Fuse Online 공용 REST API 엔드포인트를 호출하는 방법을 참조하십시오.

퍼블릭 REST API 엔드포인트를 정의하는 OpenAPI 문서는 Fuse Online 환경에서 https://<fuse-online-host>/api/v1/openapi.json 에서 사용할 수 있습니다. 그러나 이 문서에서는 tags 오브젝트를 public-api,extensions, integration-support 라는 세 가지 태그로 정의합니다. Fuse Online에 OpenShift 공용 OAuth 프록시 프로세스를 사용하는 경우에만 public-api 태그에 액세스할 수 있습니다. 나머지 두 태그는 무시해야 합니다.

6.1. 통합 상태를 가져오기 위한 끝점

이 끝점은 지정된 통합의 상태를 반환합니다. 상태는 Running,Stopped,Pending 또는 Error 입니다.

방법 및 끝점

GET

/public/integrations/{id}/state

Expand
표 6.1. 매개 변수
이름유형설명

필수 헤더 매개변수

-h "Content-Type: <media-type>"

application/json

끝점에 필요한 미디어 유형입니다.

-h "SYNDESIS-XSRF-TOKEN: SYNDESIS-XSRF-TOKEN"

사용자 지정

인증에 필요합니다.

-h 'Authorization: Bearer <token> '

사용자 지정

Fuse Online 공용 REST API를 노출하는 OpenShift 서비스 계정의 시크릿 토큰입니다. 시크릿 토큰 받기를 참조하십시오.

경로 매개변수

{id}

string

필수 path 매개변수입니다. 가져올 상태를 가진 통합의 이름 또는 내부 ID입니다. 통합 ID를 찾는 방법을 참조하십시오.

요청 예

다음 예에서 끝점은 timer-to-log 통합 상태를 반환합니다.

/public/integrations/timer-to-log/state

생성

application/json

응답 예

{"currentState":"Unpublished","state Details":{"id":"i-Lc0JLrsUFtBJfR_ylfEz:5","integrationId":"i-Lc0JLrsUFtBJfR_ylfEz","deploymentVersion":5,"detailedState":{"ING" "totalSteps":4},"namespace":"syndesis","podName":"i-timer-to-log-5-build","linkType":"LOGS"}}'

6.2. 통합 환경 레이블 목록을 가져오는 끝점

이 엔드포인트는 지정된 통합에 적용된 환경 레이블(태그)을 반환합니다.

방법 및 끝점

GET

/public/integrations/{id}/tags

Expand
표 6.2. 매개 변수
이름유형설명

필수 헤더 매개변수

-h "Content-Type: <media-type>"

application/json

끝점에 필요한 미디어 유형입니다.

-h "SYNDESIS-XSRF-TOKEN: SYNDESIS-XSRF-TOKEN"

사용자 지정

인증에 필요합니다.

-h 'Authorization: Bearer <token> '

사용자 지정

Fuse Online 공용 REST API를 노출하는 OpenShift 서비스 계정의 시크릿 토큰입니다. 시크릿 토큰 받기를 참조하십시오.

경로 매개변수

{id}

string

필수 path 매개변수입니다. 가져올 환경 레이블이 있는 통합의 이름 또는 내부 ID입니다. 통합 ID를 찾는 방법.

요청 예

다음 예에서 끝점은 timer-to-log 통합의 환경 레이블을 반환합니다.

/public/integrations/timer-to-log/tags

생성

application/json

응답 예

{"test":{"name":"releaseTag":"i-Lc5WI16UFtBJfilggz","lastTaggedAt1554887553159,"lastExportedAt1554887330152""lastImportedAt1554887330152,"lastImportedAt155488733015},"staging":15548047271},"staging": "staging":{"

6.3. 통합 표시 및 지정되지 않은 태그 유지를 위한 끝점

이 엔드포인트는 PATCH 메서드를 사용하여 지정된 환경에 대해 지정된 통합을 표시합니다. 통합이 지정된 환경에 이미 표시된 경우 끝점은 해당 환경 레이블의 타임 스탬프를 업데이트합니다. 이전에 새 요청에 지정되지 않은 환경에 대한 통합이 표시된 경우 끝점은 해당 태그를 그대로 두고 타임스탬프를 업데이트하지 않습니다.

PATCH 엔드포인트는 다른 기존 태그 없이 태그를 추가하므로 CI/CD 툴의 편의를 위한 방법입니다. 이는 지정된 환경의 통합을 표시하고 요청에 지정되지 않은 환경의 태그를 제거하는 PUT 엔드포인트와 다릅니다.

방법 및 끝점

PATCH

/public/integrations/{id}/tags

Expand
표 6.3. 매개 변수
이름유형설명

필수 헤더 매개변수

-h "Content-Type: <media-type>"

application/json

끝점에 필요한 미디어 유형입니다.

-h "SYNDESIS-XSRF-TOKEN: SYNDESIS-XSRF-TOKEN"

사용자 지정

인증에 필요합니다.

-h 'Authorization: Bearer <token> '

사용자 지정

Fuse Online 공용 REST API를 노출하는 OpenShift 서비스 계정의 시크릿 토큰입니다. 시크릿 토큰 받기를 참조하십시오.

경로 매개변수

{id}

string

필수 항목입니다. 지정된 환경에 표시할 통합의 이름 또는 내부 ID입니다. 통합 ID를 찾는 방법을 참조하십시오.

추가 매개변수

--request PATCH

 

PATCH 방법을 지정합니다.

-d [env{,…​}]

string

필수 항목입니다. 지정된 통합에 추가할 하나 이상의 쉼표로 구분된 환경 레이블을 지정합니다. 환경 레이블을 이미 생성해야 합니다. 끝점에서 레이블을 생성할 수 없습니다. CI/CD의 통합 표시를 참조하십시오.

요청 예

다음 예에서 엔드포인트는 test2test3 환경의 timer-to-log 통합을 표시합니다.

public/integrations/timer-to-log/tags --request PATCH -d '["test2","test3"]'

생성

application/json

응답 예

{"test2":{"name":"test2","releaseTag":"i-LcXydouUFcXydouUFcXydouUFtBJfR_ylgrz","lastT tag":1555365010746},"test3":{"name":"test3","releaseTag":"i-LcXydouUFtBJfilz","{cXydouUFt "lastImportedAt":15548880471},"staging":{"name":"staging","releaseTag":"i-Lc5WI16UFtBJfz"","lastTaggedAt":1554887553159}}

6.4. 통합 표시 및 지정되지 않은 태그 제거를 위한 끝점

이 엔드포인트는 PUT 메서드를 사용하여 지정된 환경에 대해 지정된 통합을 표시합니다. 이전에 새 요청에 지정되지 않은 환경에 대한 통합이 표시된 경우 끝점은 통합에서 해당 환경 레이블을 제거합니다.

지정되지 않은 환경 레이블을 제거하지 않고 통합을 표시하려면 PATCH 메서드 끝점 을 대신 호출합니다.

방법 및 끝점

PUT

/public/integrations/{id}/tags

Expand
표 6.4. 매개 변수
이름유형설명

필수 헤더 매개변수

-h "Content-Type: <media-type>"

application/json

끝점에 필요한 미디어 유형입니다.

-h "SYNDESIS-XSRF-TOKEN: SYNDESIS-XSRF-TOKEN"

사용자 지정

인증에 필요합니다.

-h 'Authorization: Bearer <token> '

사용자 지정

Fuse Online 공용 REST API를 노출하는 OpenShift 서비스 계정의 시크릿 토큰입니다. 시크릿 토큰 받기를 참조하십시오.

경로 매개변수

{id}

string

필수 항목입니다. 표시할 통합의 이름 또는 내부 ID입니다. 통합 ID를 찾는 방법을 참조하십시오.

추가 매개변수

--request PUT

 

PUT 메서드를 지정합니다.

-d [env{,…​}]

string

필수 항목입니다. 하나 이상의 쉼표로 구분된 환경 레이블을 지정합니다. 엔드포인트는 이러한 환경에 대해 지정된 통합을 표시합니다. 환경 레이블을 이미 생성해야 합니다. 끝점에서 레이블을 생성할 수 없습니다. CI/CD의 통합 표시를 참조하십시오.

요청 예

다음 예에서 엔드포인트는 test2test3 환경의 timer-to-log 통합을 표시합니다. 이전에 다른 환경에 대해 통합이 표시된 경우 엔드포인트는 통합에서 해당 태그를 제거합니다.

public/integrations/timer-to-log/tags --request PUT -d '["test2","test3"]'

생성

application/json

응답 예

{"test2":{"name":"releaseTag":"i-LcXyw7GUFtBJfR_ylgtz","lastTaggedAt1555365085713},"test3":{"name":"test3","releaseTag":"releaseTag":"i-LcXyw7GGUBJfR_ylgtz","lastTaggedAt1555365085713},"test3":{"name":"releaseTag":"i-LcXyw7GftBJftBJf_ylt>

6.5. 통합을 게시하기 위한 끝점

이 엔드포인트는 지정된 통합을 게시합니다. 통합이 이미 실행 중인 경우 엔드포인트에서 통합을 중지하고 다시 게시합니다.

방법 및 끝점

POST

/public/integrations/{id}/deployments

Expand
표 6.5. 매개 변수
이름유형설명

필수 헤더 매개변수

-h "Content-Type: <media-type>"

application/json

끝점에 필요한 미디어 유형입니다.

-h "SYNDESIS-XSRF-TOKEN: SYNDESIS-XSRF-TOKEN"

사용자 지정

인증에 필요합니다.

-h 'Authorization: Bearer <token> '

사용자 지정

Fuse Online 공용 REST API를 노출하는 OpenShift 서비스 계정의 시크릿 토큰입니다. 시크릿 토큰 받기를 참조하십시오.

경로 매개변수

{id}

string

필수 항목입니다. 게시하려는 통합의 이름 또는 내부 ID입니다. 통합 ID를 찾는 방법을 참조하십시오.

요청 예

다음 예에서 끝점은 timer-to-log 통합을 게시합니다.

/public/integrations/timer-to-log/deployments

생성

application/json

응답 예

이 예제에서is는 응답 중 일부의 누락을 나타냅니다.

{"ID":"i-Lc0JLrsUFt0JfrUFtBJfz:8","createdAt1555365135324,"updatedAt":1555365135324,"userId":"system:serviceaccount:syndesis:syndesis:syndesis:syndesis-cd-client","StateState": "ylfEz:8" createdAt":1555365135324,"userId": "system:serviceaccount:syndesis:syndesis:synState":"Pending","State":Jfending" ". .2C+PC9zdmc+","description":"Cellion": "Cellt": "Cellt":false},"단계Kind": "endpoint"",{"id":"-Lc0I7wqEVfKCDDHC8Jv","인증됨."Adescription": "Cellt": "Cellt"."

6.6. 통합을 중지하기 위한 끝점

이 끝점은 지정된 통합을 중지합니다.

방법 및 끝점

PUT

/public/integrations/{id}/deployments/stop

Expand
표 6.6. 매개 변수
이름유형설명

필수 헤더 매개변수

-h "Content-Type: <media-type>"

application/json

끝점에 필요한 미디어 유형입니다.

-h "SYNDESIS-XSRF-TOKEN: SYNDESIS-XSRF-TOKEN"

사용자 지정

인증에 필요합니다.

-h 'Authorization: Bearer <token> '

사용자 지정

Fuse Online 공용 REST API를 노출하는 OpenShift 서비스 계정의 시크릿 토큰입니다. 시크릿 토큰 받기를 참조하십시오.

경로 매개변수

{id}

string

필수 항목입니다. 중지할 통합의 이름 또는 내부 ID입니다. 통합 ID를 찾는 방법을 참조하십시오.

요청 예

다음 예에서 끝점은 timer-to-log 통합을 중지합니다.

/public/integrations/timer-to-log/deployments stop

생성

application/json

응답 예

204 상태 코드가 있는 콘텐츠 없음

6.7. 통합을 내보내기 위한 끝점

이 엔드포인트는 지정된 환경에 대해 표시되고 내보낸 환경이나 해당 환경에 대해 마지막으로 표시된 이후 내보내지 않은 통합을 내보냅니다. Fuse Online 공용 API 내보내기 끝점 도 참조하십시오.

방법 및 끝점

GET

/public/integrations/{env}/export.zip

Expand
표 6.7. 매개 변수
이름유형설명

필수 헤더 매개변수

-h "Content-Type: <media-type>"

multipart/form-data

끝점에 필요한 미디어 유형입니다.

-h "SYNDESIS-XSRF-TOKEN: SYNDESIS-XSRF-TOKEN"

사용자 지정

인증에 필요합니다.

-h 'Authorization: Bearer <token> '

사용자 지정

Fuse Online 공용 REST API를 노출하는 OpenShift 서비스 계정의 시크릿 토큰입니다. 시크릿 토큰 받기를 참조하십시오.

경로 매개변수

{env}

string

필수 항목입니다. Fuse Online 콘솔에서 생성한 환경 레이블입니다. 엔드포인트는 이 환경에 표시된 통합을 내보냅니다.

쿼리 매개변수

all=true

string

선택 사항: Fuse Online 환경에 있는 모든 통합을 내보내려면 이 옵션을 지정합니다. 엔드포인트는 각 통합의 현재 버전을 내보냅니다. 지정된 환경에 대해 통합이 표시되지 않은 경우 엔드포인트에서 지정된 환경 레이블을 통합에 추가합니다. 환경 레이블을 이미 생성해야 합니다. 끝점에서 레이블을 생성할 수 없습니다.

추가 매개변수

-o export.zip

string

쿼리 매개변수를 지정하는 경우 필수 항목입니다. 이 옵션이 없으면 내보낸 통합은 이름이 export.zip?all=true 인 파일에 있습니다.

요청 예

이 예에서 엔드포인트는 test1 환경으로 표시된 통합을 내보냅니다.

/public/integrations/test1/export.zip

다음 예에서 끝점은 test1 환경에 대해 각 통합이 표시되고 export.zip 파일의 모든 통합을 반환합니다.

/public/integrations/test1/export.zip?all=true -o export.zip

생성

application/octet-stream

응답

내보낸 통합이 포함된 export.zip 파일입니다. 내보낼 통합이 없는 경우 끝점은 HTTP 상태를 204 로 반환합니다.

6.8. 통합을 가져오기 위한 끝점

이 엔드포인트는 제공된 파일에 있는 통합을 가져옵니다. Fuse Online 공용 REST API 가져오기 끝점 도 참조하십시오.

방법 및 끝점

POST

/public/integrations

Expand
표 6.8. 매개 변수
이름유형설명

필수 헤더 매개변수

-h "Content-Type: <media-type>"

multipart/form-data

끝점에 필요한 미디어 유형입니다.

-h "SYNDESIS-XSRF-TOKEN: SYNDESIS-XSRF-TOKEN"

사용자 지정

인증에 필요합니다.

-h 'Authorization: Bearer <token> '

사용자 지정

Fuse Online 공용 REST API를 노출하는 OpenShift 서비스 계정의 시크릿 토큰입니다. 시크릿 토큰 받기를 참조하십시오.

추가 매개변수

data=@export.zip

string

필수 항목입니다. 이는 가져올 통합이 포함된 파일입니다. 이 파일을 가져오려면 이전에 내보내기 엔드포인트를 호출해야 합니다.

environment={env}

string

필수 항목입니다. 가져온 각 통합에 추가할 환경 레이블입니다. 환경 레이블을 이미 생성해야 합니다. 끝점에서 레이블을 생성할 수 없습니다.

요청 예

다음 예에서 끝점은 export.zip 파일에 있는 통합을 가져와서 테스트 환경에 표시합니다.

/public/integrations -F data=@export.zip -F environment=testing --request POST

생성

multipart/form-data

응답 예

응답은 가져온 리소스 목록으로, 통합 및 연결이 포함됩니다. 다음 예제에서는 응답의 일부가 여기에 생략됨을 나타냅니다.

{"lastImportedAt":1554888047271,"results":[{"id":"i-Lc0JLrsUFtBJfrsUFtBJfz","version":5"createdAt":1554800274935,"updatedAt":0,"tags":["timer","name": "timer-to-log","{j"id":"i-Lc0JfrsUFtB",""createdAt":1554800274935,"updatedAt", "tags":["timetimer", "name":["time-to-log","{jid":"{jid":" 간격 또는 cron 표현식을 기반으로 하는 이벤트","isDerived":false},"stepKind":"endpoint"}, {"ID":"-Lc0I7wqEVfKCDDHC8Jv","configuredProperties":{"bodyLoggingEnabled":"true""true"},"metadata":{"configured":"stepKind":"log":"Log",""Log",""Log"},"{tinuousDelivery":State","{"10." "lastImportedAt":1554887859824}}}]}

6.9. 특정 통합에서 환경 레이블을 제거하기 위한 끝점

이 끝점은 지정된 통합에서 지정된 환경 레이블을 제거합니다. 환경 레이블 자체는 계속 존재하지만 지정된 통합은 더 이상 표시하지 않습니다.

방법 및 끝점

DELETE

/public/integrations/{id}/tags/{env}

Expand
표 6.9. 매개 변수
이름유형설명

필수 헤더 매개변수

-h "Content-Type: <media-type>"

application/json

끝점에 필요한 미디어 유형입니다.

-h "SYNDESIS-XSRF-TOKEN: SYNDESIS-XSRF-TOKEN"

사용자 지정

인증에 필요합니다.

-h 'Authorization: Bearer <token> '

사용자 지정

Fuse Online 공용 REST API를 노출하는 OpenShift 서비스 계정의 시크릿 토큰입니다. 시크릿 토큰 받기를 참조하십시오.

경로 매개변수

{id}

string

필수 path 매개변수입니다. 표시 해제하려는 통합의 이름 또는 내부 ID입니다. 통합 ID를 찾는 방법을 참조하십시오.

{env}

string

필수 path 매개변수입니다. 지정된 통합에서 제거할 환경 레이블입니다.

추가 매개변수

--request DELETE

 

DELETE 메서드를 지정합니다.

요청 예

다음 예에서 엔드포인트는 timer-to-log 통합에서 dev1 환경 레이블을 제거합니다.

/public/integrations/timer-to-log/tags/dev1 --request DELETE

응답 예

204 상태 코드가 있는 콘텐츠 없음

6.10. 환경 레이블을 생성하기 위한 끝점

이 엔드포인트는 환경 레이블을 생성합니다. Fuse Online 콘솔에서 명시적으로 표시하거나 공용 API 엔드포인트를 호출하여 통합할 때까지 이 레이블과 통합이 표시되지 않습니다.

방법 및 끝점

POST

/public/environments/{env}

Expand
표 6.10. 매개 변수
이름유형설명

필수 헤더 매개변수

-h "Content-Type: <media-type>"

application/json

끝점에 필요한 미디어 유형입니다.

-h "SYNDESIS-XSRF-TOKEN: SYNDESIS-XSRF-TOKEN"

사용자 지정

인증에 필요합니다.

-h 'Authorization: Bearer <token> '

사용자 지정

Fuse Online 공용 REST API를 노출하는 OpenShift 서비스 계정의 시크릿 토큰입니다. 시크릿 토큰 받기를 참조하십시오.

경로 매개변수

{env}

string

필수 항목입니다. 생성할 환경 레이블입니다.

생성

다음과 같이 응답하지만 아무것도 생성하지 않습니다.

Expand

204 콘텐츠 없음

성공.

400 잘못된 요청

지정한 환경 이름이 이미 존재합니다.

5xx 오류

서버가 요청을 수행할 수 없습니다.

요청 예

다음 예에서 엔드포인트는 dev1 환경 레이블을 생성합니다.

/public/environments/dev1 --request POST

이제 이 엔드포인트를 호출한 Fuse Online 환경에 dev1 환경 레이블이 있습니다. 이 레이블로 표시된 통합은 아직 없습니다.

응답 예

응답 상태 코드 204가 있는 콘텐츠 없음

6.11. 환경 라벨 목록을 가져오는 끝점

이 엔드포인트는 Fuse Online 환경에 있는 환경 레이블 목록을 반환합니다. Fuse Online 콘솔에서 환경 레이블을 생성합니다. CI/CD의 환경 레이블 관리를 참조하십시오.

방법 및 끝점

GET

/public/environments[?withUses=true]

Expand
표 6.11. 매개 변수
이름유형설명

필수 헤더 매개변수

-h "Content-Type: <media-type>"

application/json

끝점에 필요한 미디어 유형입니다.

-h "SYNDESIS-XSRF-TOKEN: SYNDESIS-XSRF-TOKEN"

사용자 지정

인증에 필요합니다.

-h 'Authorization: Bearer <token> '

사용자 지정

Fuse Online 공용 REST API를 노출하는 OpenShift 서비스 계정의 시크릿 토큰입니다. 시크릿 토큰 받기를 참조하십시오.

경로 매개변수

withUses

부울

선택 사항: 명령이 Uses=true로 지정하는 경우 끝점은 환경 레이블과 해당 레이블로 표시된 통합 수를 반환합니다. 지정하지 않거나 false 로 설정하면 엔드포인트에서 환경 레이블만 반환합니다.

생성

application/json

요청 예

  • /public/environments

    응답 예:
    ["env-label-1", "env-label-2"]

  • /public/environments/?withUses=true

    응답 예제
    [{"name":"env-label-1","uses":1},
    {"name":"env-label-2","uses":0}]

6.12. 환경 레이블 변경을 위한 끝점

이 끝점은 환경 레이블을 변경합니다. 이제 원래 환경 레이블로 표시된 통합이 새 환경 레이블로 표시됩니다.

방법 및 끝점

PUT

/public/environments/{env}

Expand
표 6.12. 매개 변수
이름유형설명

필수 헤더 매개변수

-h "Content-Type: <media-type>"

application/json

끝점에 필요한 미디어 유형입니다.

-h "SYNDESIS-XSRF-TOKEN: SYNDESIS-XSRF-TOKEN"

사용자 지정

인증에 필요합니다.

-h 'Authorization: Bearer <token> '

사용자 지정

Fuse Online 공용 REST API를 노출하는 OpenShift 서비스 계정의 시크릿 토큰입니다. 시크릿 토큰 받기를 참조하십시오.

경로 매개변수

{env}

string

필수 항목입니다. 변경할 환경 레이블입니다.

추가 매개변수

-d {env}

string

필수 항목입니다. 환경에 대한 새 레이블을 지정합니다. 환경 레이블을 이미 생성해야 합니다. 끝점에서 레이블을 생성할 수 없습니다.

--request PUT

 

PUT 메서드를 지정합니다.

요청 예

다음 예에서 끝점은 dev1 환경 레이블을 dev2 로 변경합니다.

/public/environments/dev1 -d ‘dev2’ --request PUT

dev1 환경에 대해 표시된 통합에는 더 이상 해당 태그가 없습니다. 이러한 통합은 이제 dev2 환경에 대해 표시됩니다.

응답 예

응답 상태 코드 204가 있는 콘텐츠 없음

6.13. 모든 통합에서 환경 레이블을 제거하는 끝점

이 끝점은 적용된 각 통합에서 지정된 환경 레이블을 제거합니다.

방법 및 끝점

DELETE

/public/environments/{env}

Expand
표 6.13. 매개 변수
이름유형설명

필수 헤더 매개변수

-h "Content-Type: <media-type>"

application/json

끝점에 필요한 미디어 유형입니다.

-h "SYNDESIS-XSRF-TOKEN: SYNDESIS-XSRF-TOKEN"

사용자 지정

인증에 필요합니다.

-h 'Authorization: Bearer <token> '

사용자 지정

Fuse Online 공용 REST API를 노출하는 OpenShift 서비스 계정의 시크릿 토큰입니다. 시크릿 토큰 받기를 참조하십시오.

경로 매개변수

{env}

string

필수 항목입니다. 통합에서 제거할 환경 레이블입니다.

추가 매개변수

--request DELETE

 

DELETE 메서드를 지정합니다.

요청 예

다음 예에서 엔드포인트는 통합에서 dev1 태그를 제거합니다.

/public/environments/dev1 --request DELETE

응답 예

응답 상태 코드 204가 있는 콘텐츠 없음

6.14. 연결의 속성을 변경하기 위한 끝점

이 끝점은 지정된 연결의 속성을 변경합니다. 이 기능은 구성이 필요한 연결이 있는 통합을 가져온 후 유용합니다. 예를 들어 연결에 사용하는 자격 증명을 변경해야 할 수 있습니다.

방법 및 끝점

POST

​/public​/connections​/{id}​/properties

Expand
표 6.14. 매개 변수
이름유형설명

필수 헤더 매개변수

-h "Content-Type: <media-type>"

application/json

끝점에 필요한 미디어 유형입니다.

-h "SYNDESIS-XSRF-TOKEN: SYNDESIS-XSRF-TOKEN"

사용자 지정

인증에 필요합니다.

-h 'Authorization: Bearer <token> '

사용자 지정

Fuse Online 공용 REST API를 노출하는 OpenShift 서비스 계정의 시크릿 토큰입니다. 시크릿 토큰 받기를 참조하십시오.

경로 매개변수

{id}

string

필수 항목입니다. {id} 를 변경하려는 속성의 ID로 바꿉니다. 연결 ID에 대해 다음 중 하나를 지정합니다.

  • 연결의 이름입니다(예: PostgresDB ). 연결 이름에 공백 또는 특수 문자가 있는 경우 HTML 이스케이프 문자를 지정해야 합니다.
  • 연결 세부 정보를 볼 때 Fuse Online 콘솔 URL에 있는 내부 연결 ID입니다. 연결의 세부 정보를 보려면 왼쪽 탐색 패널에서 연결을 클릭합니다. 그런 다음 세부 정보를 확인하려는 연결을 클릭합니다. 연결 세부 정보가 브라우저에 표시되면 URL 끝에 다음과 같은 내용이 표시됩니다. /connections/i-LaupI8XznJ4LcuWwiwaz. 이 연결의 ID는 i-LaupI8XznJ4LcuWwiwaz 입니다.

요청 예

다음 예제에서는 PostgresDB 연결의 속성을 변경합니다. user 속성의 새 값은 myuser 이고 password 속성의 새 값은 mypassword 입니다.

/public/connections/PostgresDB/properties --request POST -d '{ "user": "myuser", "password": "mypassword" }'

생성

application/json

샘플 응답

이 예에서는 응답의 많은 부분이 누락되었음을 나타내는is가 있습니다.

"Causes":0,"id":"i-LaOziQEQEQEQEQEQEQEQEQEQEQEQEQEQEQEQMACMACMAVERA"," "TODOCz"," 구성된Properties":{"password":"9991046372aefa061f79b43fb791fb43fb791fb99e."Catype"Qfwn." "errors":0},"isDerived":false}

7장. Fuse 온라인 사용자 인터페이스 교체

Fuse Online 애플리케이션 이름, 로고, 아이콘 및 기타 사용자 인터페이스 세부 정보를 교체하여 Fuse Online을 교체할 수 있습니다. 이 작업은 syndesis-ui 배포 파일에서 ConfigMap 오브젝트로 사용자 지정 리소스를 마운트하여 수행합니다.

사전 요구 사항

  • Fuse Online은 고객 관리 환경의 OpenShift Container Platform에 설치되어 실행 중입니다.
  • oc 클라이언트 툴은 Fuse Online이 설치된 OCP 클러스터에 연결되어 있습니다.
  • Fuse Online을 설치할 수 있는 권한이 있습니다.

절차

  1. 다음 명령을 호출하여 Fuse Online이 설치된 syndesis-ui Pod의 이름을 가져옵니다.

    oc get pods

  2. 다음 명령을 호출하고 SYNDESIS_UI_POD_NAMEsyndesis-ui 를 실행하는 Pod의 실제 이름으로 교체하여 사용자 지정할 수 있는 로고, 아이콘, 글꼴 및 배경을 가져옵니다.

    oc rsync SYNDESIS_UI_POD_NAME:/opt/app-root/src/static/media ~/

    그러면 사용자 인터페이스 리소스가 ~/media/ 폴더에 배치됩니다.

  3. ~/media/syndesis_logo_full_darkb Cryostat.9c467d96.svg 인 헤더 로고가 포함된 파일을 편집하고 저장합니다.
  4. 업데이트된 로고 파일이 포함된 ConfigMap 오브젝트를 생성하여 수정된 파일을 클러스터에 업로드합니다.

    cd ~/
    oc create configmap syndesis-ui-custom-logo --from-file=media/syndesis_logo_full_darkbkg.9c467d96.svg
  5. syndesis-ui 배포 파일을 수정하여 syndesis-ui-custom-logo ConfigMap 오브젝트를 마운트합니다. oc edit dc/syndesis-ui 를 호출하거나 OpenShift 웹 콘솔을 사용하여 애플리케이션 > Deployments > syndesis-ui > Actions > Edit YAML 을 선택하여 이 작업을 수행합니다.

    1. spec.template.containers.volumeMounts 에서 다음을 추가합니다.

      -name: syndesis-ui-custom-logo-volume
       mountPath: /opt/app-root/src/static/media/syndesis_logo_full_darkbkg.9c467d96.svg
       subPath: syndesis_logo_full_darkbkg.9c467d96.svg
    2. spec.template.volumes 에서 다음을 추가합니다.

      -name: syndesis-ui-custom-logo-volume
       configMap:
        name: syndesis-ui-custom-logo
    3. syndesis-ui 배포 파일을 저장합니다.
  6. '~/media 폴더에 있고 사용자 지정할 각 파일에 대해 3~5단계를 반복합니다.
  7. 편집 후 애플리케이션 제목이 포함된 파일을 저장합니다.

    1. 파일을 업데이트할 디렉터리를 만듭니다.

      mkdir ~/syndesis-custom/src

    2. 다음 명령을 호출하고 SYNDESIS_UI_POD_NAMEsyndesis-ui 를 실행하는 Pod의 실제 이름으로 교체하여 애플리케이션 제목 파일을 가져옵니다.

      oc rsync SYNDESIS_UI_POD_NAME:/opt/app-root/src/index.html ~/syndesis-custom/src
    3. 애플리케이션 제목을 바꿉니다. 예를 들면 다음과 같습니다.

      sed -i 's/<title>.*<\/title>/<title>NEW_TITLE<\/title>/g' ~/syndesis-custom/src/index.html
  8. 업데이트된 파일이 포함된 ConfigMap 오브젝트를 생성하여 수정된 애플리케이션 제목 파일을 클러스터에 업로드합니다.

    cd ~/syndesis-custom/src
    oc create configmap syndesis-ui-custom-index --from-file=index.html
  9. syndesis-ui - custom-index ConfigMap 오브젝트를 마운트하여 syndesis-ui- ui 배포를 수정합니다.

    1. spec.template.containers.volumeMounts 에서 다음을 추가합니다.

      -name: syndesis-ui-custom-vindex-olume
       mountPath: /opt/app-root/src/index.html
       subPath: index.html
    2. spec.template.volumes 에서 다음을 추가합니다.

      -name: syndesis-ui-custom-index-volume
       configMap:
        name: syndesis-ui-custom-index
    3. syndesis-ui 배포 파일을 저장합니다.

결과

syndesis-ui 배포 파일을 저장하면 변경 사항을 반영하는 사용자 인터페이스를 사용하여 Fuse Online이 자동으로 재배포됩니다. 이후 Fuse Online 재배포에는 변경 사항도 반영됩니다.

법적 공지

Copyright © 2023 Red Hat, Inc.
The text of and illustrations in this document are licensed by Red Hat under a Creative Commons Attribution–Share Alike 3.0 Unported license ("CC-BY-SA"). An explanation of CC-BY-SA is available at http://creativecommons.org/licenses/by-sa/3.0/. In accordance with CC-BY-SA, if you distribute this document or an adaptation of it, you must provide the URL for the original version.
Red Hat, as the licensor of this document, waives the right to enforce, and agrees not to assert, Section 4d of CC-BY-SA to the fullest extent permitted by applicable law.
Red Hat, Red Hat Enterprise Linux, the Shadowman logo, the Red Hat logo, JBoss, OpenShift, Fedora, the Infinity logo, and RHCE are trademarks of Red Hat, Inc., registered in the United States and other countries.
Linux® is the registered trademark of Linus Torvalds in the United States and other countries.
Java® is a registered trademark of Oracle and/or its affiliates.
XFS® is a trademark of Silicon Graphics International Corp. or its subsidiaries in the United States and/or other countries.
MySQL® is a registered trademark of MySQL AB in the United States, the European Union and other countries.
Node.js® is an official trademark of Joyent. Red Hat is not formally related to or endorsed by the official Joyent Node.js open source or commercial project.
The OpenStack® Word Mark and OpenStack logo are either registered trademarks/service marks or trademarks/service marks of the OpenStack Foundation, in the United States and other countries and are used with the OpenStack Foundation's permission. We are not affiliated with, endorsed or sponsored by the OpenStack Foundation, or the OpenStack community.
All other trademarks are the property of their respective owners.
Red Hat logoGithubredditYoutubeTwitter

자세한 정보

평가판, 구매 및 판매

커뮤니티

Red Hat 문서 정보

Red Hat을 사용하는 고객은 신뢰할 수 있는 콘텐츠가 포함된 제품과 서비스를 통해 혁신하고 목표를 달성할 수 있습니다. 최신 업데이트를 확인하세요.

보다 포괄적 수용을 위한 오픈 소스 용어 교체

Red Hat은 코드, 문서, 웹 속성에서 문제가 있는 언어를 교체하기 위해 최선을 다하고 있습니다. 자세한 내용은 다음을 참조하세요.Red Hat 블로그.

Red Hat 소개

Red Hat은 기업이 핵심 데이터 센터에서 네트워크 에지에 이르기까지 플랫폼과 환경 전반에서 더 쉽게 작업할 수 있도록 강화된 솔루션을 제공합니다.

Theme

© 2026 Red Hat
맨 위로 이동