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.
Bu makale, Azure Operatör Hizmet Yöneticisi için bir ağ işlevi işleci (NFO) uzantısının kullanıcı yönetimine yol gösterir. Azure Operatör Nexus platformunun barındırdığı kapsayıcı tabanlı iş yüklerini yönetmek için bu Kubernetes küme uzantısını kullanırsınız.
Nexus Azure Kubernetes Service (NAKS) kümesini eklenti uzantısı için hazır hale getirdikten sonra bu makaledeki komutları çalıştırırsınız. Komutlar, Azure CLI'nın ve kimlik doğrulamasının hedef aboneliğe önceden yüklenip yüklenmeyişini varsayabilir.
NFO uzantısı oluşturma
NFO uzantısı oluşturmak için Azure CLI komutunu az k8s-extension createçalıştırın.
Komut
az k8s-extension create --cluster-name
--cluster-type {connectedClusters}
--extension-type {Microsoft.Azure.HybridNetwork}
--name
--resource-group
--scope {cluster}
--release-namespace {azurehybridnetwork}
--release-train {preview, stable}
--config Microsoft.CustomLocation.ServiceAccount=azurehybridnetwork-networkfunction-operator
[--auto-upgrade {false, true}]
[--config global.networkfunctionextension.enableClusterRegistry={false, true}]
[--config global.networkfunctionextension.enableLocalRegistry={false, true}]
[--config global.networkfunctionextension.enableEarlyLoading={false,true}]
[--config global.networkfunctionextension.clusterRegistry.highAvailability.enabled={true, false}]
[--config global.networkfunctionextension.clusterRegistry.autoScaling.enabled={true, false}]
[--config global.networkfunctionextension.webhook.highAvailability.enabled={true, false}]
[--config global.networkfunctionextension.webhook.autoScaling.enabled={true, false}]
[--config global.networkfunctionextension.clusterRegistry.storageClassName=]
[--config global.networkfunctionextension.clusterRegistry.storageSize=]
[--config global.networkfunctionextension.webhook.pod.mutation.matchConditionExpression=]
[--config global.networkfunctionextension.clusterRegistry.clusterRegistryGCCadence=]
[--config global.networkfunctionextension.clusterRegistry.clusterRegistryGCThreshold=]
[--config global.networkfunctionextension.clusterRegistry.registryService.scale={"small", "medium", "large"}]
[--config networkfunctionextension.manager.scale={"small", "medium", "large"}]
[--version]
Gerekli parametreler
--cluster-name -c
- Kubernetes kümesinin adı.
--cluster-type -t
- Azure Arc kümelerini, Azure Kubernetes Service (AKS) yönetilen kümelerini, Azure Arc gereçlerini veya
provisionedClustersbelirtin. - Kabul edilen değerler:
connectedClusters.
--extension-type
- Uzantı türünün adı.
- Kabul edilen değerler:
Microsoft.Azure.HybridNetwork.
--name -n
- Uzantı örneğinin adı.
--resource-group -g
- Kaynak grubunun adı.
az configure --defaults group=groupnamekullanarak varsayılan grubu yapılandırabilirsiniz.
--config Microsoft.CustomLocation.ServiceAccount=azurehybridnetwork-networkfunction-operator
- Bu yapılandırmayı sağlamanız gerekir.
İsteğe bağlı parametreler
--auto-upgrade
- Uzantı örneğinin ikincil sürümünü otomatik olarak yükseltin.
- Kabul edilen değerler:
false,true. - Varsayılan değer:
true.
--release-train
- Uzantı türü için yayın trenini belirtin.
- Kabul edilen değerler:
preview,stable. - Varsayılan değer:
stable.
--version
- Etkinleştirilmediyse
--auto-upgrade-minor-versionuzantı örneği için yüklenecek açık sürümü belirtin.
İsteğe bağlı özelliğe özgü yapılandırmalar
Yan yükleme
--config global.networkfunctionextension.enableLocalRegistry=
- Bu yapılandırma, artefaktların donanım sürücüsü aracılığıyla uç cihaza teslim edilmesine olanak tanır.
- Kabul edilen değerler:
false,true. - Varsayılan değer:
false.
Pod değiştiren webhook
--config global.networkfunctionextension.webhook.pod.mutation.matchConditionExpression=
Bu yapılandırma isteğe bağlı bir parametredir. Yalnızca kapsayıcı ağ işlevleri (CNFs) ilgili yayın ad alanına yüklendiğinde devreye girer.
Bu yapılandırma, ve
namespaceSelectorskurallarının üzerine daha ayrıntılı denetim ayarlar.Varsayılan değer:
"((object.metadata.namespace != \"kube-system\") || (object.metadata.namespace == \"kube-system\" && has(object.metadata.labels) && (has(object.metadata.labels.app) && (object.metadata.labels.app == \"commissioning\") || (has(object.metadata.labels.name) && object.metadata.labels.name == \"cert-exporter\") || (has(object.metadata.labels.app) && object.metadata.labels.app == \"descheduler\"))))"Başvurulan eşleşme koşulu,
kube-systemad alanında kabul edilen podların yalnızca aşağıdaki etiketlerden en az birine sahip olmaları durumunda değiştirildiğini gösterir:app == "commissioning",app == "descheduler", veyaname == "cert-exporter". Aksi takdirde, bunlar değiştirilmez ve CNF, bileşen veya uygulamanın Helm grafiğine göre kaynağından alınmaya devam eder.Kabul edilen değer: Geçerli herhangi bir Ortak İfade Dili (CEL) ifadesi.
NFO uzantısını yükleme veya güncelleştirme sırasında bu parametreyi ayarlayabilir veya güncelleştirebilirsiniz.
Bu koşul yalnızca,
namespaceSelectorsve kurallarına uygun olarak CNF, bileşeni veya uygulamayı ad alanına yüklerken devreye girer. Bu ad alanında daha fazla pod oluşturursanız, bu koşul uygulanır.
Küme kayıt defteri
--config global.networkfunctionextension.enableClusterRegistry=
- Bu yapılandırma, yapıtları yerel olarak önbelleğe almak için kümede bir kayıt defteri sağlar.
- Varsayılan değerler,
global.networkfunctionextension.enableEarlyLoading=truehariç, gecikmeli yükleme modunu etkinleştirir. - Kabul edilen değerler:
false,true. - Varsayılan değer:
false.
--config global.networkfunctionextension.clusterRegistry.highAvailability.enabled=
- Bu yapılandırma, küme sicili etkinse küme sicilini yüksek kullanılabilirlik (HA) modunda ayarlar.
- Bu yapılandırma, değer
nexus-sharedolarak ayarlandığında AKS önerisine göre bir NAKSfalsebirimi kullanır. - Kayıt defteri pod çoğaltma sayısı en az
3ve en fazla5'dir. - Kabul edilen değerler:
true,false. - Varsayılan değer:
true.
--config global.networkfunctionextension.clusterRegistry.autoScaling.enabled=
- Bu yapılandırma, yatay otomatik ölçeklendirme ile küme kayıt defteri podlarının sağlanmasını gerçekleştirmektedir.
- Kabul edilen değerler:
true,false. - Varsayılan değer:
true.
--config global.networkfunctionextension.webhook.highAvailability.enabled=
- Bu yapılandırma, yüksek kullanılabilirlik için web dönüştürücüsünün birden çok replikasını sağlar.
- Kabul edilen değerler:
true,false. - Varsayılan değer:
true.
--config global.networkfunctionextension.webhook.autoScaling.enabled=
- Bu yapılandırma, webhook podlarını yatay otomatik ölçeklendirme ile donatır.
- Kabul edilen değerler:
true,false. - Varsayılan değer:
true.
--config global.networkfunctionextension.enableEarlyLoading=
- Bu yapılandırma, Helm yüklemesi veya yükseltmesi öncesinde yapıtların küme kayıt defterine erken yüklenmesini sağlar.
- Bu yapılandırmayı yalnızca
global.networkfunctionextension.enableClusterRegistry=trueolduğunda etkinleştirebilirsiniz. - Kabul edilen değerler:
false,true. - Varsayılan değer:
false.
--config global.networkfunctionextension.clusterRegistry.storageClassName=
- Bu yapılandırmayı
global.networkfunctionextension.enableClusterRegistry=trueolduğunda sağlamanız gerekir. -
networkfunctionextensionbu depolama sınıfından yerel önbellek yapıtlarına kalıcı birim talebi (PVC) sağlar. - Platforma özgü değerler:
- AKS:
managed-csi - NAKS (varsayılan):
nexus-shared - NAKS (HA olmayan):
nexus-volume - Azure Stack Edge:
managed-premium
- AKS:
- Varsayılan değer:
nexus-shared.
Not
- Azure Operatör Hizmet Yöneticisi'ni kullanarak bir NAKS kümesini yönetirken, varsayılan parametre değerleri önerilen yapılandırma olarak HA'yı etkinleştirir.
- Aks kümesini Azure Operatör Hizmeti Yöneticisi'ni kullanarak yönetirken, aşağıdaki yapılandırma seçeneklerini kullanarak HA'yı devre dışı bırakmanız gerekir:
--config global.networkfunctionextension.clusterRegistry.highAvailability.enabled=false
--config global.networkfunctionextension.webhook.highAvailability.enabled=false
--config global.networkfunctionextension.clusterRegistry.storageClassName=managed-csi
--config global.networkfunctionextension.clusterRegistry.storageSize=
- Bu yapılandırmayı
global.networkfunctionextension.enableClusterRegistry=trueolduğunda sağlamanız gerekir. - Bu yapılandırma, küme kayıt defteri için ayırdığımız boyutu ayarlar.
- Bu yapılandırma, boyutlandırma için Birimleri Gi ve Ti olarak kullanır.
- Varsayılan değer:
100Gi
--config global.networkfunctionextension.clusterRegistry.clusterRegistryGCCadence=
- Bu yapılandırmayı standart Unix Crontab biçiminde bir zamanlama olarak sağlamanız gerekir.
- Boş dize olarak belirtilen bu yapılandırma, zamanlanmış işi devre dışı bırakır, böylece çöp toplama işlemini devre dışı bırakabilirsiniz.
- Varsayılan değer:
0 0 * * *. İşi her gün bir kez çalıştırır.
--config global.networkfunctionextension.clusterRegistry.clusterRegistryGCThreshold=
- Bu yapılandırma, küme kayıt defteri için çöp toplama işlemini tetikleyen yüzde eşiği değerini belirtir.
- Bu yapılandırma, küme kayıt defteri kullanımı bu değeri aştığında çöp toplama işlemini tetikler.
- Varsayılan değer:
0.
--config global.networkfunctionextension.clusterRegistry.registryService.scale=
Bu yapılandırma, küme kayıt defteri için CPU ve bellek kaynaklarını önceden tanımlanmış bir ölçek seçeneğine ayarlar.
Kabul edilen değerler:
small,medium,large.Varsayılan değer:
medium.Üç ölçeğin de kayıt defteri kaynak belirtimleri aşağıdadır:
- requests: - small: cpu: 100m, memory: 250Mi - medium: cpu: 250m, memory: 500Mi - large: cpu: 500m, memory: 1Gi - limits: - small: cpu: 100m, memory: 2Gi - medium: cpu: 500m, memory: 2Gi - large: cpu: 1, memory: 4Gi
--config networkfunctionextension.manager.scale=
Bu yapılandırma, denetleyici yöneticisi için CPU ve bellek kaynaklarını önceden tanımlanmış bir ölçek seçeneğine ayarlar.
Kabul edilen değerler:
small,medium,large.Varsayılan değer:
small.Üç ölçek için de denetleyici yöneticisi kaynak belirtimleri şunlardır:
- requests: - small: cpu: 100m, memory: 256Mi - medium: cpu: 500m, memory: 512Mi - large: cpu: 1, memory: 1Gi - limits: - small: cpu: 100m, memory: 1Gi - medium: cpu: 1, memory: 2Gi - large: cpu: 2, memory: 4Gi
NFO uzantısını güncelleştirme
NFO uzantısını güncelleştirmek için Azure CLI komutunu az k8s-extension updateçalıştırın:
az k8s-extension update --resource-group
--cluster-name
--cluster-type {connectedClusters}
--extension-type {Microsoft.Azure.HybridNetwork}
--name
--release-namespace {azurehybridnetwork}
--release-train {preview, stable}
--config Microsoft.CustomLocation.ServiceAccount=azurehybridnetwork-networkfunction-operator
[--version] {version-target}
[--config global.networkfunctionextension.enableClusterRegistry={false, true}]
[--config global.networkfunctionextension.enableLocalRegistry={false, true}]
[--config global.networkfunctionextension.enableEarlyLoading={false,true}]
[--config global.networkfunctionextension.clusterRegistry.highAvailability.enabled={true, false}]
[--config global.networkfunctionextension.clusterRegistry.autoScaling.enabled={true, false}]
[--config global.networkfunctionextension.webhook.highAvailability.enabled={true, false}]
[--config global.networkfunctionextension.webhook.autoScaling.enabled={true, false}]
[--config global.networkfunctionextension.clusterRegistry.storageClassName=]
[--config global.networkfunctionextension.clusterRegistry.storageSize=]
[--config global.networkfunctionextension.webhook.pod.mutation.matchConditionExpression=]
[--config global.networkfunctionextension.clusterRegistry.clusterRegistryGCCadence=]
[--config global.networkfunctionextension.clusterRegistry.clusterRegistryGCThreshold=]
NFO uzantısını silme
NFO uzantısını silmek için Azure CLI komutunu az k8s-extension deleteçalıştırın:
az k8s-extension delete --resource-group
--cluster-name
--cluster-type {connectedClusters}
--extension-type {Microsoft.Azure.HybridNetwork}
--name
--release-namespace {azurehybridnetwork}
--release-train {preview, stable}
--config Microsoft.CustomLocation.ServiceAccount=azurehybridnetwork-networkfunction-operator
Örnekler
Otomatik yükseltme ile NFO uzantısı oluşturma:
az k8s-extension create --resource-group myresourcegroup --cluster-name mycluster --name myextension --cluster-type connectedClusters --extension-type Microsoft.Azure.HybridNetwork --scope cluster --config Microsoft.CustomLocation.ServiceAccount=azurehybridnetwork-networkfunction-operator --release-namespace azurehybridnetwork
Sabitlenmiş sürüme sahip bir NFO uzantısı oluşturun:
az k8s-extension create --resource-group myresourcegroup --cluster-name mycluster --name myextension --cluster-type connectedClusters --extension-type Microsoft.Azure.HybridNetwork --auto-upgrade-minor-version false --scope cluster --config Microsoft.CustomLocation.ServiceAccount=azurehybridnetwork-networkfunction-operator --release-namespace azurehybridnetwork --version 1.0.2711-7
NAKS'de küme kayıt defteri (varsayılan gecikmeli yükleme modu) özelliği etkin bir NFO uzantısı oluşturun:
az k8s-extension create --resource-group myresourcegroup --cluster-name mycluster --name myextension --cluster-type connectedClusters --extension-type Microsoft.Azure.HybridNetwork --scope cluster --config Microsoft.CustomLocation.ServiceAccount=azurehybridnetwork-networkfunction-operator --release-namespace azurehybridnetwork --config global.networkfunctionextension.enableClusterRegistry=true --config global.networkfunctionextension.clusterRegistry.storageSize=100Gi
AKS'de küme kayıt defteri (varsayılan gecikmeli yükleme modu) özelliği etkin bir NFO uzantısı oluşturun:
az k8s-extension create --resource-group myresourcegroup --cluster-name mycluster --name myextension --cluster-type connectedClusters --extension-type Microsoft.Azure.HybridNetwork --scope cluster --config Microsoft.CustomLocation.ServiceAccount=azurehybridnetwork-networkfunction-operator --release-namespace azurehybridnetwork --config global.networkfunctionextension.enableClusterRegistry=true --config global.networkfunctionextension.clusterRegistry.highAvailability.enabled=false --config global.networkfunctionextension.clusterRegistry.storageClassName=managed-csi --config global.networkfunctionextension.clusterRegistry.storageSize=100Gi
Küme kayıt defteri (erken yükleme) özelliğinin etkinleştirildiği bir NFO uzantısı oluşturun:
az k8s-extension create --resource-group myresourcegroup --cluster-name mycluster --name myextension --cluster-type connectedClusters --extension-type Microsoft.Azure.HybridNetwork --scope cluster --config Microsoft.CustomLocation.ServiceAccount=azurehybridnetwork-networkfunction-operator --release-namespace azurehybridnetwork --config global.networkfunctionextension.enableClusterRegistry=true --config global.networkfunctionextension.enableEarlyLoading=true --config global.networkfunctionextension.clusterRegistry.storageClassName=managed-csi --config global.networkfunctionextension.clusterRegistry.storageSize=100Gi
Yan yükleme özelliği etkin bir NFO uzantısı oluşturun:
az k8s-extension create --resource-group myresourcegroup --cluster-name mycluster --name myextension --cluster-type connectedClusters --extension-type Microsoft.Azure.HybridNetwork --scope cluster --config Microsoft.CustomLocation.ServiceAccount=azurehybridnetwork-networkfunction-operator --release-namespace azurehybridnetwork --config global.networkfunctionextension.enableLocalRegistry=true
Küme kayıt defterini etkinleştirmek için bir NFO uzantısını güncelleştirin:
az k8s-extension update --resource-group naks-1-rg --cluster-name naks-1 --cluster-type connectedClusters --name networkfunction-operator --extension-type Microsoft.Azure.HybridNetwork --release-namespace azurehybridnetwork --config networkFunctionExtension.EnableManagedInClusterEdgeRegistry=true –-config networkFunctionExtension.EdgeRegistrySizeInGB=1024
NFO uzantısını yeni bir hedef sürüme ulaşmak için güncelleştirin:
az k8s-extension update --resource-group naks-1-rg --cluster-name naks-1 --cluster-type connectedClusters --name networkfunction-operator --extension-type Microsoft.Azure.HybridNetwork --release-namespace azurehybridnetwork --version X.X.XXXX-YYY