6.9. 개발자 화면을 사용하여 서비스에 애플리케이션 연결

다음과 같은 목적으로 토폴로지 보기를 사용합니다.

  • 애플리케이션 내에서 여러 구성 요소를 그룹화합니다.
  • 구성 요소를 서로 연결합니다.
  • 라벨을 사용하여 서비스에 여러 리소스 연결.

바인딩 또는 시각적 커넥터를 사용하여 구성 요소를 연결할 수 있습니다.

대상 노드가 Operator 지원 서비스인 경우에만 구성 요소 간 바인딩 연결을 설정할 수 있습니다. 이러한 연결은 해당 대상 노드로 화살표를 드래그할 때 표시되는 바인딩 커넥터 생성 툴팁으로 표시됩니다. 바인딩 커넥터를 사용하여 애플리케이션을 서비스에 연결하면 ServiceBinding 리소스가 생성됩니다. 그런 다음 Service Binding Operator 컨트롤러에서 필요한 데이터를 애플리케이션 배포에 바인딩합니다. 요청이 성공하면 애플리케이션이 재배포되어 연결된 구성 요소 간 상호 작용을 설정합니다.

시각적 커넥터는 구성 요소 간 시각적 연결만 설정하고 연결하려는 의도를 표시합니다. 구성 요소 간 상호 작용은 설정되지 않습니다. 대상 노드가 Operator에서 지원하는 서비스가 아닌 경우 대상 노드로 화살표를 드래그하면 시각적 커넥터 생성 툴팁이 표시됩니다.

6.9.1. Operator 지원 바인딩 가능 서비스 검색 및 식별

사용자는 바인딩 가능한 서비스를 생성하려면 바인딩 가능한 서비스를 알아야 합니다. 바인딩 가능한 서비스는 인증 정보, 연결 세부 정보, 볼륨 마운트, 시크릿 및 기타 바인딩 데이터와 같은 바인딩 데이터를 표준 방식으로 노출하므로 애플리케이션에서 쉽게 사용할 수 있는 서비스입니다. 개발자 화면을 통해 이러한 바인딩 가능한 서비스를 검색하고 식별할 수 있습니다.

절차

  • Operator 지원 bindable 서비스를 검색하고 식별하려면 다음과 같은 대체 방법을 고려하십시오.

    • +추가개발자 카탈로그Operator 백업을 클릭하여 Operator가 지원하는 타일을 확인합니다. 서비스 바인딩 기능을 지원하는 Operator 지원 서비스에는 타일에 바인딩 가능한 배지가 있습니다.
    • Operator Backed 페이지의 왼쪽 창에서 바인딩 가능 을 선택합니다.

      작은 정보

      서비스 바인딩 옆에 있는 도움말 아이콘을 클릭하여 바인딩 가능한 서비스에 대한 자세한 정보를 확인합니다.

    • +추가추가를 클릭하고 Operator 지원 서비스를 검색합니다. 바인딩 가능한 서비스를 클릭하면 측면 패널에서 바인딩 가능한 배지 를 볼 수 있습니다.

6.9.2. 구성 요소 간 시각적 연결 생성

시각적 커넥터를 사용하여 애플리케이션 구성 요소를 연결하려는 의도를 나타낼 수 있습니다.

이 절차에서는 PostgreSQL 데이터베이스 서비스와 Spring PetClinic 샘플 애플리케이션 간에 시각적 연결을 생성하는 예를 보여줍니다.

사전 요구 사항

  • 개발자 화면을 사용하여 Spring PetClinic 샘플 애플리케이션을 생성하고 배포했습니다.
  • 개발자 화면을 사용하여 Crunchy PostgreSQL 데이터베이스 인스턴스를 생성하고 배포했습니다. 이 인스턴스에는 다음 구성 요소가 있습니다. hippo-backup,hippo-instance,hippo-repo-host, hippo-pgbouncer.

절차

  1. 개발자 관점에서 관련 프로젝트(예: my-petclinic )로 전환합니다.
  2. Spring PetClinic 샘플 애플리케이션 위에 커서를 올리면 노드에서 출발하는 화살표가 표시됩니다.

    그림 6.2. 시각적 커넥터

    odc connector
  3. 화살표를 클릭하고 hippo-pgbouncer 배포로 드래그하여 Spring PetClinic 샘플 애플리케이션을 연결합니다.
  4. spring-petclinic 배포를 클릭하여 개요 패널을 확인합니다. 세부 정보 탭에서 주석 섹션의 편집 아이콘을 클릭하여 배포에 추가된 Key = app.openshift.io/connects-toValue = [{"apiVersion":"apps/v1","kind":"Deployment","name":"hippo-pgbouncer"}] 주석을 확인합니다.
  5. 선택 사항: 이러한 단계를 반복하여 생성한 다른 애플리케이션과 구성 요소 간 시각적 연결을 설정할 수 있습니다.

    그림 6.3. 여러 애플리케이션 연결

    여러 애플리케이션을 연결하는 odc 연결

6.9.3. 구성 요소 간 바인딩 연결 생성

PostgreSQL Database 서비스와 Spring PetClinic 샘플 애플리케이션을 사용하는 다음 예와 같이 Operator 지원 구성 요소를 사용하여 바인딩 연결을 생성할 수 있습니다. PostgreSQL Database Operator가 지원하는 서비스로 바인딩 연결을 생성하려면 먼저 OperatorHub 에 Red Hat 제공 PostgreSQL Database Operator를 추가한 다음 Operator를 설치해야 합니다. 그러면 PostreSQL Database Operator에서 시크릿, 구성 맵, 상태, 사양 속성에 바인딩 데이터를 노출하는 데이터베이스 리소스를 생성하고 관리합니다.

사전 요구 사항

  • 개발자 화면에서 Spring PetClinic 샘플 애플리케이션을 생성하고 배포했습니다.
  • OperatorHub 에서 Service Binding Operator를 설치했습니다.
  • v5 업데이트 채널의 OperatorHub에서 Crunchy Postgres for Kubernetes Operator를 설치했습니다.
  • 개발자 화면에 PostgresCluster 리소스를 생성했으며 이로 인해 hippo-backup,hippo-instance,hippo-repo-host, hippo-pgbouncer 의 구성 요소가 있는 Crunchy PostgreSQL 데이터베이스 인스턴스가 생성되었습니다.

절차

  1. 개발자 관점에서 관련 프로젝트(예: my-petclinic )로 전환합니다.
  2. 토폴로지 보기에서 Spring PetClinic 샘플 애플리케이션 위에 커서를 올리면 노드에서 출발하는 화살표가 표시됩니다.
  3. 화살표를 Postgres 클러스터의 hippo 데이터베이스 아이콘으로 드래그 앤 드롭하여 Spring PetClinic 샘플 애플리케이션과 바인딩합니다.
  4. 서비스 바인딩 생성 대화 상자에서 기본 이름을 유지하거나 서비스 바인딩에 다른 이름을 추가한 다음 생성 을 클릭합니다.

    그림 6.4. 서비스 바인딩 대화 상자

    odc sbc modal
  5. 선택 사항: 토폴로지 보기를 사용하여 바인딩 연결에 어려움이 있는 경우 +추가YAML가져오기 YAML 로 이동합니다.
  6. 선택 사항: YAML 편집기에서 ServiceBinding 리소스를 추가합니다.

    apiVersion: binding.operators.coreos.com/v1alpha1
    kind: ServiceBinding
    metadata:
        name: spring-petclinic-pgcluster
        namespace: my-petclinic
    spec:
        services:
        - group: postgres-operator.crunchydata.com
          version: v1beta1
          kind: PostgresCluster
          name: hippo
        application:
          name: spring-petclinic
          group: apps
          version: v1
          resource: deployments

    서비스 바인딩 요청이 생성되고 ServiceBinding 리소스를 통해 바인딩 연결이 생성됩니다. 데이터베이스 서비스 연결 요청이 성공하면 애플리케이션이 재배포되고 연결이 설정됩니다.

    그림 6.5. 바인딩 커넥터

    odc binding connector
    작은 정보

    왼쪽 화살표를 드래그하여 operator 지원 서비스에 바인딩 연결을 추가하여 컨텍스트 메뉴를 사용할 수도 있습니다.

    그림 6.6. 바인딩 연결을 생성하는 컨텍스트 메뉴

    odc context operator
  7. 탐색 메뉴에서 토폴로지 를 클릭합니다. 토폴로지 보기의 spring-petclinic 배포에는 웹 페이지를 볼 수 있는 Open URL 링크가 포함되어 있습니다.
  8. Open URL 링크를 클릭합니다.

Spring PetClinic 샘플 애플리케이션을 원격으로 확인하여 애플리케이션이 이제 데이터베이스 서비스에 연결되어 있고 데이터가 Crunchy PostgreSQL 데이터베이스 서비스에서 애플리케이션에 성공적으로 예측되었는지 확인할 수 있습니다.

Service Binding Operator에서 애플리케이션과 데이터베이스 서비스 간 작동 연결이 성공적으로 생성되었습니다.

6.9.4. 토폴로지 보기에서 서비스 바인딩 상태 확인

개발자 화면을 사용하면 토폴로지 보기를 통해 서비스 바인딩의 상태를 확인할 수 있습니다.

절차

  1. 서비스 바인딩에 성공하면 바인딩 커넥터를 클릭합니다. 세부 정보 탭에 연결된 상태가 표시되는 측면 패널이 나타납니다.

    선택적으로 개발자 화면에서 다음 페이지에서 연결된 상태를 볼 수 있습니다.

    • ServiceBindings 페이지입니다.
    • ServiceBinding 세부 정보 페이지. 또한 페이지 제목에는 연결된 배지가 표시됩니다.
  2. 서비스 바인딩에 실패하면 바인딩 커넥터에 빨간색 화살표 헤드가 표시되고 연결 중간에 빨간색 화살표 헤드가 표시됩니다. 이 커넥터를 클릭하여 세부 정보 탭의 측면 패널에서 Error 상태를 확인합니다. 필요한 경우 오류 상태를 클릭하여 기본 문제에 대한 특정 정보를 확인합니다.

    개발자 화면에서 다음 페이지의 오류 상태 및 툴팁을 볼 수도 있습니다.

    • ServiceBindings 페이지입니다.
    • ServiceBinding 세부 정보 페이지. 또한 페이지 제목에는 오류 배지가 표시됩니다.
작은 정보

ServiceBindings 페이지에서 필터 드롭다운을 사용하여 상태에 따라 서비스 바인딩을 나열합니다.

6.9.5. 추가 리소스