(ELAVULT) Kubernetes-fürt üzembe helyezése Linux-tárolókhoz
Tipp
A Azure Kubernetes Service használó rövid útmutató frissített verziójáért tekintse meg a következő rövid útmutatót: Azure Kubernetes Service -fürt üzembe helyezése.
Figyelmeztetés
Az Azure Container Service (ACS) elavult. Az ACS-hez nem adnak hozzá új szolgáltatásokat vagy funkciókat. Az összes API, portálélmény, CLI-parancs és dokumentáció elavultként van megjelölve.
2017-ben bevezettük az Azure Kubernetes Service (AKS) a Kubernetes felügyeletének, üzembe helyezésének és műveleteinek egyszerűsítéséhez. Ha a Kubernetes vezénylőt használja, 2020. január 31-ig migráljon az AKS-be. Első lépésekért lásd: migrálás Azure Kubernetes Service.
További információkért tekintse meg az Azure Container Service elavulással kapcsolatos bejelentését Azure.com.
Ebben a rövid útmutatóban egy Kubernetes-fürtöt helyezünk üzembe az Azure CLI használatával. Ezután egy webes előtérrendszert és egy Redis-példányt magában foglaló többtárolós alkalmazást helyezünk üzembe és futtatunk a fürtön. Miután végeztünk ezzel, az alkalmazás elérhető lesz az interneten.
Az ebben a dokumentumban használt mintaalkalmazás Python nyelven van megírva. Az itt ismertetett fogalmakkal és lépésekkel bármely tárolórendszerkép üzembe helyezhető egy Kubernetes-fürtön. A projekthez kapcsolódó kód, Docker-fájl és előre létrehozott Kubernetes-jegyzékfájlok a GitHubon érhetőek el.
Ez a rövid útmutató feltételezi, hogy ismeri a Kubernetes alapvető fogalmait. A Kubernetesszel kapcsolatos részletes információkért lásd a Kubernetes dokumentációját.
Ha még nincs Azure-előfizetése, kezdés előtt hozzon létre egy ingyenes fiókot.
Az Azure Cloud Shell használata
Az Azure által üzemeltetett Azure Cloud Shell egy interaktív felület, amelyet a böngészőből használhat. A Bash vagy a PowerShell segítségével is használhatja a Cloud Shellt az Azure-szolgáltatásokhoz. Az ebben a cikkben található kódot a Cloud Shell előtelepített parancsaival is futtathatja, így semmit nem kell a helyi környezetben telepítenie.
Az Azure Cloud Shell indítása:
Beállítás | Példa/hivatkozás |
---|---|
Kattintson a Kipróbálás elemre egy kódblokk jobb felső sarkában. A Kipróbálás lehetőségre kattintással nem másolja a kódot automatikusan a Cloud Shellbe. | |
Látogasson el a https://shell.azure.com webhelyre, vagy kattintson a Cloud Shell indítása gombra a böngészőben. | |
Az Azure Portal jobb felső sarkában található menüben kattintson a Cloud Shell gombra. |
Az ebben a cikkben szereplő kód Azure Cloud Shellben való futtatásához:
Indítsa el a Cloud Shellt.
A kód másolásához válassza az adott kódblokkhoz tartozó Másolás gombot.
Illessze be a kódot a Cloud Shell-munkamenetbe a Ctrl+Shift+V billentyűkombinációval Windows és Linux rendszeren, vagy a Cmd+Shift+V billentyűkombinációval macOS rendszeren.
A kód futtatásához nyomja le az Enter billentyűt.
Ha a CLI helyi telepítését és használatát választja, akkor ehhez a gyorsútmutatóhoz az Azure CLI 2.0.4-es vagy újabb verziójára lesz szükség. A verzió azonosításához futtassa a következőt: az --version
. Ha telepíteni vagy frissíteni szeretne, olvassa el az Azure CLI telepítését ismertető cikket.
Erőforráscsoport létrehozása
Hozzon létre egy erőforráscsoportot az az group create paranccsal. Az Azure-erőforráscsoport olyan logikai csoport, amelyben az Azure-erőforrások üzembe helyezése és kezelése zajlik.
A következő példában létrehozunk egy myResourceGroup nevű erőforráscsoportot a westeurope helyen.
az group create --name myResourceGroup --location westeurope
Kimenet:
{
"id": "/subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/myResourceGroup",
"location": "westeurope",
"managedBy": null,
"name": "myResourceGroup",
"properties": {
"provisioningState": "Succeeded"
},
"tags": null
}
Kubernetes-fürt létrehozása
Hozzon létre egy Kubernetes-fürtöt az Azure Container Service-ben az az acs create paranccsal. A következő példa egy myK8sCluster nevű fürtöt hoz létre egy Linux-főcsomóponttal és három Linux-ügyfélcsomóponttal.
az acs create --orchestrator-type kubernetes --resource-group myResourceGroup --name myK8sCluster --generate-ssh-keys
Egyes esetekben – például korlátozott próbaverziónál – az Azure-előfizetés korlátozott hozzáféréssel rendelkezik az Azure-erőforrásokhoz. Ha az üzembe helyezés az elérhető magok korlátozott száma miatt hiúsul meg, csökkentse az alapértelmezett ügynökök számát az --agent-count 1
az az acs create parancshoz történő hozzáadásával.
Néhány perc múlva befejeződik a parancs végrehajtása, és visszaadja a fürttel kapcsolatos adatokat JSON formátumban.
Csatlakozás a fürthöz
Kubernetes-fürtök kezeléséhez használja a kubectl eszközt, a Kubernetes parancssori ügyfelét.
Ha az Azure Cloud Shellt használja, a kubectl már telepítve van. Ha helyileg szeretné telepíteni, használja az az acs kubernetes install-cli parancsot.
A kubectl a Kubernetes-fürthöz való csatlakozásra konfigurálásához futtassa az az acs kubernetes get-credentials parancsot. Ebben a lépésben a rendszer hitelesítő adatokat tölt le, és konfigurálja a Kubernetes parancssori felületét azok használatára.
az acs kubernetes get-credentials --resource-group=myResourceGroup --name=myK8sCluster
A fürthöz való csatlakozás ellenőrzéséhez használja a kubectl get parancsot a fürtcsomópontok listájának lekéréséhez.
kubectl get nodes
Kimenet:
NAME STATUS AGE VERSION
k8s-agent-14ad53a1-0 Ready 10m v1.6.6
k8s-agent-14ad53a1-1 Ready 10m v1.6.6
k8s-agent-14ad53a1-2 Ready 10m v1.6.6
k8s-master-14ad53a1-0 Ready,SchedulingDisabled 10m v1.6.6
Az alkalmazás futtatása
A Kubernetes-jegyzékfájl meghatározza a fürt célállapotát, például azt, hogy milyen tárolórendszerképeknek kell futniuk. Ebben a példában egy jegyzékfájlt használunk az Azure Vote alkalmazás futtatásához szükséges összes objektum létrehozásához.
Hozzon létre egy azure-vote.yml
nevű fájlt, és másolja bele a következő YAML-kódot. Ha az Azure Cloud Shellben dolgozik, ez a fájl a vi vagy a Nano segítségével hozható létre, ugyanúgy, mint egy virtuális vagy fizikai rendszeren.
apiVersion: apps/v1beta1
kind: Deployment
metadata:
name: azure-vote-back
spec:
replicas: 1
template:
metadata:
labels:
app: azure-vote-back
spec:
containers:
- name: azure-vote-back
image: redis
ports:
- containerPort: 6379
name: redis
---
apiVersion: v1
kind: Service
metadata:
name: azure-vote-back
spec:
ports:
- port: 6379
selector:
app: azure-vote-back
---
apiVersion: apps/v1beta1
kind: Deployment
metadata:
name: azure-vote-front
spec:
replicas: 1
template:
metadata:
labels:
app: azure-vote-front
spec:
containers:
- name: azure-vote-front
image: microsoft/azure-vote-front:v1
ports:
- containerPort: 80
env:
- name: REDIS
value: "azure-vote-back"
---
apiVersion: v1
kind: Service
metadata:
name: azure-vote-front
spec:
type: LoadBalancer
ports:
- port: 80
selector:
app: azure-vote-front
Az alkalmazást a kubectl create paranccsal futtathatja.
kubectl create -f azure-vote.yml
Kimenet:
deployment "azure-vote-back" created
service "azure-vote-back" created
deployment "azure-vote-front" created
service "azure-vote-front" created
Az alkalmazás tesztelése
Az alkalmazás futtatásakor a rendszer létrehoz egy Kubernetes-szolgáltatást, amely közzéteszi az alkalmazás-előteret az interneten. A folyamat eltarthat pár percig.
A folyamat állapotának monitorozásához használja kubectl get service parancsot a --watch
argumentummal.
kubectl get service azure-vote-front --watch
Kezdetben az azure-vote-front szolgáltatás EXTERNAL-IP értéke pending állapotú. Miután az EXTERNAL-IP cím pending állapotról egy IP-címre változik, a CTRL-C
billentyűparanccsal állítsa le a kubectl figyelési folyamatát.
azure-vote-front 10.0.34.242 <pending> 80:30676/TCP 7s
azure-vote-front 10.0.34.242 52.179.23.131 80:30676/TCP 2m
Most a külső IP-címre léphet az Azure Vote alkalmazás megtekintéséhez.
Fürt törlése
Ha a fürtre már nincs szükség, az az group delete paranccsal törölheti az erőforráscsoportot, a tárolószolgáltatást és az összes kapcsolódó erőforrást.
az group delete --name myResourceGroup --yes --no-wait
A kód letöltése
Ebben a rövid útmutatóban előre elkészített tárolórendszerképekkel hoztunk létre egy üzemelő Kubernetes-példányt. A kapcsolódó alkalmazáskód, Docker-fájl és Kubernetes-jegyzékfájl a GitHubon érhetőek el.
https://github.com/Azure-Samples/azure-voting-app-redis
Következő lépések
Ebben a rövid útmutatóban egy Kubernetes-fürtöt és azon egy többtárolós alkalmazást helyezett üzembe.
Az Azure Container Service-szel kapcsolatos további információkért és a kódtól az üzembe helyezésig terjedő teljes útmutatóért folytassa a Kubernetes-fürtöket bemutató oktatóanyaggal.