O que é o volume persistente (PV) e o Volumeclaim persistente (PVC)?
Um volume persistente (PV) é definido como um pedaço de armazenamento que foi criado manualmente ou provisionado dinamicamente por meio de classes de armazenamento em um cluster. Funciona como um recurso de cluster da mesma maneira que um nó. PVs são plugins de volume semelhantes aos volumes, mas seu ciclo de vida é independente das vagens. Este objeto API rastreia o método de armazenamento, seja NFS, ISCSI ou um sistema de armazenamento nativo de um provedor de nuvem.
Um Volumeclaim persistente é o pedido de armazenamento (PVC) de um usuário (PVC). Parece ser uma vagem. Os pods consomem recursos do nó, enquanto os PVCs consomem recursos fotovoltaicos. Os pods têm a capacidade de solicitar níveis de recursos específicos para eles (CPU e memória).
Nas reivindicações, podem ser necessárias modalidades de tamanho e acesso específicas (e.g., Eles podem ser montados READONLYMANY, READWRITEONCE, READWRITEMANY ou VEJA ACCESSMODES).
Enquanto o Volumeclama persistente permite que os usuários consumam recursos abstratos de armazenamento, é típico para os usuários exigir volumes persistentes com recursos distintos, como desempenho, para várias situações.
Sem expor os usuários a detalhes técnicos, os gerentes de cluster devem oferecer uma seleção de volumes persistentes que variam em mais aspectos do que apenas tamanho e modo de acesso. O recurso StorageClass pode ser usado para atender a esses requisitos.
Pré -requisito:
Para começar, você precisará de um cluster de Kubernetes e a ferramenta de linha de comando kubectl configurada para se conectar com ele. Minikube pode ajudá -lo a configurar um cluster se você ainda não tiver um. Ubuntu 20.04 foi usado para implementar os comandos neste tópico. Também podemos utilizar nosso sistema operacional preferido, pois já temos o Kubectl instalado. Deve ser instalado antes que os comandos possam ser executados.
Quando a instalação é concluída, podemos iniciar um terminal usando um dos dois métodos. Uma opção é usar a barra de aplicação do sistema operacional para alcançar o terminal. Outra maneira é usar o atalho do teclado “Ctrl + Alt + T.”Para iniciar um terminal, selecione uma dessas opções.
Agora, no terminal, use o comando abaixo para iniciar o minikube.
$ minikube Iniciar
A saída está anexada na imagem acima afixada.
Etapas para criar um arquivo HTML no seu nó
Para criar um arquivo HTML, você precisará abrir um shell no único nó do cluster. A maneira como você abre uma concha é determinada pela forma como seu cluster está configurado. Se você estiver usando o Minikube, digitar o Minikube SSH abrirá um shell no seu nó. Crie diretório de dados A /MNT /.
Faça um índice.arquivo html. O arquivo é criado no diretório /mnt /dados. Se o seu nó exigir acesso ao superusuário por meio de uma ferramenta que não seja sudo, geralmente você pode ter essa função substituindo sudo com o nome da ferramenta alternativa.
$ sudo sh -c "echo 'olá do kubernetes armazenamento'>/mnt/data/index.html "
Verifique se o índice.O arquivo html está presente. Também está incluído a saída. Agora você pode desligar a concha que está anexada ao seu nó.
$ cat/mnt/dados/índice.html
A saída está anexada na imagem acima afixada.
Etapas para criar um volume persistente
Aqui você pode descobrir os detalhes sobre a criação de um volume persistente de hosts. Em um cluster de um único nó, o Kubernetes permite o Hostpath para desenvolvimento e teste. Um HostPath persistentVolume usa um arquivo ou diretório no nó para imitar o armazenamento ligado à rede.
$ nano PVC.Yaml
Você não seria capaz de usar o Hostpath em um cluster de produção. Os administradores de cluster também podem usar storageClasses para criar provisionamento dinâmico. O arquivo de configuração do Volume PersistentVolume é o seguinte:
A configuração PV diferirá significativamente, dependendo do seu tipo de cluster e armazenamento. O comando acima montará o volume na Minikube VM e é compatível com clusters Minikube.
De acordo com o arquivo de configuração, o disco é armazenado no local de /mnt /dados no nó do cluster. O tamanho do volume é definido como 10 Gibibytes, e o modo de acesso é definido como readwriteonce, indicando que o volume sempre pode ser montado.
Para construir um volume persistente, use o comando seguinte:
$ kubectl Aplicar -F PVC.Yaml
A saída está anexada na imagem acima afixada. Lembre -se de que o PVC da abreviação pode ser usado para procurar reivindicações persistentes de volume. A saída inclui o nome do PVC produzido, bem como algumas informações básicas:
A saída está anexada na imagem acima afixada.
Exclua o volume persistente
O comando Kubectl Delete pode ser usado para excluir PVCs. Para excluir um PVC com Kubectl, forneça -o por arquivo ou nome.
$ KUBECTL DELETE PV TASK-PV-VOLUME
A saída está anexada na imagem acima afixada. Lembre -se de que a exclusão de um PV ou PVC que está atualmente em uso por uma vagem não remove o PVC imediatamente. A limpeza de PVC será adiada até que todas as vagens parassem de usá -la.
Além disso, em uma época em que um administrador exclui um PV que é anexado a um PVC, o PV não é excluído no local. O PV não está desconectado do PVC até que não esteja mais conectado.
Conclusão:
Para resumir, as aulas de armazenamento em Kubernetes permitem a implantação e o consumo de recursos de armazenamento de volumes persistentes (PV). PVs são consumidos por pods usando PVC. Este artigo explicou como criar e excluir um volume persistente para armazenamento de pods. Também fornecemos seções sobre como você pode lidar com reivindicações persistentes de volume (PVC).