1.4. 네임스페이스에서 구성 맵 공유


클러스터의 네임스페이스 간에 구성 맵을 공유하려면 SharedConfigMap CR(사용자 정의 리소스) 인스턴스를 생성합니다.

사전 요구 사항

다음 작업을 수행할 수 있는 권한이 있어야 합니다.

  • 클러스터 범위 수준에서 sharedconfigmaps.sharedresource.openshift.io CRD(사용자 정의 리소스 정의)를 생성합니다.
  • SharedConfigMap CR에 대한 ClusterRole 오브젝트를 생성합니다.
  • CSI(Share Resource Container Storage Interface) 드라이버에 대한 역할 및 역할 바인딩을 생성합니다.
  • 클러스터의 네임스페이스에서 역할 및 역할 바인딩을 관리하여 해당 인스턴스를 가져오고, 나열하고, 조사할 수 있는 사용자를 제어합니다.
  • 클러스터의 네임스페이스에서 역할 및 역할 바인딩을 관리하여 CSI 볼륨을 마운트하는 Pod에서 해당 인스턴스를 사용할 수 있는 서비스 계정을 제어합니다.
  • 공유할 시크릿이 포함된 네임스페이스에 액세스합니다.

프로세스

  1. 클러스터의 네임스페이스에서 공유할 구성 맵에 대한 SharedConfigMap CR 인스턴스를 생성합니다. 다음 예제 구성을 참조하십시오.

    apiVersion: sharedresource.openshift.io/v1alpha1
    kind: SharedConfigMap
    metadata:
      name: share-test-config 1
    spec:
      configMapRef:
        name: shared-config
        namespace: <name_of_the_source_namespace> 2
    1
    SharedConfigMap CR의 이름을 정의합니다.
    2
    & lt;name_of_the_source_namespace& gt;를 소스 네임스페이스 이름으로 바꿉니다.
  2. 다음 예제 구성을 사용하여 참조된 공유 리소스를 사용할 수 있는 RBAC(역할 기반 액세스 제어) 권한을 부여하는 ClusterRole CR 인스턴스를 생성합니다.

    apiVersion: rbac.authorization.k8s.io/v1
    kind: ClusterRole
    metadata:
      name: <cluster_role_name> 1
    rules:
      - apiGroups:
          - sharedresource.openshift.io
        resources:
          - sharedconfigmaps
        resourceNames:
          - share-test-config 2
        verbs:
          - use
    1
    <cluster_role_name>을 클러스터 역할의 이름으로 바꿉니다.
    2
    SharedSecret CR의 이름을 정의합니다.
  3. RoleRoleBinding 오브젝트를 생성하여 CSI 드라이버 권한을 구성 맵에 액세스할 수 있는 권한을 부여합니다.

    Role 오브젝트의 예

    apiVersion: rbac.authorization.k8s.io/v1
    kind: Role
    metadata:
      name: shared-test-config
      namespace: test-share-source 1
    rules:
      - apiGroups: [""]
        resources: ["configmaps"]
        resourceNames: ["shared-config"]
        verbs: ["get", "list", "watch"]

    1
    소스 네임스페이스의 이름을 정의합니다.

    RoleBinding 오브젝트의 예

     apiVersion: rbac.authorization.k8s.io/v1
     kind: RoleBinding
     metadata:
       name: shared-test-config
       namespace: test-share-source 1
     roleRef:
       apiGroup: rbac.authorization.k8s.io
       kind: Role
       name: shared-test-config
     subjects: 2
       - kind: ServiceAccount
         name: csi-driver-shared-resource
         namespace: openshift-builds

    1
    소스 네임스페이스의 이름을 정의합니다.
    2
    Shared Resource CSI 드라이버 DaemonSet의 서비스 계정 목록을 정의합니다. OpenShift 빌드와 함께 배포되는 경우 서비스 계정 이름은 csi-driver-shared-resource 이며, 네임스페이스는 OpenShift Operator의 빌드가 배포되는 것과 동일합니다.
Red Hat logoGithubRedditYoutubeTwitter

자세한 정보

평가판, 구매 및 판매

커뮤니티

Red Hat 문서 정보

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

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

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

Red Hat 소개

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

© 2024 Red Hat, Inc.