Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Azure Kubernetes Service (AKS) kümesinde Hizmet Bağlayıcısı yardımıyla CSI sürücüsünü kullanarak Azure Key Vault'a bağlanmayı öğrenin. Bu öğreticide, aşağıdaki görevleri tamamlayacaksınız:
- AKS kümesi ve Azure Key Vault oluşturun.
- AKS kümesi ile Hizmet Bağlayıcısı ile Azure Key Vault arasında bir bağlantı oluşturun.
- Bağlantıyı test etmek için bir
SecretProviderClassCRD ve kullanan birpodCSI sağlayıcısı oluşturun. - Kaynakları temizleyin.
Uyarı
Microsoft, kullanılabilir en güvenli kimlik doğrulama akışını kullanmanızı önerir. Bu yordamda açıklanan kimlik doğrulama akışı, uygulamada yüksek düzeyde güven gerektirir ve diğer akışlarda mevcut olmayan riskleri taşır. Bu akışı yalnızca yönetilen kimlikler gibi diğer daha güvenli akışlar uygun olmadığında kullanmalısınız.
Önkoşullar
- Etkin aboneliği olan bir Azure hesabı. Ücretsiz hesap oluşturun.
- Azure CLI'yı yükleyin ve az login komutunu kullanarak Azure CLI'da oturum açın .
- Kapsayıcı görüntüsünü ve Kubernetes kaynaklarını yönetmek için Dockerve kubectl yükleyin.
- Kapsayıcı ve AKS hakkında temel bilgiler. AKS için uygulama hazırlamaya başlayın.
Azure kaynakları oluşturma
Bu öğretici için bir kaynak grubu oluşturun.
az group create \ --name MyResourceGroup \ --location eastusAşağıdaki komutla veya öğreticiye başvurarak bir AKS kümesi oluşturun. Bu küme, hizmet bağlantısını, pod tanımını ve örnek uygulamanın dağıtıldığı yerdir.
az aks create \ --resource-group MyResourceGroup \ --name MyAKSCluster \ --enable-managed-identity \ --node-count 1Aşağıdaki komutla kümeye bağlanın.
az aks get-credentials \ --resource-group MyResourceGroup \ --name MyAKSClusterAşağıdaki komutu kullanarak veya öğreticiye başvurarak bir Azure Key Vault oluşturun. Bu hedef hizmet, AKS kümesine bağlıdır ve CSI sürücüsünün gizli bilgileri senkronize ettiği hizmettir.
az keyvault create \ --resource-group MyResourceGroup \ --name MyKeyVault \ --location EastUSAşağıdaki komutla Key Vault'ta bir gizli dizi oluşturun.
az keyvault secret set \ --vault-name MyKeyVault \ --name ExampleSecret \ --value MyAKSExampleSecret
Hizmet Bağlayıcısı ile AKS'de hizmet bağlantısı oluşturma
Azure portalını veya Azure CLI'yi kullanarak AKS kümesi ile Azure Key Vault arasında bir hizmet bağlantısı oluşturun.
Kubernetes hizmetinizi Azure portalında açın ve soldaki menüden Hizmet Bağlayıcısı'nı seçin.
Oluştur'u seçin ve aşağıdaki ayarları doldurun. Diğer ayarları varsayılan değerleriyle bırakın.
Ayar Seçim Açıklama Kubernetes ad alanı varsayılan Kümede bağlantıya ihtiyacınız olan ad alanı. Hizmet türü Key Vault (CSI'yi etkinleştirme) Hedef hizmet türü olarak Key Vault'u seçin ve CSI'yi etkinleştir seçeneğini işaretleyin. Bağlantı adı keyvault_conn Hizmet Bağlayıcısı tarafından sağlanan bağlantı adını kullanın veya kendi bağlantı adınızı seçin. Abonelik <MySubscription>Azure Key Vault hedef hizmetinizin aboneliği. Anahtar kasası <MyKeyVault>Bağlanmak istediğiniz hedef anahtar kasası. İstemci türü Python Hedef hizmete bağlanmak için kullandığınız kod dili veya çerçeve. Bağlantı oluşturulduktan sonra, Hizmet Bağlayıcısı sayfasında yeni bağlantı hakkındaki bilgiler görüntülenir.
Bağlantıyı test edin
Örnek depoyu kopyalayın:
git clone https://github.com/Azure-Samples/serviceconnector-aks-samples.gitAzure Key Vault için deponun örnek klasörüne gidin:
cd serviceconnector-aks-samples/azure-keyvault-csi-providerklasöründeki dosyadaki
secret_provider_class.yamlazure-keyvault-csi-provideryer tutucuları değiştirin.- değerini, oluşturduğumuz ve bağladığımız anahtar kasasının adıyla değiştirin
<AZURE_KEYVAULT_NAME>. Değeri Hizmet Bağlayıcısı'nın Azure portalından alabilirsiniz. - değerini anahtar kasasının kiracı kimliğiyle değiştirin
<AZURE_KEYVAULT_TENANTID>. Değeri Hizmet Bağlayıcısı'nın Azure portalından alabilirsiniz. - değerini eklentinin
<AZURE_KEYVAULT_CLIENTID>kimlik istemci kimliğiyle değiştirinazureKeyvaultSecretsProvider. Değeri Hizmet Bağlayıcısı'nın Azure portalından alabilirsiniz. - değerini, oluşturduğumuz anahtar kasası gizli dizisi adıyla değiştirin
<KEYVAULT_SECRET_NAME>, örneğin,ExampleSecret
- değerini, oluşturduğumuz ve bağladığımız anahtar kasasının adıyla değiştirin
Komutuyla Kubernetes kaynaklarını kümenize dağıtın
kubectl apply. Yüklükubectldeğilse az aks install-cli komutunu kullanarak yerel olarak yükleyin.SecretProviderClassÖzel kaynak tanımını (CRD) dağıtın.kubectl apply -f secret_provider_class.yamlöğesini dağıtın
pod. komutu, AKS kümenizin varsayılan ad alanında adlısc-demo-keyvault-csibir pod oluşturur.kubectl apply -f pod.yaml
podunu ile
kubectlgörüntüleyerek dağıtımın başarılı olup olmadığını denetleyin.kubectl get pod/sc-demo-keyvault-csiPod başlatıldıktan sonra, dağıtım YAML'nizde belirtilen birim yolundaki bağlı içerik kullanılabilir. Gizli dizilerinizi doğrulamak ve bir test gizli dizisi yazdırmak için aşağıdaki komutları kullanın.
Aşağıdaki komutu kullanarak gizli dizi deposunda tutulan gizli dizileri gösterin.
kubectl exec sc-demo-keyvault-csi -- ls /mnt/secrets-store/Aşağıdaki komutu kullanarak depoda bir gizli dizi görüntüleyin. Bu örnek komut, test gizli dizisini
ExampleSecretgösterir.kubectl exec sc-demo-keyvault-csi -- cat /mnt/secrets-store/ExampleSecret
Kaynakları temizleme
Bu öğreticide oluşturduğunuz kaynakları yeniden kullanmanız gerekmiyorsa kaynak grubunuzu silerek oluşturduğunuz tüm kaynakları silin.
az group delete \
--resource-group MyResourceGroup
Sonraki adımlar
Hizmet Bağlayıcısı kavramları ve AKS'nin hizmetlere bağlanmasına nasıl yardımcı olduğu hakkında daha fazla bilgi edinmek için aşağıdaki makaleleri okuyun.