Místní sdílené svazky Edge
Tento článek popisuje konfiguraci místních sdílených hraničních svazků (vysoce dostupné, odolné místní úložiště).
Co je místní sdílený svazek Edge?
Funkce Místních sdílených svazků Edge poskytuje vysoce dostupné úložiště podporující převzetí služeb při selhání, místní úložiště pro cluster Kubernetes. 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, která můžou být pro cíle cloudu nevhodná.
Vytvoření trvalých deklarací trvalého svazku sdíleného hraničního zařízení (PVC) a konfigurace podu proti PVC
Vytvořte soubor s názvem
localSharedPVC.yaml
s následujícím obsahem.metadata.name
Upravte hodnotu názvem deklarace trvalého svazku. Potom na řádku 8 zadejte obor názvů, který odpovídá zamýšlenému využití podu. Hodnotametadata.name
se odkazuje na poslední řádekdeploymentExample.yaml
v dalším kroku. Parametrspec.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
Vytvořte soubor s názvem
deploymentExample.yaml
s následujícím obsahem. Sčítání hodnot procontainers.name
avolumes.persistentVolumeClaim.claimName
. Parametrspec.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>
Pokud chcete použít tyto soubory YAML, spusťte:
kubectl apply -f "localSharedPVC.yaml" kubectl apply -f "deploymentExample.yaml"
Spuštěním
kubectl get pods
vyhledejte název podu. Zkopírujte tento název, protože ho potřebujete v dalším kroku.Poznámka:
Vzhledem k tomu, že
spec::replicas
bylodeploymentExample.yaml
zadáno jako2
, dva pody se zobrazí pomocíkubectl get pods
. Pro další krok můžete zvolit název podu, který chcete použít.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 vdeploymentExample.yaml
souboru .Například vytvořte soubor s názvem
file1.txt
a zapište do něj pomocíecho "Hello World" > file1.txt
.
Po dokončení předchozích 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.