이 섹션의 항목에서는 독립형 관리 클러스터를 사용하여 TKG(Tanzu Kubernetes Grid ID 및 액세스 관리)를 구성하는 방법을 설명합니다.
ID와 액세스 관리를 사용하도록 설정하고 구성하려면 아래의 항목 링크를 따라갑니다.
TKG(Tanzu Kubernetes Grid)는 Pinniped를 사용하여 ID 및 액세스 관리용 인증과 권한 부여를 구현합니다.
Tanzu Kubernetes Grid는 Kubernetes 클러스터용 오픈 소스 인증 서비스인 Pinniped를 사용하여 사용자 인증을 구현합니다. Pinniped를 사용하면 외부 OIDC(OpenID Connect) 또는 IdP(LDAP ID 제공자)를 워크로드 클러스터에 연결하여 해당 클러스터에 대한 사용자 액세스를 제어할 수 있습니다. LDAP 인증의 경우 Pinniped는 Dex를 끝점으로 사용하여 업스트림 LDAP IdP에 연결합니다. OIDC를 사용하는 경우 Pinniped는 자체 끝점을 제공하므로 Dex가 필요하지 않습니다. ID 관리를 사용하도록 설정하면 Pinniped와 Dex가 관리 클러스터에서 클러스터 내 서비스로 자동으로 실행됩니다. Tanzu Kubernetes Grid에서 ID 관리를 사용하도록 설정하는 방법에 대한 지침은 ID 관리 구성을 참조하십시오.
관리 및 워크로드 클러스터 간의 인증 흐름에는 다음이 포함됩니다.
kubeconfig
를 사용자에게 제공합니다.kubeconfig
를 사용하여 워크로드 클러스터에 연결합니다(예: kubectl get pods --kubeconfig
실행).kubectl get pods
요청을 허용하거나 거부합니다.아래 이미지에서 파란색 화살표는 워크로드 클러스터, 관리 클러스터, 외부 IdP 간의 인증 흐름을 나타냅니다. 녹색 화살표는 워크로드 클러스터, 관리 클러스터, 외부 IdP 간의 Tanzu CLI 및 kubectl
트래픽을 나타냅니다.
아래 다이어그램은 ID 관리를 사용하도록 설정할 때 Tanzu Kubernetes Grid가 관리 클러스터 및 워크로드 클러스터에서 배포하는 ID 관리 구성 요소를 보여 줍니다.
다이어그램 이해:
보라색 테두리가 있는 사각형에는 Pinniped, Dex, 관리 클러스터의 배포 후 작업, 그리고 Pinniped와 워크로드 클러스터의 배포 후 작업을 포함하는 ID 관리 구성 요소가 표시됩니다. Tanzu Kubernetes Grid v1.3.0에서 Pinniped는 Dex를 OIDC 및 LDAP 제공자의 끝점으로 사용합니다. v1.3.1 이상에서는 Dex가 LDAP 제공자에 대해서만 배포됩니다. v1.3.1 이상에서 OIDC 제공자를 구성하는 경우 Pinniped는 Dex를 거치지 않고 제공자와 직접 통신합니다.
회색 테두리 사각형은 Tanzu Kubernetes Grid가 ID 관리 구성 요소의 수명 주기를 제어하는 데 사용하는 구성 요소를 보여 줍니다. 여기에는 Tanzu CLI, tanzu-addons-manager
, kapp-controller
가 포함됩니다.
녹색 테두리 사각형에는 관리 클러스터에 대해 생성된 Pinniped 추가 기능 암호가 표시됩니다.
관리 클러스터의 주황색 테두리 사각형에는 워크로드 클러스터에 대해 생성된 Pinniped 추가 기능 암호가 표시됩니다. 암호는 워크로드 클러스터에 미러링됩니다.
내부적으로 Tanzu Kubernetes Grid는 ID 관리 구성 요소를 pinniped
자동 관리 패키지로 배포합니다. 이 패키지에는 pinniped
추가 기능이 포함되어 있습니다. ID 관리를 사용하도록 설정한 관리 클러스터를 배포하거나 배포 후 단계로 사용하도록 설정하면 Tanzu CLI는 관리 클러스터에 pinniped
추가 기능의 Kubernetes 암호를 생성합니다. tanzu-addons-manager
는 IdP 구성 정보가 포함된 암호를 읽고 kapp-controller
에게 암호의 구성 정보를 사용하여 pinniped
추가 기능을 구성하도록 지시합니다.
Tanzu CLI는 관리 클러스터에서 배포하는 각 워크로드 클러스터에 별도의 pinniped
추가 기능 암호를 생성합니다. 모든 암호는 관리 클러스터에 저장됩니다. 자세한 내용은 자동 관리 패키지를 참조하십시오.
Tanzu Kubernetes Grid는 RBAC(역할 기반 액세스 제어) 권한 부여를 사용합니다. RBAC를 구성하는 방법에 대한 지침은 RBAC 구성을 참조하십시오.