Esta página explica como criar e gerir armazenamento persistente para cargas de trabalho de contentores no seu universo soberano isolado do Google Distributed Cloud (GDC). O armazenamento persistente fornece à sua aplicação identidades consistentes e nomes de anfitriões estáveis, independentemente de onde as respetivas cargas de trabalho estão agendadas.
Esta página destina-se a programadores no grupo de operadores de aplicações, que são responsáveis por criar cargas de trabalho de aplicações para a respetiva organização. Para mais informações, consulte a documentação sobre públicos-alvo para GDC com isolamento de ar.
Antes de começar
Para executar comandos num cluster do Kubernetes, certifique-se de que tem os seguintes recursos:
Localize o nome do cluster do Kubernetes ou pergunte ao administrador da plataforma qual é o nome do cluster.
Inicie sessão e gere o ficheiro kubeconfig para o cluster Kubernetes, se não tiver um.
Use o caminho kubeconfig do cluster Kubernetes para substituir
KUBERNETES_CLUSTER_KUBECONFIG
nestas instruções.
Para receber as autorizações necessárias para criar um volume persistente, peça ao administrador de IAM da sua organização para lhe conceder a função de administrador do espaço de nomes (namespace-admin
) no espaço de nomes do seu projeto.
Crie um volume persistente
As instruções seguintes mostram como criar um volume através da
GDC standard-rwo
StorageClass
. Para mais informações
sobre os recursos StorageClass
disponíveis no GDC, consulte
Armazenamento persistente para contentores.
Crie um
PersistentVolumeClaim
e configure-o com um modo de acessoReadWriteOnce
e uma classe de armazenamentostandard-rwo
:kubectl --kubeconfig KUBERNETES_CLUSTER_KUBECONFIG \ --namespace NAMESPACE apply -f - <<EOF apiVersion: v1 kind: PersistentVolumeClaim metadata: name: PVC_NAME spec: accessModes: - ReadWriteOnce resources: requests: storage: 10Gi storageClassName: standard-rwo EOF
Substitua o seguinte:
KUBERNETES_CLUSTER_KUBECONFIG
: o ficheiro kubeconfig para o cluster.NAMESPACE
: o espaço de nomes do projeto no qual criar o PVC.PVC_NAME
: o nome do objetoPersistentVolumeClaim
Os objetos
PersistentVolume
(PV) são aprovisionados dinamicamente. Verifique o estado dos novos volumes persistentes no seu cluster do Kubernetes:kubectl get pv --kubeconfig KUBERNETES_CLUSTER_KUBECONFIG
O resultado é semelhante ao seguinte:
NAME CAPACITY ACCESS MODES STATUS CLAIM STORAGECLASS AGE pvc-uuidd 10Gi RWO Bound pvc-name standard-rwo 60s
Configure as cargas de trabalho do contentor para usar o PVC. Segue-se um exemplo de um agrupamento
nginx
que usa um PVCstandard-rwo
:kubectl --kubeconfig KUBERNETES_CLUSTER_KUBECONFIG \ --namespace NAMESPACE apply -f - <<EOF apiVersion: v1 kind: Pod metadata: name: web-server-deployment labels: app: nginx spec: containers: - name: nginx image: nginx volumeMounts: - mountPath: /usr/share/nginx/html name: data volumes: - name: data persistentVolumeClaim: claimName: PVC_NAME EOF
Substitua
PVC_NAME
pelo PVC que criou.
Expanda a capacidade de volume
Para aumentar a capacidade de um objeto PersistentVolumeClaim
, atualize o campo spec.resources.storage
para a nova capacidade. O tamanho máximo do volume suportado é de 14,5 Ti.
Atualize o volume para um tamanho maior no ficheiro de manifesto do objeto
PersistentVolumeClaim
:kubectl --kubeconfig KUBERNETES_CLUSTER_KUBECONFIG \ --namespace NAMESPACE apply -f - <<EOF apiVersion: v1 kind: PersistentVolumeClaim metadata: name: PVC_NAME spec: accessModes: - ReadWriteOnce resources: requests: storage: VOLUME_STORAGE_SIZE EOF
Substitua o seguinte:
KUBERNETES_CLUSTER_KUBECONFIG
: o ficheiro kubeconfig para o cluster.NAMESPACE
: o espaço de nomes do projeto no qual o recurso PVC existe.PVC_NAME
: o nome do PVC para o qual está a aumentar o tamanho do armazenamento.VOLUME_SNAPSHOT_SIZE
: a quantidade de armazenamento a aumentar, como50Gi
.
Verifique o estado dos PVs atualizados no seu cluster:
kubectl get pv --kubeconfig KUBERNETES_CLUSTER_KUBECONFIG
O que se segue?
- Vista geral das cargas de trabalho de contentores
- Crie cargas de trabalho com estado
- Crie instantâneos de volume