|
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 Admission Controller 1.34-dev. |
Instalação de air gap com Hauler
Este guia mostra como instalar SUSE Security Admission Controller em ambientes air-gapped usando Hauler. O Hauler é uma ferramenta que ajuda os usuários a executar cargas de trabalho em ambientes air-gapped. Ele move os recursos necessários para os apps para esses ambientes air-gapped.
Admission Controller fornece um arquivo de manifesto com todos os recursos necessários para executar Admission Controller em um ambiente privado. Esta documentação descreve como você pode usá-lo. Consulte a documentação do Hauler para saber mais sobre ele.
O fluxo de trabalho básico usando o manifesto do Hauler é:
-
Obtenha-o a partir de uma página de lançamento do Admission Controller
-
Carregue todos os recursos necessários para executar Admission Controller em um armazenamento local
-
Exporte-os para um arquivo
-
Mova o arquivo para o ambiente privado
-
Carregue os recursos no Hauler em execução dentro do ambiente privado
-
Copie tudo para um registro, para ser usado no processo de instalação, em seu ambiente air-gapped.
Baixe o manifesto do Hauler da página de lançamento do Helm chart.
Baixe hauler_manifest.yml da Admission Controller página de lançamento.
Sincronize os recursos definidos no manifesto para o seu armazenamento do Hauler:
hauler store sync --filename hauler_manifest.yaml
O Hauler baixa todos os recursos do manifesto para o armazenamento local. Este processo leva alguns minutos. Quando concluído, você pode ver os recursos sincronizados com o comando hauler store info.
Gere o arquivo tarball com todos os recursos Admission Controller.
Execute o comando Hauler para exportar todos os recursos previamente carregados no armazenamento para um arquivo:
hauler store save --filename kubewarden-resources.tar.zst
|
As imagens de contêiner Admission Controller suportam as arquiteturas x86_64 e família de arquiteturas ARM. Portanto, quando você salva o recurso no arquivo, pode ver mensagens de aviso como esta:
Para evitar essa mensagem de aviso, você pode definir a flag |
Transfira o tarball para o seu ambiente isolado.
Agora que você tem todos os recursos Admission Controller em kubewarden-resources.tar.zst, copie-os para o seu ambiente air-gapped e carregue-os no armazenamento do Hauler lá:
hauler store load --filename kubewarden-resources.tar.zst
# Check if the resources are loaded
hauler store info
Agora todos os recursos necessários para instalar Admission Controller estão no armazenamento do Hauler em seu ambiente isolado.
Popule o registro privado.
Para usar os recursos do seu armazenamento Hauler, é necessário torná-los disponíveis em um registro interno. Você pode usar comandos do Hauler para copiá-los para o seu registro privado.
hauler store copy registry://localhost:5000
Você também pode executar o Hauler para iniciar um registro com todos os recursos do armazenamento. Este registro é inseguro, e você precisa adaptar a configuração do cluster:
# Find IP address of your host
# hostname -I
# Update registries.yaml for k3s based cluster to allow insecure access
# mirrors:
# "<HOST_IP>:5000":
# endpoint:
# - "http://<HOST_IP>:5000"
# configs:
# "<HOST_IP>:5000":
# tls:
# insecure_skip_verify: true
# Configure policy-server to allow pulling policies from insecure sources
# helm install .. kubewarden-defaults .. --set policyServer.insecureSources[0]=<HOST_IP:5000>
hauler store serve registry
Isso inicia um registro no endereço localhost:5000. A partir deste ponto, você pode usar outros comandos como Skopeo para copiar todas as imagens de contêiner, módulos de política e gráficos Helm usados pelo Admission Controller para o seu registro privado.
Instale o Admission Controller
Agora que seu registro privado tem tudo o que é necessário, você pode instalar Admission Controller. A diferença em relação a uma instalação padrão do Admission Controller é que você precisa alterar o registro nas imagens de contêiner e políticas para ser o registro privado. Além disso, você precisa instalar os gráficos Helm dos artefatos OCI.
Instale a pilha Admission Controller:
helm install --wait -n kubewarden kubewarden-crds --create-namespace \
oci://<REGISTRY.YOURDOMAIN.COM:PORT>/hauler/kubewarden-crds
helm install --wait -n kubewarden kubewarden-controller \
--set "global.cattle.systemDefaultRegistry=<REGISTRY.YOURDOMAIN.COM:PORT>" \
oci://<REGISTRY.YOURDOMAIN.COM:PORT>/hauler/kubewarden-controller
|
Para usar o sub-gráfico PolicyReporter disponível no gráfico
É necessário definir |
helm install --wait -n kubewarden \
kubewarden-defaults oci://<REGISTRY.YOURDOMAIN.COM:PORT>/hauler/kubewarden-defaults \
--set global.cattle.systemDefaultRegistry=<REGISTRY.YOURDOMAIN.COM:PORT>
Por fim, configure cada Servidor de Políticas para buscar políticas do seu registro privado. Veja a seção usando registro privado da documentação.
Agora crie Admission Controller políticas em seu cluster. As políticas devem estar disponíveis em seu registro privado.
kubectl apply -f - <<EOF
apiVersion: policies.kubewarden.io/v1
kind: ClusterAdmissionPolicy
metadata:
name: privileged-pods
spec:
module: registry://<REGISTRY.YOURDOMAIN.COM:PORT>/kubewarden/policies/pod-privileged:v0.2.2
rules:
- apiGroups: [""]
apiVersions: ["v1"]
resources: ["pods"]
operations:
- CREATE
mutating: false
EOF
|
Os recursos
|