5.7. 바인딩 데이터 예상


이 섹션에서는 바인딩 데이터를 사용하는 방법에 대한 정보를 제공합니다.

5.7.1. 바인딩 데이터 사용

백업 서비스에서 바인딩 데이터를 노출한 후 워크로드가 이 데이터에 액세스하고 사용하기 위해 백업 서비스에서 해당 데이터를 워크로드로 프로젝트해야 합니다. Service Binding Operator는 다음 방법으로 이 데이터 집합을 워크로드로 자동 계획합니다.

  1. 기본적으로 를 파일로 설정합니다.
  2. ServiceBinding 리소스에서 .spec.bindAsFiles 매개변수를 구성한 후 환경 변수로 설정합니다.

5.7.2. 워크로드 컨테이너 내부의 바인딩 데이터를 예상할 디렉터리 경로 구성

기본적으로 Service Binding Operator는 바인딩 데이터를 워크로드 리소스의 특정 디렉터리에 파일로 마운트합니다. 워크로드가 실행되는 컨테이너에서 SERVICE_BINDING_ROOT 환경 변수 설정을 사용하여 디렉터리 경로를 구성할 수 있습니다.

예: 파일로 마운트된 바인딩 데이터

$SERVICE_BINDING_ROOT 1
├── account-database 2
│   ├── type 3
│   ├── provider 4
│   ├── uri
│   ├── username
│   └── password
└── transaction-event-stream 5
    ├── type
    ├── connection-count
    ├── uri
    ├── certificates
    └── private-key

1
루트 디렉토리.
2 5
바인딩 데이터를 저장하는 디렉터리입니다.
3
해당 디렉터리에 예상된 바인딩 데이터 유형을 식별하는 필수 식별자입니다.
4
선택 사항: 애플리케이션에서 연결할 수 있는 백업 서비스의 유형을 식별할 수 있도록 프로바이더를 식별하는 식별자입니다.

바인딩 데이터를 환경 변수로 사용하려면 선택한 프로그래밍 언어의 기본 언어 기능을 사용하여 환경 변수를 읽을 수 있습니다.

예: Python 클라이언트 사용

import os
username = os.getenv("USERNAME")
password = os.getenv("PASSWORD")

5.7.2.1. 바인딩 데이터를 파일로 예상하기 위한 최종 경로 계산

다음 표에는 파일이 특정 디렉터리에 마운트될 때 바인딩 데이터 예측의 최종 경로가 계산되는 방법에 대한 구성이 요약되어 있습니다.

표 5.4. 최종 경로 계산 요약
SERVICE_BINDING_ROOT최종 경로

사용할 수 없음

/bindings/<ServiceBinding_ResourceName>

dir/path/root

dir/path/root/<ServiceBinding_ResourceName>

이전 표에서 <ServiceBinding_ResourceName> 항목은 CR(사용자 정의 리소스)의 .metadata.name 섹션에서 구성하는 ServiceBinding 리소스의 이름을 지정합니다.

기존 SERVICE_BINDING_ROOT 환경 변수 내의 바인딩 데이터에 액세스하고 사용하려면 환경 변수를 읽을 수 있는 선택한 프로그래밍 언어의 기본 언어 기능을 사용합니다.

예: Python 클라이언트 사용

from pyservicebinding import binding
try:
    sb = binding.ServiceBinding()
except binding.ServiceBindingRootMissingError as msg:
    # log the error message and retry/exit
    print("SERVICE_BINDING_ROOT env var not set")
sb = binding.ServiceBinding()
bindings_list = sb.bindings("postgresql")

이전 예제에서 bindings_list 변수에는 postgresql 데이터베이스 서비스 유형의 바인딩 데이터가 포함되어 있습니다.

5.7.3. 바인딩 데이터 예상

워크로드 요구 사항 및 환경에 따라 바인딩 데이터를 파일 또는 환경 변수로 예상하도록 선택할 수 있습니다.

사전 요구 사항

  • 다음 개념을 이해합니다.

    • 워크로드의 환경과 요구 사항, 그리고 제공된 서비스와의 작동 방식.
    • 워크로드 리소스의 바인딩 데이터 사용.
    • 기본 메서드에 대해 데이터 예측의 최종 경로를 계산하는 방법에 대한 구성입니다.
  • 바인딩 데이터는 백업 서비스에서 노출됩니다.

프로세스

  1. 바인딩 데이터를 파일로 계획하려면 기존 SERVICE_BINDING_ROOT 환경 변수가 워크로드가 실행되는 컨테이너에 있는지 확인하여 대상 폴더를 확인합니다.
  2. 바인딩 데이터를 환경 변수로 계획하려면 CR(사용자 정의 리소스)의 ServiceBinding 리소스에서 .spec.bindAsFiles 매개변수의 값을 false로 설정합니다.

5.7.4. 추가 리소스

Red Hat logoGithubRedditYoutubeTwitter

자세한 정보

평가판, 구매 및 판매

커뮤니티

Red Hat 문서 정보

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

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

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

Red Hat 소개

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

© 2024 Red Hat, Inc.