Este documento foi traduzido usando tecnologia de tradução automática de máquina. Sempre trabalhamos para apresentar traduções precisas, mas não oferecemos nenhuma garantia em relação à integridade, precisão ou confiabilidade do conteúdo traduzido. Em caso de qualquer discrepância, a versão original em inglês prevalecerá e constituirá o texto official.

Esta é uma documentação não divulgada para SUSE® Storage 1.12 (Dev).

Instale o SUSE® Storage usando o Flux

Pré-requisitos

A instalação do SUSE Storage requer acesso autenticado à SUSE Application Collection. Para mais detalhes, consulte o guia de autenticação.

  • Sua estação de trabalho: Instale o Helm v3.0 ou posterior.

  • Kubernetes cluster:

    • Certifique-se de que cada nó atenda aos requisitos de instalação.

    • Instale o Flux CLI e os controladores.

    • Inicialize o Flux com o GitHub usando o Flux CLI. Execute os seguintes comandos para exportar seu token de acesso pessoal do GitHub (PAT) como uma variável de ambiente, implantar os controladores do Flux em seu cluster e configurar os controladores para sincronizar o estado do cluster do repositório do GitHub especificado.

      export GITHUB_TOKEN=<gh-token>
      flux bootstrap github \
        --token-auth \
        --owner=<github_username> \
        --repository=<github_repo_name> \
        --branch=<branch_name> \
        --path=<folder_path_within_repo> \
        --personal

A Ferramenta de Linha de Comando Longhorn pode ser usada para verificar o ambiente Longhorn em busca de problemas potenciais.

Instalação

  1. Crie um recurso personalizado (CR) HelmRepository que aponte para a URL do Helm chart SUSE Storage.

     kubectl create ns longhorn-system
     flux create source helm longhorn-repo \
       --url=https://charts.longhorn.io \
       --namespace=longhorn-system \
       --export > helmrepo.yaml
     kubectl apply -f helmrepo.yaml
  2. Crie um CR HelmRelease que faça referência ao HelmRepository e especifique a versão do Helm chart a ser instalada.

     flux create helmrelease longhorn-release \
       --chart=longhorn \
       --source=HelmRepository/longhorn-repo \
       --chart-version=v1.12.0 \
       --namespace=longhorn-system \
       --export > helmrelease.yaml
     kubectl apply -f helmrelease.yaml
  3. Verifique se o CR HelmRelease foi criado e sincronizado com sucesso.

     flux get helmrelease longhorn-release -n longhorn-system
  4. Verifique se SUSE Storage foi instalado com sucesso.

     kubectl -n longhorn-system get pod

    Exemplo de uma instalação bem-sucedida:

     NAME                                                READY   STATUS    RESTARTS   AGE
     longhorn-ui-b7c844b49-w25g5                         1/1     Running   0          2m41s
     longhorn-manager-pzgsp                              1/1     Running   0          2m41s
     longhorn-driver-deployer-6bd59c9f76-lqczw           1/1     Running   0          2m41s
     longhorn-csi-plugin-mbwqz                           2/2     Running   0          100s
     csi-snapshotter-588457fcdf-22bqp                    1/1     Running   0          100s
     csi-snapshotter-588457fcdf-2wd6g                    1/1     Running   0          100s
     csi-provisioner-869bdc4b79-mzrwf                    1/1     Running   0          101s
     csi-provisioner-869bdc4b79-klgfm                    1/1     Running   0          101s
     csi-resizer-6d8cf5f99f-fd2ck                        1/1     Running   0          101s
     csi-provisioner-869bdc4b79-j46rx                    1/1     Running   0          101s
     csi-snapshotter-588457fcdf-bvjdt                    1/1     Running   0          100s
     csi-resizer-6d8cf5f99f-68cw7                        1/1     Running   0          101s
     csi-attacher-7bf4b7f996-df8v6                       1/1     Running   0          101s
     csi-attacher-7bf4b7f996-g9cwc                       1/1     Running   0          101s
     csi-attacher-7bf4b7f996-8l9sw                       1/1     Running   0          101s
     csi-resizer-6d8cf5f99f-smdjw                        1/1     Running   0          101s
     instance-manager-b34d5db1fe1e2d52bcfb308be3166cfc   1/1     Running   0          114s
     engine-image-ei-df38d2e5-cv6nc                      1/1     Running   0          114s
  5. Crie um controlador de Ingress NGINX com autenticação básica para acessar a interface do usuário. A autenticação na interface do usuário não está habilitada por padrão.

  6. Acesse a interface do usuário.

Operações Contínuas via GitOps

Você pode fazer commit e push de manifests exportados para o seu repositório GitOps.

 git add helmrepo.yaml helmrelease.yaml
 git commit -m "Add HelmRepository and HelmRelease for SUSE Storage installation"
 git push origin <branch_name>

Depois, você pode modificar os CRs de HelmRelease e HelmRepository editando os manifests YAML no seu repositório GitOps. O Flux detecta e aplica automaticamente as alterações sem exigir acesso direto ao seu cluster Kubernetes.