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 Arc özellikli bir Kubernetes kümesi, Azure IoT İşlemleri'ı dağıtmak için bir önkoşuldur. Bu makale, Ubuntu, Windows, Azure Yerel ve vSphere Kubernetes Service (VKS) için rehberlik ile birlikte bu kümenin nasıl hazırlanacağını anlatır.
Azure IoT İşlemleri hızla dağıtmak ve test ortamında örnek bir iş yükü çalıştırmak istiyorsanız bkz. Quickstart: K3s ile GitHub Codespaces'ta Azure IoT İşlemleri çalıştırma.
Önkoşullar
Multi-node deployments için Ubuntu'da K3s, Azure Yerel'da AKS veya vSphere Kubernetes Service (VKS) kullanın. AKS Uç Temel Bileşenleri on Windows yalnızca tek düğümlü dağıtımları destekler.
Azure Arc etkin bir Kubernetes kümesi hazırlamak için şunları yapmanız gerekir:
Owner rolüne veya Contributor ve User Access Administrator rollerinin birleşimine sahip bir Azure aboneliği. Aboneliğinize gidip Azure portalının sol tarafındaki Erişim kontrolü (IAM) seçeneğini seçtikten sonra Erişimimi görüntüle öğesini seçerek erişim seviyenizi denetleyebilirsiniz. Azure aboneliğiniz yoksa başlamadan önce ücretsiz bir abonelik oluşturabilirsiniz.
Geliştirme makinenizde yüklü Azure CLI. Mevcut Azure CLI uzantılarını, connectedk8s uzantısı için gereken en düşük sürümü görmek üzere denetleyin. Sürümünüzü denetlemek ve
az --versiongerekirse güncelleştirmek için kullanınaz upgrade. Daha fazla bilgi için bkz. Azure CLI yükleme.Azure CLI için connectedk8s uzantısı. Uzantıyı eklemek veya en son sürüme güncelleştirmek için aşağıdaki komutu kullanın:
az extension add --upgrade --name connectedk8sbir Azure kaynak grubu. Kaynak grubu başına yalnızca bir Azure IoT İşlemleri örneği desteklenir. Yeni bir kaynak grubu oluşturmak için az group create komutunu kullanın. Şu anda desteklenen Azure bölgelerin listesi için bkz. Supported regions.
az group create --location $LOCATION --resource-group $RESOURCE_GROUP --subscription $SUBSCRIPTION_ID
Sistem gereksinimlerini karşılayan donanım:
Azure IoT İşlemleri'u hataya dayanıklılığın etkinleştirildiği çok düğümlü bir kümeye dağıtacaksanız, Edge Birimleri için Linux'u Hazırlama başlıklı metindeki donanım ve depolama gereksinimlerini gözden geçirin.
Bu makaledeki Azure CLI örnek, her değeri bir kez ayarlayabilmeniz ve ardından komutları kopyalayıp yapıştırmanız için ortam değişkenlerini kullanır as-is. Eğer hızlı başlangıçta Azure IoT İşlemleri Codespaces ortamını kullanıyorsanız, bu değişkenler zaten sizin için ayarlanmış ve bu adımı atlayabilirsiniz. Aksi takdirde, komutları çalıştırmadan önce shell'inizde aşağıdaki ortam değişkenlerini ayarlayın.
Aşağıdaki betikler en sık kullanılan ortam değişkenlerini ayarlar:
| Ortam değişkeni | Description |
|---|---|
SUBSCRIPTION_ID |
Azure IoT İşlemleri örneğini içeren aboneliğin kimliği. |
RESOURCE_GROUP |
Azure IoT İşlemleri örneğini içeren kaynak grubunun adı. |
AIO_INSTANCE_NAME |
Azure IoT İşlemleri örneğinizin adı. Örneklerinizi listelemek için çalıştırın az iot ops list -o table. |
CLUSTER_NAME |
Azure Arc özellikli Kubernetes kümesinin adı, örneğini barındırıyor. |
LOCATION |
Yeni kaynaklar için kullanılacak Azure bölgesi, örneğin eastus. |
SUBSCRIPTION_ID=<subscription-id>
RESOURCE_GROUP=<resource-group-name>
AIO_INSTANCE_NAME=<instance-name>
CLUSTER_NAME=<cluster-name>
LOCATION=<region>
Sadece bu makalenin kullandığı değişkenleri ayarlamanız yeterlidir. Bu makale, seçtiğiniz kaynak adları için ek ortam değişkenleri kullanabilir. Makale, tanıtıldıkları yere nasıl yerleştirileceğini açıklıyor.
Küme oluşturun ve Azure Arc'ı etkinleştirin
Bu bölüm, Ubuntu, Windows, Azure Yerel ve vSphere Kubernetes Service (VKS) üzerinden doğrulanmış ortamlarda küme oluşturma adımlarını sunar.
Ubuntu'da bir K3s Kubernetes kümesi hazırlamak için:
Tek düğümlü veya çok düğümlü bir K3s kümesi oluşturun. Örnekler için bkz . K3s hızlı başlangıç kılavuzu veya K3s ile ilgili projeler.
K3s'ün kurulduğunu
kubectlkontrol et. Aksi takdirde Kubectl'yi Linux'a yükleme yönergelerini izleyin.kubectl version --clientHelm'i Yükleme yönergelerini izleyin.
.kube/configiçinde bir K3s yapılandırma YAML dosyası oluşturun:mkdir ~/.kube sudo KUBECONFIG=~/.kube/config:/etc/rancher/k3s/k3s.yaml kubectl config view --flatten > ~/.kube/merged mv ~/.kube/merged ~/.kube/config chmod 0600 ~/.kube/config export KUBECONFIG=~/.kube/config #switch to k3s context kubectl config use-context default sudo chmod 644 /etc/rancher/k3s/k3s.yamlKullanıcı izleme/örnek sınırlarını artırmak için aşağıdaki komutu çalıştırın.
echo fs.inotify.max_user_instances=8192 | sudo tee -a /etc/sysctl.conf echo fs.inotify.max_user_watches=524288 | sudo tee -a /etc/sysctl.conf sudo sysctl -pDaha iyi performans için dosya tanımlayıcısı sınırını artırın:
echo fs.file-max = 100000 | sudo tee -a /etc/sysctl.conf sudo sysctl -p
K3s kümenizi ark olarak etkinleştirin
Kümenizi uzaktan yönetebilmeniz için Azure Arc'e bağlayın.
Kümenize erişimi
kubectlolan bir makineden, Azure aboneliği için gerekli rollere sahip Microsoft Entra kullanıcı hesabınızla Azure CLI giriş yapın:az loginHerhangi bir noktada cihazınızın kaynağınıza erişmesi için yönetilmesi gerektiği hatası alırsanız, tekrar çalıştırın
az loginve tarayıcı kullanarak etkileşimli olarak giriş yaptığınızdan emin olun.Giriş yaptıktan sonra, Azure CLI tüm aboneliklerinizi gösterir ve varsayılan aboneliğinizi yıldız
*işaretiyle gösterir. Varsayılan aboneliğinizle devam etmek içinEnterseçin. Aksi takdirde, kullanmak istediğiniz Azure aboneliğinin numarasını yazın.Gerekli kaynak sağlayıcılarını aboneliğinize kaydedin.
Not
Bu adımı abonelik başına sadece bir kez yapmanız gerekir. Kaynak sağlayıcılarını kaydetmek için, abonelikteki Katkıda Bulunan ve Sahip rollerinin içerdiği
/register/actionişlemini gerçekleştirme iznine sahip olmanız gerekir. Daha fazla bilgi için bkz. Azure kaynak sağlayıcıları ve türleri.az provider register -n "Microsoft.ExtendedLocation" az provider register -n "Microsoft.Kubernetes" az provider register -n "Microsoft.KubernetesConfiguration" az provider register -n "Microsoft.IoTOperations" az provider register -n "Microsoft.DeviceRegistry" az provider register -n "Microsoft.SecretSyncController"Kubernetes kümenizi Arc-enable ve Azure kaynak grubunuzun bir parçası olarak yönetmek için az connectedk8s connect komutunu kullanın.
az connectedk8s connect --name $CLUSTER_NAME -l $LOCATION --resource-group $RESOURCE_GROUP --subscription $SUBSCRIPTION_ID --enable-oidc-issuer --enable-workload-identity --disable-auto-upgradeAzure Arc planlanmamış güncelleştirmeleri ve Azure IoT İşlemleri bağımlılık olarak kullanan sistem Arc uzantılarını önlemek için, bu komut otomatik sürümü devre dışı bırakır. Bunun yerine, gerektiğinde aracıları el ile yükseltin.
Önemli
Ortamınız bir ara sunucu veya Azure Arc Ağ Geçidi kullanıyorsa,
az connectedk8s connectkomutunu proxy bilgilerinizle değiştirin:- Dışa giden proxy sunucusu kullanarak bağlanma veya Kubernetes kümelerini Azure Arc Gateway kullanarak Azure Arc'a dâhil etme yönergelerini izleyin.
-
169.254.169.254'ı--proxy-skip-rangeparametresineaz connectedk8s connectkomutuna ekleyin. Azure Cihaz Kayıt Defteri yetkilendirme için erişim belirteçlerini almak için bu yerel uç noktayı kullanır.
Azure IoT İşlemleri, güvenilen sertifika gerektiren ara sunucuları desteklemez.
Kümenin verici URL'sini alın.
az connectedk8s show --resource-group $RESOURCE_GROUP --name $CLUSTER_NAME --query oidcIssuerProfile.issuerUrl --output tsvSonraki adımlarda kullanmak için bu komutun çıkışını kaydedin.
Bir K3s yapılandırma dosyası oluşturun.
sudo nano /etc/rancher/k3s/config.yamlAşağıdaki içeriği
config.yamldosyasına ekleyin ve<SERVICE_ACCOUNT_ISSUER>yer tutucusunu kümenizin verici URL’si ile değiştirin.kube-apiserver-arg: - service-account-issuer=<SERVICE_ACCOUNT_ISSUER> - service-account-max-token-expiration=24hDosyayı kaydedin ve nano düzenleyiciden çıkın.
Azure Arc hizmetini Arc kümenizde özel konumla etkinleştirmek için, özel konum nesne kimliğini alın ve bunu OBJECT_ID ortam değişkeni olarak kaydedin. Komutu başarıyla çalıştırmak için Azure CLI'ya bir hizmet yöneticisi değil, bir Microsoft Entra kullanıcı hesabıyla giriş yapmanız gerekir. GUID değerini değiştirmeden aşağıdaki komutu tam olarak yazıldı olarak çalıştırın.
export OBJECT_ID=$(az ad sp show --id bc313c14-388c-4e7d-a58e-70017303ee3b --query id -o tsv)Not
Şu hatayı alırsanız: “'custom-locations' uygulamasının OID'i getirilemiyor.” Özelliği etkinleştirmeden devam edin. İşlemi tamamlamak için ayrıcalık yetersiz", ardından hizmet sorumlunuz özel konumun nesne kimliğini almak için gerekli izinlere sahip olmayabilir. Azure CLI'ya ön koşulları karşılayan bir Microsoft Entra kullanıcı hesabıyla giriş yapın. Daha fazla bilgi için bkz . Özel konumları oluşturma ve yönetme.
Arc kümenizde özel konum özelliğini etkinleştirmek için az connectedk8s enable-features komutunu kullanın. Bu komut, önceki adımda kaydettiğiniz OBJECT_ID ortam değişkenini kullanarak custom-locations-oid parametresinin değerini ayarlar. Kubernetes kümesini dağıttığınız makinede şu komutu çalıştırın:
az connectedk8s enable-features -n $CLUSTER_NAME -g $RESOURCE_GROUP --custom-locations-oid $OBJECT_ID --features cluster-connect custom-locationsK3s'i yeniden başlatın.
systemctl restart k3s
Azure Arc tarafından etkinleştirilen Azure Container Storage'ı yapılandırın
Veri akışı yerel depolama uç noktaları ve medya bağlayıcısı gibi özellikler, yerel verileri bulutla eşitlemek için isteğe bağlı olarak Azure Arc (ACSA) tarafından etkinleştirilen Azure Kapsayıcı Depolama'yı kullanır. ACSA, Azure IoT İşlemleri'ın bir parçası olarak kurulmadığı için ayrı olarak kurmalısınız.
Kubernetes kümenize ACSA'yı nasıl kuracağınızı öğrenmek için:
- Azure Arc tarafından etkinleştirilen Azure Container Storage nedir diye gözden geçirin.
- Linux'u Edge Volumes için hazırlayın öğesini gözden geçirin.
- Azure Arc Edge Volumes tarafından etkinleştirilen Azure Container Storage kurulum adımlarını takip edin.
Sonraki adımlar
artık Azure Arc etkin bir Kubernetes kümeniz olduğuna göre, Azure IoT İşlemleri dağıtabilirsiniz.
- Kendi vereninizi seçin: Azure IoT İşlemleri dağıtmadan önce kümede kendi sertifika vereninizi yapılandırmak istiyorsanız.
- Test kümesine dağıtma: Üretimde dağıtmadan önce hızlı değerlendirme ve test için.
- Bir üretim kümesine dağıtma: Güvenli ayarlara sahip üretime hazır iş yükleri için.