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.
V tomto kurzu se naučíte, jak nastavit místní sdílený Edge Volume. Tento typ objemu nabízí úložiště s možností čtení a zápisu mnoha dat, které je lokální pro váš Kubernetes cluster. Tento typ sdíleného úložiště zůstává nezávislý na cloudové infrastruktuře, takže je ideální pro pomocné místo, dočasné úložiště a místně trvalá data nevhodná pro cloudové cíle. Je to také dobrý cíl pro data, s nimiž se aktivně pracuje, mění nebo zpracovává na okraji sítě.
Tento kurz se zabývá následujícími úlohami:
- Vytvoření místního sdíleného hraničního svazku PVC
- Vytvoření ukázkového nasazení
- Připojte se k vašemu podu
- Napište ukázkový soubor
Požadavky
- Tento kurz předpokládá, že už máte cluster Kubernetes s podporou Arc. Pokud chcete připojit existující cluster Kubernetes ke službě Azure Arc, přečtěte si téma Připojení existujícího clusteru Kubernetes k Azure Arc.
- Už byste měli mít nainstalované rozšíření Azure Container Storage. Pokud jste to neudělali, přečtěte si téma Instalace svazků Edge.
Vytvoření místního sdíleného hraničního svazku PVC
Tato část vytvoří deklaraci Trvalého Svazkového Nároku (PVC) pro váš místní sdílený svazek. Určíte, kolik místa chcete pro tento svazek zřídit.
Vytvořte soubor s názvem localSharedPVC.yaml s následujícím obsahem. Upravte hodnotu metadata.name s názvem pro vaši deklaraci trvalého svazku. Potom na řádku 8 zadejte obor názvů, který odpovídá zamýšlenému cílovému podu. Hodnota metadata.name se odkazuje na poslední řádek deploymentExample.yaml v dalším kroku. Parametr spec.resources.requests.storage určuje velikost trvalého svazku. V tomto příkladu je to 2 GB, ale můžete ho upravit tak, aby vyhovoval vašim potřebám:
Poznámka:
Používejte jenom malá písmena a pomlčky. Další informace najdete v dokumentaci k pojmenování objektů Kubernetes.
kind: PersistentVolumeClaim
apiVersion: v1
metadata:
### Create a name for your PVC ###
name: <create-a-pvc-name-here>
### Use a namespace that matches your intended consuming pod, or "default" ###
namespace: <intended-consuming-pod-or-default-here>
spec:
accessModes:
- ReadWriteMany
resources:
requests:
storage: 2Gi
storageClassName: unbacked-sc
Potom spuštěním tohoto příkazu použijte soubor YAML a vytvořte PVC:
kubectl apply -f "localSharedPVC.yaml"
Vytvořte ukázkové nasazení nebo použijte vlastní
Pokud už máte aplikaci k nasazení, můžete ji použít tady. Kvůli jednoduchosti a zahájení jsme sem zahrnuli ukázkové nasazení. Pokud chcete vytvořit nasazení pomocí naší ukázkové konfigurace, vytvořte soubor s názvem deploymentExample.yaml s následujícím obsahem. Přidejte hodnoty pro containers.name a volumes.persistentVolumeClaim.claimName. Parametr spec.replicas určuje počet podů replik, které se mají vytvořit. V tomto příkladu je to 2, ale můžete ho upravit tak, aby vyhovoval vašim potřebám:
Poznámka:
Používejte jenom malá písmena a pomlčky. Další informace najdete v dokumentaci k pojmenování objektů Kubernetes.
apiVersion: apps/v1
kind: Deployment
metadata:
name: localsharededgevol-deployment ### This will need to be unique for every volume you choose to create
spec:
replicas: 2
selector:
matchLabels:
name: wyvern-testclientdeployment
template:
metadata:
name: wyvern-testclientdeployment
labels:
name: wyvern-testclientdeployment
spec:
affinity:
podAntiAffinity:
requiredDuringSchedulingIgnoredDuringExecution:
- labelSelector:
matchExpressions:
- key: app
operator: In
values:
- wyvern-testclientdeployment
topologyKey: kubernetes.io/hostname
containers:
### Specify the container in which to launch the busy box. ###
- name: <create-a-container-name-here>
image: 'mcr.microsoft.com/mirror/docker/library/busybox:1.35'
command:
- "/bin/sh"
- "-c"
- "dd if=/dev/urandom of=/data/acsalocalsharedtestfile count=16 bs=1M && while true; do ls /data &>/dev/null || break; sleep 1; done"
volumeMounts:
### This name must match the following volumes::name attribute ###
- name: wyvern-volume
### This mountPath is where the PVC will be attached to the pod's filesystem ###
mountPath: /data
volumes:
### User-defined name that is used to link the volumeMounts. This name must match volumeMounts::name as previously specified. ###
- name: wyvern-volume
persistentVolumeClaim:
### This claimName must refer to your PVC metadata::name from lsevPVC.yaml.
claimName: <your-pvc-metadata-name-from-line-5-of-pvc-yaml>
Potom spuštěním tohoto příkazu použijte soubor YAML a vytvořte nasazení:
kubectl apply -f "deploymentExample.yaml"
Připojte se k vašemu podu
Spusťte kubectl get pods, abyste našli název vašeho podu. Zkopírujte tento název, protože ho potřebujete v dalším kroku.
Poznámka:
Vzhledem k tomu, že spec::replicas z deploymentExample.yaml byl zadán jako 2, dva pody se zobrazí pomocí kubectl get pods. Pro další krok můžete použít název pod.
Spusťte následující příkaz a nahraďte POD_NAME_HERE zkopírovanou hodnotou z předchozího kroku:
kubectl exec -it POD_NAME_HERE -- sh
Změňte adresáře na /data cestu připojení, jak je uvedeno v souboru deploymentExample.yaml.
Napište ukázkový soubor
Teď, když jste připojeni k podu a nacházíte se v připojovací cestě, všechny soubory, které zde uložíte, se zobrazí ve vašem svazku.
Například vytvořte soubor s názvem file1.txt a zapište do něj pomocí echo "Hello World" > file1.txt.
Teď vidíte, že soubor, který jste napsali, je v adresáři.
Další kroky
Po dokončení těchto kroků začněte monitorovat nasazení pomocí služby Azure Monitor a monitorování Kubernetes nebo monitorování třetích stran pomocí nástroje Prometheus a Grafana.