Tworzenie i usuwanie zasobników
Dotyczy: usługa AKS w usłudze Azure Stack HCI 22H2, AKS w systemie Windows Server
Platforma Kubernetes używa zasobników do uruchamiania wystąpienia aplikacji. W tym artykule opisano sposób tworzenia i usuwania zasobników podczas zarządzania obciążeniami w usłudze AKS włączonej przez usługę Azure Arc.
Zasobnik reprezentuje pojedyncze wystąpienie aplikacji. Każdy zasobnik ma co najmniej jeden kontener wdrożony razem na jednym hoście. Zasobnik to najmniejsza jednostka wykonywania na platformie Kubernetes. Wewnętrzny adres IP i port są przypisywane do zasobnika, za pomocą którego kontenery w zasobniku mogą współdzielić wspólny magazyn i sieć. Podobnie jak usługa, wolumin i przestrzeń nazw, zasobnik jest podstawowym obiektem Kubernetes. Zasobniki są uruchamiane na węzłach i mają określony cykl życia, podczas którego są uruchamiane do momentu usunięcia kontenerów.
Tworzenie zasobnika
Przed utworzeniem zasobnika należy skonfigurować hosta usługi AKS i utworzyć klastry usługi AKS przy użyciu programu Windows PowerShell. Możesz również użyć Centrum administracyjnego systemu Windows do skonfigurowania hosta i utworzenia klastrów.
Aby upewnić się, że masz połączenie z klastrem Kubernetes, uruchom następujące polecenie:
kubectl get nodes
Aby utworzyć zasobnik, uruchom następujące polecenie. W tym przykładzie zasobnik jest tworzony przy użyciu obrazu nginx:
kubectl run nginx --image=nginx --restart=Never
Po ustawieniu parametru -restart=Never
platforma Kubernetes tworzy pojedynczy zasobnik zamiast tworzyć wdrożenie.
Aby wyświetlić stan zasobnika, uruchom następujące polecenie:
kubectl get pods
Aby wyświetlić całą konfigurację zasobnika, uruchom następujące polecenie:
kubectl describe pod nginx
Usuwanie zasobnika
Aby usunąć utworzony zasobnik, uruchom następujące polecenie:
kubectl delete pod
Przykładowa konfiguracja zasobnika
W poniższym przykładzie YAML opisano funkcje zasobnika i pokazano, jak jest to najmniejsza jednostka platformy Kubernetes, którą można zdefiniować, wdrożyć i zarządzać:
apiVersion: v1
kind: Pod
metadata:
labels:
app: nginx
name: nginx
namespace: calico-demo
spec:
containers:
- name: nginx
image: nginx:1.8
ports:
- containerPort: 80
nodeSelector:
beta.kubernetes.io/os: linux