Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Azure Kubernetes Fleet Manager se dá použít k vytváření a správě vyrovnávání zatížení více clusterů založeného na DNS pro veřejné úlohy nasazené napříč členskými clustery.
Důležité
Funkce Azure Kubernetes Fleet Manageru ve verzi Preview jsou dostupné na samoobslužné bázi s výslovným souhlasem. Ukázky jsou poskytovány "jak jsou" a "podle aktuální dostupnosti" a jsou vyloučené ze smluv o úrovni služeb a omezené záruky. Verze Preview Azure Kubernetes Fleet Manageru jsou částečně pokryty zákaznickou podporou s vynaložením maximálního úsilí. Proto tyto funkce nejsou určené pro produkční použití.
Naše ukázkové verze datové sítě jsou vydávány přes naše rozhraní API. Pokud nevidíte náhledové objekty, zkontrolujte, zda při interakci s clusterem hubu Fleet Manager vyžadujete rozhraní API networking.fleet.azure.com/v1beta1.
K poskytování veřejného vyrovnávání zatížení v rámci více clusterů pomocí DNS využívá Správce prostředků Fleet Azure Traffic Manager s váženým profilem směrování, aby fungoval jako front-end pro Services export z členských clusterů. Tuto funkci je možné použít pro vyrovnávání zatížení vrstvy 4 i 7.
Správci vozového parku používají kubectl k vytvoření a konfiguraci TrafficManagerProfile a TrafficManagerBackend prostředků v clusteru centra Fleet Manager. Definuje TrafficManagerProfile profil Azure Traffic Manageru, který zahrnuje konfiguraci monitorování stavu koncového bodu s přidruženou TrafficManagerBackend definicí Service pro vyrovnávání zatížení.
Služby v členských clusterech lze přidat do vyrovnávání zatížení vytvořením ServiceExport na clusteru a konfigurací jedinečného názvu hostitele DNS pro Service. Volitelné váhy je možné definovat, které konfigurují chování směrování provozu mezi clustery. Pokud je úloha nasazena pomocí umístění prostředků clusteru Fleet Manageru, název hostitele DNS lze nakonfigurovat při umístění pomocí ResourceOverride.
Vytvoření a konfiguraci přidruženého Traffic Manageru spravuje Fleet Manager, přičemž správci vozového parku mohou řídit celkovou uživatelskou zkušenost pomocí rozhraní Kubernetes API.
TrafficManagerProfile – vlastnosti
Prostředek TrafficManagerProfile poskytuje reprezentaci objektu Kubernetes standardního profilu Azure Traffic Manageru.
apiVersion: networking.fleet.azure.com/v1beta1
kind: TrafficManagerProfile
metadata:
name: myatm
namespace: work
spec:
monitorConfig:
protocol: HTTP
path: /api
port: 8080
intervalInSeconds: 30
timeoutInSeconds: 10
toleratedNumberOfFailures: 3
Mezi důležité vlastnosti, které je potřeba pochopit, patří:
-
name: slouží jako předponatrafficmanager.netDNS pro název DNS. Musí být jedinečný. Pokud se název už používá, nasazení selže. -
namespace: musí být stejný jako odpovídajícíTrafficManagerBackendaServiceprostředky. -
monitorCOnfig: odpovídá standardní konfiguraci monitorování Azure Traffic Manageru. Nepodporované možnosti monitorování koncových bodů Azure Traffic Manageru jsou: vlastní nastavení hlaviček; očekávané stavové kódy.
TrafficManagerBackend – vlastnosti
Prostředek TrafficManagerBackend poskytuje objekt Kubernetes, který slouží k ukládání back-endových koncových bodů, které služba Traffic Manager považuje za příjem provozu. Než se provoz přesměruje do koncového bodu, ServiceExport musí se vytvořit.
apiVersion: networking.fleet.azure.com/v1beta1
kind: TrafficManagerBackend
metadata:
name: app
namespace: work
spec:
profile:
name: myatm
backend:
name: app
weight: 100
Mezi důležité vlastnosti, které je potřeba pochopit, patří:
-
spec/profile/name: musí odpovídat odpovídajícímuTrafficManagerProfile. -
spec/backend/name: Musí odpovídat názvu exportované služby pro vyrovnávání zatížení. -
spec/weight: Volitelná váha (priorita), která se má použít pro tento back-end. Celočíselná hodnota mezi 0 a 1 000. Pokud tento parametr vynecháte, Traffic Manager použije výchozí váhu 1. Chcete-li zakázat směrování provozu, aniž byste odstranili přidružený prostředek profilu Traffic Manager, nastavte na hodnotu '0'. Další informace najdete v tématu Metoda váženého směrování Azure Traffic Manageru.
Vlastnosti ServiceExport
Chcete-li do Traffic Manageru přidat koncový bod pro Service, vytvořte v členském clusteru, který obsahuje službu, zdroj ServiceExport. Prostředek ServiceExport musí být vytvořen ve stejném oboru názvů jako Service, aby byl exportován.
apiVersion: networking.fleet.azure.com/v1alpha1
kind: ServiceExport
metadata:
name: kuard-export
namespace: kuard-demo
annotations:
networking.fleet.azure.com/weight: "50"
Mezi důležité vlastnosti, které je potřeba pochopit, patří:
-
metadata/namespace: musí odpovídat oboru názvůService, které mají být exportovány. -
metadata/annotations/networking.fleet.azure.com/weight: Volitelná váha (priorita), která se má použít pro tento export služby. Celočíselná hodnota mezi 0 a 1 000. Pokud tento parametr vynecháte, Traffic Manager použije výchozí váhu 1. Pokud chcete zakázat směrování provozu bez odstranění přidruženého koncového bodu služby, nastavte na hodnotu 0. Další informace najdete v tématu Metoda váženého směrování Azure Traffic Manageru.
Jedinečný název hostitele DNS prostřednictvím anotace služby
Aby bylo možné přidat záznam Service do Traffic Manageru, musí mít jedinečný název hostitele DNS. Název hostitele DNS lze nastavit podle doporučené metody AKS použití poznámky service.beta.kubernetes.io/azure-dns-label-name , jak je znázorněno.
apiVersion: v1
kind: Service
metadata:
name: kuard-svc
namespace: kuard-demo
labels:
app: kuard
annotations:
service.beta.kubernetes.io/azure-dns-label-name: kuard-demo-cluster-01
spec:
selector:
app: kuard
ports:
- protocol: TCP
port: 80
targetPort: 80
type: LoadBalancer
Označení štítku DNS je možné přepsat pomocí funkce ResourceOverride Fleet Manager, což umožňuje nasadit jedinečné názvy hostitelů v různých clusterech. Další informace najdete v průvodci postupy vyrovnávání zatížení DNS.
Řízení směrování provozu
V této části se podíváme na běžné scénáře řízení směrování provozu mezi clustery.
Distribuce provozu mezi clustery
Pokud chcete službě Traffic Manager umožnit, aby zvážil jakýkoli cluster, aby přijímal provoz, použijte zobrazené definice.
Vytvořte
TrafficManagerBackendprostředek a vynechte vlastnostweight.apiVersion: networking.fleet.azure.com/v1beta1 kind: TrafficManagerBackend metadata: name: app namespace: work spec: profile: name: myatm backend: name: appNa každém clusteru vytvořte
ServiceExporta vynechte vlastnostweight.apiVersion: networking.fleet.azure.com/v1alpha1 kind: ServiceExport metadata: name: kuard-export namespace: kuard-demo
Po nasazení služba Traffic Manager náhodně vybere cluster s ohledem na všechny clustery se stejnou hmotností.
Distribuce provozu mezi clustery s různými váhami
Chcete-li službě Traffic Manager poskytnout rady předvoleb při výběru clusterů, nastavte weight vlastnost u TrafficManagerBackend objektů a ServiceExport objektů.
Vytvořte zdroj
TrafficManagerBackenda nastavte vlastnostweightna100.apiVersion: networking.fleet.azure.com/v1beta1 kind: TrafficManagerBackend metadata: name: app namespace: work spec: profile: name: myatm backend: name: app weight: 100ServiceExportVytvořte a nastavteweightvlastnost na hodnotu představující prioritu Traffic Manageru, kterou byste měli použít při zvažování clusteru pro příjem provozu.apiVersion: networking.fleet.azure.com/v1alpha1 kind: ServiceExport metadata: name: kuard-export namespace: kuard-demo annotations: networking.fleet.azure.com/weight: "40"
Po nasazení bude Traffic Manager upřednostňovat clustery s vyšší váhou. Není nutné, abyste nastavili hodnotu váhy v každém clusteru. Pokud nastavíte stejnou hodnotu váhy ve více než jednom clusteru, Traffic Manager bude tyto clustery považovat za stejné.
Vyřaďte cluster ze směrování provozu
Pokud chcete vyloučit cluster ze směrování provozu, nastavte weight vlastnost 0 na ServiceExport prostředek. Tato váha odebere koncový bod z konfigurace Traffic Manageru.
apiVersion: networking.fleet.azure.com/v1alpha1
kind: ServiceExport
metadata:
name: kuard-export
namespace: kuard-demo
annotations:
networking.fleet.azure.com/weight: "0"
Chování odstranění profilu TrafficManager
TrafficManagerProfile Po odstranění prostředku Kubernetes se odstraní také přidružený Azure Traffic Manager a jeho koncové body a požadavky se už nesměrují do clusterů.
Pokud chcete zastavit směrování provozu, ale zachovat Azure Traffic Manager a jeho koncové body, nastavte vlastnost weight na prostředku 0 na TrafficManagerBackend.
Další kroky
Azure Kubernetes Service