O Helm é um gerenciador de pacotes para Kubernetes usado para empacotar, gerenciar e implantar aplicativos. Após criar ou atualizar um chart, você pode enviá-lo a um repositório Helm para que outros possam utilizá-lo.
Etapa 1: Configurar a instância Enterprise Edition
-
Crie um namespace.
Log on to the Container Registry console.
In the left-side navigation pane, click Instances.
On the Instances page, click the Enterprise Edition instance that you want to manage.
-
Na página de gerenciamento da instância Enterprise Edition, escolha no painel de navegação à esquerda.
-
Na página Namespace, clique em Create Namespace.
-
Na caixa de diálogo Create Namespace, insira o nome do Namespace, especifique Automatically Create Repository e Default Configurations for Automatically Created Repositories e clique em Confirm.
-
Crie um repositório de charts.
NotaSe você ativar Automatically Create Repository para o namespace, poderá pular a criação do repositório de charts no console e enviar charts diretamente do seu cliente.
Em uma instância Enterprise Edition, o endereço do repositório de charts usa o formato
<instance-name>-chart.<region-id>.cr.aliyuncs.com/<namespace>/<repository-name>. Uma versão de chart usa o formato<chart-name>-<version-number>. Para acessar o repositório por meio de uma VPC, o formato do endereço é<instance-name>-chart-vpc.<region-id>.cr.aliyuncs.com/<namespace>/<repository-name>.-
Na página Overview da instância Enterprise Edition, na seção Component Settings, ative a opção Charts.
-
Na página de gerenciamento da instância Enterprise Edition, escolha no painel de navegação à esquerda.
-
Na página Chart Repository, clique em Create Chart Repository.
-
Na caixa de diálogo Create Helm Chart, selecione um Namespace, defina o Chart Repository Name e o Type e clique em Confirm.
-
-
Configure uma credencial de acesso.
Você pode usar uma senha fixa ou um token temporário como credencial de acesso para seus charts Helm. Este exemplo usa uma senha fixa.
-
Na página de gerenciamento da instância Enterprise Edition, escolha no painel de navegação à esquerda.
-
Na página Access Credentials, clique em Set Password.
-
Na caixa de diálogo Set Password, insira uma Password e uma Confirm Password e clique em Confirm.
-
-
Configure uma política de controle de acesso.
Ative o acesso pela internet ou de uma VPC específica para enviar charts Helm. Este exemplo demonstra a configuração do acesso pela internet. Para obter mais informações sobre como configurar o controle de acesso para uma VPC, consulte Configurar controle de acesso à VPC.
-
Na página de gerenciamento da instância Enterprise Edition, escolha no painel de navegação à esquerda.
-
Na página Access Control, clique na aba Internet.
-
Na aba Internet, ative a opção Enable Access over Internet e clique em Add Internet Whitelist.
-
Na caixa de diálogo Add Internet Whitelist, insira os blocos CIDR permitidos e suas descrições e clique em Confirm.
-
-
(Opcional) Ative Pull from Anonymous Users.
Após ativar Pull from Anonymous Users, você pode baixar charts públicos sem fazer login.
Log on to the Container Registry console.
In the top navigation bar, select a region.
In the left-side navigation pane, click Instances.
On the Instances page, click the Enterprise Edition instance that you want to manage.
-
Na seção Instance Settings, no lado direito da página Overview, ative a opção Pull from Anonymous Users.
-
Na caixa de diálogo Tips, clique em Confirm.
Etapa 2: Instalar e configurar o cliente
-
Baixe uma versão do Helm no site oficial.
NotaCertifique-se de que seu cliente Helm seja uma versão v2. Execute o comando
helm version -cpara verificar a versão do cliente. Estas etapas usam a v2.14.2 como exemplo. -
Execute os seguintes comandos para descompactar o pacote do Helm e movê-lo para um diretório especificado.
# Decompress the package. tar -zxvf helm-v2.14.2-linux-amd64.tgz # Move the package to a specified directory. mv linux-amd64/helm /usr/local/bin/helm -
Instale o plug-in do Helm.
NotaÉ necessário instalar o Git antes de instalar o plug-in do Helm.
Se você estiver fora da China continental ou tiver uma conexão estável com o GitHub, execute o seguinte comando para instalar o plug-in do Helm.
helm plugin install https://github.com/AliyunContainerService/helm-acr -
Inicialize o ambiente Helm.
-
Se você estiver em um nó de um cluster Container Service for Kubernetes (ACK), o Tiller já é inicializado por padrão, portanto, basta inicializar o cliente. Para evitar o acesso a fontes de charts do Google, execute o seguinte comando:
helm init --client-only --skip-refresh -
Em um nó de um cluster Kubernetes autogerenciado, execute o seguinte comando para evitar o acesso a fontes de charts do Google:
helm init --skip-refresh
-
Etapa 3: Enviar e baixar charts
-
Execute os seguintes comandos para configurar um mapeamento de repositório local.
É necessário especificar um nome de repositório local e mapeá-lo para um repositório de charts em um namespace específico.
export HELM_REPO_USERNAME='<username-of-your-access-credential>'; export HELM_REPO_PASSWORD='<password-of-your-access-credential>'; helm repo add <local-repository-name> acr://<instance-name>-chart.<region-id>.cr.aliyuncs.com/<namespace>/<repository-name> --username ${HELM_REPO_USERNAME} --password ${HELM_REPO_PASSWORD} -
Envie um chart.
-
Execute os seguintes comandos para enviar um chart.
# Create a chart locally. helm create <chart-name> # Push the chart directory. helm cm-push <chart-name> <local-repository-name> # Or, push a compressed chart package. helm cm-push <chart-name>-<chart-version>.tgz <local-repository-name>xxx# helm create chartname Creating chartname xxx# helm push chartname localChart Pushing chartname-0.1.0.tgz to localChart... Done. xxx#
Na página Chart Repository, clique no nome do repositório de charts e clique em Versions. Na página Versions, você pode visualizar o novo chart.
-
-
Execute os seguintes comandos para baixar um chart.
# Update the local chart index. helm repo update # Pull the chart. helm fetch <local-repository-name>/<chart-name> --version <chart-version> # Or, install the chart directly. helm install -f values.yaml <local-repository-name>/<chart-name> --version <chart-version>