Azure Arc-kompatibilis Kubernetes-fürtbővítmények üzembe helyezése és kezelése

Az Arc-kompatibilis Kubernetes-fürtökben bővítménypéldányokat hozhat létre a szükséges és választható paraméterek beállításával, beleértve a frissítésekhez és konfigurációkhoz kapcsolódó beállításokat. Bővítménypéldányokat is megtekinthet, listázhat, frissíthet és törölhet.

Mielőtt hozzákezdene, olvassa el az Arc-kompatibilis Kubernetes-fürtbővítmények elméleti áttekintését, és tekintse át a jelenleg elérhető bővítmények listáját.

Előfeltételek

  • Az Azure CLI legújabb verziója.

  • A és k8s-extension az connectedk8s Azure CLI-bővítmények legújabb verziói. Telepítse ezeket a bővítményeket a következő parancsok futtatásával:

    az extension add --name connectedk8s
    az extension add --name k8s-extension
    

    Ha a bővítmények és k8s-extension a connectedk8s bővítmények már telepítve vannak, győződjön meg arról, hogy a legújabb verzióra vannak frissítve az alábbi parancsokkal:

    az extension update --name connectedk8s
    az extension update --name k8s-extension
    
  • Meglévő Azure Arc-kompatibilis Kubernetes-fürt, legalább egy operációs rendszer- és architektúratípusú linux/amd64csomóponttal. A Flux (GitOps) üzembe helyezése esetén egy ARM64-alapú fürtöt használhat csomópont nélküllinux/amd64.

Bővítménypéldány létrehozása

Új bővítménypéldány létrehozásához használja k8s-extension createa szükséges paraméterek értékeit.

Ez a példa létrehoz egy Azure Monitor Container Elemzések bővítménypéldányt egy Azure Arc-kompatibilis Kubernetes-fürtön:

az k8s-extension create --name azuremonitor-containers  --extension-type Microsoft.AzureMonitor.Containers --scope cluster --cluster-name <clusterName> --resource-group <resourceGroupName> --cluster-type connectedClusters

Kimeneti:

{
  "autoUpgradeMinorVersion": true,
  "configurationProtectedSettings": null,
  "configurationSettings": {
    "logAnalyticsWorkspaceResourceID": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourcegroups/defaultresourcegroup-eus/providers/microsoft.operationalinsights/workspaces/defaultworkspace-xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx-eus"
  },
  "creationTime": "2021-04-02T12:13:06.7534628+00:00",
  "errorInfo": {
    "code": null,
    "message": null
  },
  "extensionType": "microsoft.azuremonitor.containers",
  "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/demo/providers/Microsoft.Kubernetes/connectedClusters/demo/providers/Microsoft.KubernetesConfiguration/extensions/azuremonitor-containers",
  "identity": null,
  "installState": "Pending",
  "lastModifiedTime": "2021-04-02T12:13:06.753463+00:00",
  "lastStatusTime": null,
  "name": "azuremonitor-containers",
  "releaseTrain": "Stable",
  "resourceGroup": "demo",
  "scope": {
    "cluster": {
      "releaseNamespace": "azuremonitor-containers"
    },
    "namespace": null
  },
  "statuses": [],
  "systemData": null,
  "type": "Microsoft.KubernetesConfiguration/extensions",
  "version": "2.8.2"
}

Feljegyzés

A szolgáltatás 48 óránál hosszabb ideig nem tudja megőrizni a bizalmas adatokat. Ha az Azure Arc-kompatibilis Kubernetes-ügynökök 48 óránál hosszabb ideig nem rendelkeznek hálózati kapcsolattal, és nem tudják meghatározni, hogy létre kell-e hozni egy bővítményt a fürtön, a bővítmény állapotra Failed vált. Ha ez megtörténik, újra kell futtatnia k8s-extension create egy új Bővítmény Azure-erőforrás létrehozásához.

Az Azure Monitor Container Elemzések egy egytonos bővítmény (fürtönként csak egy szükséges). A bővítményeken keresztüli telepítés előtt törölnie kell az Azure Monitor Container Elemzések korábbi Helm-diagramtelepítéseit (bővítmények nélkül). A Futtatás az k8s-extension createelőtt kövesse a Helm-diagram törlésére vonatkozó utasításokat.

Kötelező paraméterek

Bővítménypéldány létrehozásakor az k8s-extension create a következő paraméterek szükségesek.

Paraméter neve Leírás
--name A bővítménypéldány neve
--extension-type A fürtre telepíteni kívánt bővítmény típusa. Például: Microsoft.AzureMonitor.Containers, microsoft.azuredefender.kubernetes
--scope A bővítmény telepítésének hatóköre: cluster vagy namespace
--cluster-name Annak az Azure Arc-kompatibilis Kubernetes-erőforrásnak a neve, amelyen létre kell hozni a bővítménypéldányt
--resource-group Az Azure Arc-kompatibilis Kubernetes-erőforrást tartalmazó erőforráscsoport
--cluster-type Az a fürttípus, amelyen létre kell hozni a bővítménypéldányt. A legtöbb forgatókönyv esetében használja connectedClustersaz Azure Arc-kompatibilis Kubernetes-fürtöknek megfelelőt.

Választható paraméterek

Szükség szerint használjon egy vagy több választható paramétert a forgatókönyvekhez, valamint a szükséges paramétereket.

Feljegyzés

Dönthet úgy, hogy automatikusan frissíti a bővítménypéldányt a legújabb alverzióra és javításra a beállítással auto-upgrade-minor-versiontrue, vagy manuálisan is beállíthatja a bővítménypéldány verzióját a --version paraméterrel. Javasoljuk, hogy engedélyezze az automatikus frissítéseket az alverziókhoz és a javításokhoz, hogy mindig a legújabb biztonsági javításokkal és képességekkel rendelkezzen.

Mivel a főverzió-frissítések kompatibilitástörő módosításokat is tartalmazhatnak, a bővítménypéldányok új főverzióinak automatikus frissítései nem támogatottak. Megadhatja, hogy mikor frissítse manuálisan a bővítménypéldányokat egy új főverzióra.

Paraméter neve Leírás
--auto-upgrade-minor-version Logikai tulajdonság, amely meghatározza, hogy a bővítmény alverziója automatikusan frissül-e. Az alapértelmezett beállítás: true. Ha ez a paraméter be van állítva true, nem állíthatja be a version paramétert, mivel a verzió dinamikusan frissül. Ha be van falseállítva, a bővítmény nem frissül automatikusan, még a javításverziók esetében sem.
--version A telepíteni kívánt bővítmény verziója (a bővítménypéldány rögzítéséhez megadott verzió). Ha be van állítva, nem szabad megadniauto-upgrade-minor-version.true
--configuration-settings Gépház, amelyeket át lehet adni a bővítménynek a funkció szabályozásához. Ezeket a paraméternév után térelválasztó key=value párként adja át a rendszer. Ha ezt a paramétert használja a parancs, akkor --configuration-settings-file nem használható ugyanabban a parancsban.
--configuration-settings-file A konfigurációs beállítások bővítménybe való továbbításához használandó párokat tartalmazó key=value JSON-fájl elérési útja. Ha ezt a paramétert használja a parancs, akkor --configuration-settings nem használható ugyanabban a parancsban.
--configuration-protected-settings Gépház, amelyek nem olvashatók GET be API-hívások vagy az k8s-extension show parancsok. Jellemzően bizalmas beállítások átadására szolgálnak. Ezeket a paraméternév után térelválasztó key=value párként adja át a rendszer. Ha ezt a paramétert használja a parancs, akkor --configuration-protected-settings-file nem használható ugyanabban a parancsban.
--configuration-protected-settings-file Egy JSON-fájl elérési útja párokkal key=value , amelyek a bizalmas beállítások bővítménybe való továbbításához használhatók. Ha ezt a paramétert használja a parancs, akkor --configuration-protected-settings nem használható ugyanabban a parancsban.
--release-namespace Ez a paraméter azt a névteret jelzi, amelyen belül a kiadás létrejön. Csak akkor releváns, ha scope be van állítva a következőre cluster: .
--release-train A bővítményszerzők különböző kiadási vonatokon, például Stable, Previewstb. tehetnek közzé verziókat. Ha ez a paraméter nincs explicit módon beállítva, Stable akkor a rendszer alapértelmezés szerint használja.
--target-namespace Azt a névteret jelzi, amelyen belül a kiadás létrejön. A bővítménypéldányhoz létrehozott rendszerfiók engedélye erre a névtérre lesz korlátozva. Csak akkor releváns, ha scope be van állítva a következőre namespace: .

Bővítmény részleteinek megjelenítése

Egy jelenleg telepített bővítménypéldány részleteinek megtekintéséhez használja k8s-extension showa kötelező paraméterek értékeit.

az k8s-extension show --name azuremonitor-containers --cluster-name <clusterName> --resource-group <resourceGroupName> --cluster-type connectedClusters

Kimeneti:

{
  "autoUpgradeMinorVersion": true,
  "configurationProtectedSettings": null,
  "configurationSettings": {
    "logAnalyticsWorkspaceResourceID": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourcegroups/defaultresourcegroup-eus/providers/microsoft.operationalinsights/workspaces/defaultworkspace-xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx-eus"
  },
  "creationTime": "2021-04-02T12:13:06.7534628+00:00",
  "errorInfo": {
    "code": null,
    "message": null
  },
  "extensionType": "microsoft.azuremonitor.containers",
  "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/demo/providers/Microsoft.Kubernetes/connectedClusters/demo/providers/Microsoft.KubernetesConfiguration/extensions/azuremonitor-containers",
  "identity": null,
  "installState": "Installed",
  "lastModifiedTime": "2021-04-02T12:13:06.753463+00:00",
  "lastStatusTime": "2021-04-02T12:13:49.636+00:00",
  "name": "azuremonitor-containers",
  "releaseTrain": "Stable",
  "resourceGroup": "demo",
  "scope": {
    "cluster": {
      "releaseNamespace": "azuremonitor-containers"
    },
    "namespace": null
  },
  "statuses": [],
  "systemData": null,
  "type": "Microsoft.KubernetesConfiguration/extensions",
  "version": "2.8.2"
}

A fürtre telepített összes bővítmény listázása

A fürtön telepített összes bővítmény listájának megtekintéséhez használja k8s-extension lista kötelező paraméterek értékeit.

az k8s-extension list --cluster-name <clusterName> --resource-group <resourceGroupName> --cluster-type connectedClusters

Kimeneti:

[
  {
    "autoUpgradeMinorVersion": true,
    "creationTime": "2020-09-15T02:26:03.5519523+00:00",
    "errorInfo": {
      "code": null,
      "message": null
    },
    "extensionType": "Microsoft.AzureMonitor.Containers",
    "id": "/subscriptions/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx/resourceGroups/myRg/providers/Microsoft.Kubernetes/connectedClusters/myCluster/providers/Microsoft.KubernetesConfiguration/extensions/myExtInstanceName",
    "identity": null,
    "installState": "Pending",
    "lastModifiedTime": "2020-09-15T02:48:45.6469664+00:00",
    "lastStatusTime": null,
    "name": "myExtInstanceName",
    "releaseTrain": "Stable",
    "resourceGroup": "myRG",
    "scope": {
      "cluster": {
        "releaseNamespace": "myExtInstanceName1"
      }
    },
    "statuses": [],
    "type": "Microsoft.KubernetesConfiguration/extensions",
    "version": "0.1.0"
  },
  {
    "autoUpgradeMinorVersion": true,
    "creationTime": "2020-09-02T00:41:16.8005159+00:00",
    "errorInfo": {
      "code": null,
      "message": null
    },
    "extensionType": "microsoft.azuredefender.kubernetes",
    "id": "/subscriptions/0e849346-4343-582b-95a3-e40e6a648ae1/resourceGroups/myRg/providers/Microsoft.Kubernetes/connectedClusters/myCluster/providers/Microsoft.KubernetesConfiguration/extensions/defender",
    "identity": null,
    "installState": "Pending",
    "lastModifiedTime": "2020-09-02T00:41:16.8005162+00:00",
    "lastStatusTime": null,
    "name": "microsoft.azuredefender.kubernetes",
    "releaseTrain": "Stable",
    "resourceGroup": "myRg",
    "scope": {
      "cluster": {
        "releaseNamespace": "myExtInstanceName2"
      }
    },
    "type": "Microsoft.KubernetesConfiguration/extensions",
    "version": "0.1.0"
  }
]

Bővítménypéldány frissítése

Feljegyzés

Az adott bővítménytípus dokumentációjában megismerheti az adott beállításokat --configuration-settings , és --configuration-protected-settings frissíthető. Az --configuration-protected-settingsösszes beállítás várhatóan meg lesz adva, még akkor is, ha csak egy beállítás van frissítve. Ha ezek közül a beállítások közül bármelyik hiányzik, a rendszer elavultnak és töröltnek tekinti ezeket a beállításokat.

Meglévő bővítménypéldány frissítéséhez használja k8s-extension updatea kötelező és nem kötelező paraméterek értékeit. A kötelező és választható paraméterek kissé eltérnek a bővítménypéldány létrehozásához használt paraméterekétől.

Ez a auto-upgrade-minor-version példa az Azure Machine Tanulás bővítménypéldány beállítását a következőre truefrissíti:

az k8s-extension update --name azureml --extension-type Microsoft.AzureML.Kubernetes --scope cluster --cluster-name <clusterName> --resource-group <resourceGroupName> --auto-upgrade-minor-version true --cluster-type managedClusters

A frissítéshez szükséges paraméterek

Paraméter neve Leírás
--name A bővítménypéldány neve
--cluster-name Annak a fürtnek a neve, amelyen létre kell hozni a bővítménypéldányt
--resource-group A fürtöt tartalmazó erőforráscsoport
--cluster-type Az a fürttípus, amelyen létre kell hozni a bővítménypéldányt. Azure Arc-kompatibilis Kubernetes-fürtök esetén használja a következőt connectedClusters: . AKS-fürtök esetén használja a következőt managedClusters: .

Nem kötelező paraméterek a frissítéshez

Paraméter neve Leírás
--auto-upgrade-minor-version Logikai tulajdonság, amely meghatározza, hogy a bővítmény alverziója automatikusan frissül-e. Az alapértelmezett beállítás: true. Ha ez a paraméter igaz értékre van állítva, nem állíthatja be a version paramétert, mivel a verzió dinamikusan frissül. Ha be van falseállítva, a bővítmény nem frissül automatikusan, még a javításverziók esetében sem.
--version A telepíteni kívánt bővítmény verziója (a bővítménypéldány rögzítéséhez megadott verzió). Nem adható meg, ha az automatikus frissítés alverziója be van állítva true.
--configuration-settings Gépház, amelyeket át lehet adni a bővítménynek a funkció szabályozásához. Ezeket a paraméternév után térelválasztó key=value párként adja át a rendszer. Ha ezt a paramétert használja a parancs, akkor --configuration-settings-file nem használható ugyanabban a parancsban. Csak a frissítést igénylő beállításokat kell megadni. A megadott beállítások a megadott értékekre lesznek lecserélve.
--configuration-settings-file A JSON-fájl elérési útja a bővítmény konfigurációs beállításainak átadásához használandó párokkal key=value . Ha ezt a paramétert használja a parancs, akkor --configuration-settings nem használható ugyanabban a parancsban.
--configuration-protected-settings Gépház, amelyek nem olvashatók GET be API-hívások vagy az k8s-extension show parancsok. Jellemzően bizalmas beállítások átadására szolgálnak. Ezeket a paraméternév után térelválasztó key=value párként adja át a rendszer. Ha ezt a paramétert használja a parancs, akkor --configuration-protected-settings-file nem használható ugyanabban a parancsban. A védett beállítások frissítésekor a rendszer minden védett beállítást meg fog adni. Ha ezek közül a beállítások közül bármelyik hiányzik, a rendszer elavultnak és töröltnek tekinti ezeket a beállításokat.
--configuration-protected-settings-file Egy JSON-fájl elérési útja párokkal key=value a bővítmény bizalmas beállításainak átadásához. Ha ezt a paramétert használja a parancs, akkor --configuration-protected-settings nem használható ugyanabban a parancsban.
--scope A bővítmény telepítésének hatóköre – cluster vagy namespace.
--release-train A bővítményszerzők különböző kiadási vonatokon, például Stable, Previewstb. tehetnek közzé verziókat. Ha ez a paraméter nincs explicit módon beállítva, Stable akkor a rendszer alapértelmezés szerint használja.

Bővítménypéldány frissítése

Ahogy korábban említettük, ha igaz értékre állítja auto-upgrade-minor-version be a bővítményt, a rendszer automatikusan frissíti a bővítményt egy új alverzió megjelenésekor. A legtöbb forgatókönyv esetében javasoljuk az automatikus frissítések engedélyezését. Ha hamis értékre van állítva auto-upgrade-minor-version , manuálisan kell frissítenie a bővítményt, ha újabb verziót szeretne.

A bővítmények új fő példányának beszerzéséhez manuális frissítésre is szükség van. A főverzió-frissítések váratlan kompatibilitástörő változásainak elkerülése érdekében kiválaszthatja, hogy mikor frissítsen.

A bővítménypéldány manuális frissítéséhez használja k8s-extension update és állítsa be a version paramétert egy verzió megadásához.

Ez a példa frissíti az Azure Machine Tanulás bővítménypéldányt az x.y.z verzióra:

az k8s-extension update --cluster-name <clusterName> --resource-group <resourceGroupName> --cluster-type connectedClusters --name azureml --version x.y.z

Bővítménypéldány törlése

Egy fürt bővítménypéldányának törléséhez használja k8s-extension deletea kötelező paraméterek értékeit:

az k8s-extension delete --name azuremonitor-containers --cluster-name <clusterName> --resource-group <resourceGroupName> --cluster-type connectedClusters

Feljegyzés

A bővítményt képviselő Azure-erőforrás azonnal törlődik. A bővítményhez társított fürt Helm-kiadása csak akkor törlődik, ha a Kubernetes-fürtön futó ügynökök hálózati kapcsolattal rendelkeznek, és újra elérhetik az Azure-szolgáltatásokat a kívánt állapot lekéréséhez.

Következő lépések