Se estiver a atualizar a partir da versão 1.2 ou mais antiga do Apigee hybrid, tem de atualizar primeiro para a versão 1.3 antes de atualizar para a versão 1.4.4. Consulte as instruções para atualizar o Apigee Hybrid para a versão 1.3.
Atualização para a versão 1.4.4: vista geral.
Os procedimentos para atualizar o Apigee hybrid estão organizados nas seguintes secções:
- Faça uma cópia de segurança da instalação híbrida.
- Verifique a sua versão do Kubernetes e atualize-a conforme adequado.
- Atualize o ASM.
- Instale a versão 1.4 do tempo de execução híbrido.
Pré-requisito
- Versão 1.3 do Apigee Hybrid. Se estiver a fazer a atualização a partir de uma versão anterior, consulte as instruções para atualizar o Apigee hybrid para a versão 1.3.
Atualize para a versão 1.4
- (Recomendado) Faça uma cópia de segurança do diretório
$APIGEECTL_HOME/
da versão 1.3. Por exemplo:tar -czvf $APIGEECTL_HOME/../apigeectl-v1.3-backup.tar.gz $APIGEECTL_HOME
- (Recomendado) Faça uma cópia de segurança da base de dados Cassandra seguindo as instruções em Cópia de segurança e recuperação do Cassandra
- Atualize a sua plataforma Kubernetes da seguinte forma. Siga a documentação da sua plataforma se precisar de ajuda:
Plataforma Atualize para a versão GKE 1.18.x GKE On-Prem (Anthos) 1.5.x AKS 1.18.x com clusters anexados do Anthos EKS 1.18.x com clusters anexados do Anthos - Atualize o ASM para a versão 1.6.x.
- Faça a atualização através da documentação do ASM:
- GKE on-prem (Anthos): Atualização Anthos Service Mesh no local
- Todas as outras plataformas: Atualizar Anthos Service Mesh no GKE
- Especifique as seguintes portas de entrada e defina a propriedade
runAsRoot
comotrue
no ficheiroistio-operator.yaml
"… … … ports: - port: 15021 name: status-port targetPort: 15021 - port: 80 name: http2 targetPort: 80 - port: 443 name: https targetPort: 443 … … … values: gateways: istio-ingressgateway: runAsRoot: true
- Crie CRs PeerAuthentication para desativar o mTLS no seu ficheiro
istio-operator.yaml
:--- apiVersion: security.istio.io/v1beta1 kind: PeerAuthentication metadata: name: apigee-system namespace: apigee-system spec: mtls: mode: DISABLE --- apiVersion: security.istio.io/v1beta1 kind: PeerAuthentication metadata: name: user-namespace namespace: user-namespace spec: mtls: mode: DISABLE
- Aplique estas alterações com
istioctl
, conforme descrito na documentação do ASM: - GKE On-Prem (Anthos): Atualizar o plano de controlo
- Todas as outras plataformas: Atualizar o plano de controlo
- Faça a atualização através da documentação do ASM:
Instale o tempo de execução híbrido 1.4.4
- Armazene o número da versão mais recente numa variável:
export VERSION=$(curl -s \ https://storage.googleapis.com/apigee-release/hybrid/apigee-hybrid-setup/current-version.txt?ignoreCache=1)
- Verifique se a variável foi preenchida com um número de versão. Se quiser usar uma versão diferente, pode guardá-la numa variável de ambiente. Por exemplo:
echo $VERSION
1.4.4
Transfira o pacote de lançamento para o seu sistema operativo:
Mac 64 bits:
curl -LO \ https://storage.googleapis.com/apigee-release/hybrid/apigee-hybrid-setup/$VERSION/apigeectl_mac_64.tar.gz
Linux de 64 bits:
curl -LO \ https://storage.googleapis.com/apigee-release/hybrid/apigee-hybrid-setup/$VERSION/apigeectl_linux_64.tar.gz
Mac de 32 bits:
curl -LO \ https://storage.googleapis.com/apigee-release/hybrid/apigee-hybrid-setup/$VERSION/apigeectl_mac_32.tar.gz
Linux de 32 bits:
curl -LO \ https://storage.googleapis.com/apigee-release/hybrid/apigee-hybrid-setup/$VERSION/apigeectl_linux_32.tar.gz
- Mude o nome do diretório
apigeectl/
atual para um nome de diretório de cópia de segurança. Por exemplo:mv $APIGEECTL_HOME/ $APIGEECTL_HOME-v1.2/
-
Extraia o conteúdo do ficheiro gzip transferido para o diretório de base híbrido. Por exemplo:
tar xvzf filename.tar.gz -C hybrid-base-directory
cd
para o diretório base.-
Por predefinição, o conteúdo do TAR é expandido para um diretório com a versão e a plataforma no respetivo nome. Por exemplo:
./apigeectl_1.4.4-xxx_linux_64
. Mude o nome desse diretório paraapigeectl
:mv apigeectl_1.4.5-xxx_linux_64 apigeectl
- No diretório new
apigeectl/
, executeapigeectl init
,apigeectl apply
eapigeectl check-ready
:- Inicialize o híbrido 1.4.4:
apigeectl init -f overrides.yaml
Onde overrides.yaml é o seu ficheiro overrides.yaml editado.
- Verifique se foi inicializado corretamente com os seguintes comandos:
apigeectl check-ready -f overrides.yaml
kubectl describe apigeeds -n apigee
O resultado deve ter um aspeto semelhante ao seguinte:
Status: Cassandra Data Replication: Cassandra Pod Ips: 10.8.2.204 Cassandra Ready Replicas: 1 Components: Cassandra: Last Successfully Released Version: Revision: v1-f8aa9a82b9f69613 Version: v1 Replicas: Available: 1 Ready: 1 Total: 1 Updated: 1 State: running Scaling: In Progress: false Operation: Requested Replicas: 0 State: running
- A sintaxe da flag
apigeectl
--dry-run
depende da versão dokubectl
que está a usar. Verifique a versão dokubectl
:gcloud version
- Verifique se existem erros com um teste com o comando adequado à sua versão do
kubectl
:kubectl
versão 1.17 e mais antigas:apigeectl apply -f overrides.yaml --dry-run=true
kubectl
versão 1.18 e mais recentes:apigeectl apply -f overrides.yaml --dry-run=client
- Aplique as substituições. Selecione e siga as instruções para ambientes de produção ou
ambientes de demonstração/experimentais, consoante a sua instalação.
Produção
Para ambientes de produção, deve atualizar cada componente híbrido individualmente e verificar o estado do componente atualizado antes de avançar para o componente seguinte.
- Aplique as substituições para atualizar o Cassandra:
apigeectl apply -f overrides.yaml --datastore
- Conclusão da verificação:
kubectl -n namespace get pods
apigeectl check-ready -f overrides.yaml
Onde namespace é o espaço de nomes híbrido do Apigee.
Avance para o passo seguinte apenas quando os pods estiverem prontos.
- Aplique as substituições para atualizar os componentes de telemetria e verifique a conclusão:
apigeectl apply -f overrides.yaml --telemetry
kubectl -n namespace get pods
apigeectl check-ready -f overrides.yaml
- Aplique as substituições para atualizar os componentes ao nível da organização (MART, Watcher e Apigee Connect) e verifique a conclusão:
apigeectl apply -f overrides.yaml --org
kubectl -n namespace get pods
apigeectl check-ready -f overrides.yaml
- Aplique as substituições para atualizar os seus ambientes. Tem 2 opções:
- Ambiente por ambiente: aplique as substituições a um ambiente de cada vez e verifique a conclusão. Repita
este passo para cada ambiente:
apigeectl apply -f overrides.yaml --env env_name
kubectl -n namespace get pods
apigeectl check-ready -f overrides.yaml
Em que env_name é o nome do ambiente que está a atualizar.
- Todos os ambientes ao mesmo tempo: aplique as substituições a todos os ambientes de uma só vez e verifique a conclusão:
apigeectl apply -f overrides.yaml --all-envs
kubectl -n namespace get pods
apigeectl check-ready -f overrides.yaml
- Ambiente por ambiente: aplique as substituições a um ambiente de cada vez e verifique a conclusão. Repita
este passo para cada ambiente:
Demonstração/experimental
Na maioria dos ambientes de demonstração ou experimentais, pode aplicar as substituições a todos os componentes de uma só vez. Se o seu ambiente de demonstração/experimental for grande e complexo ou imitar de perto um ambiente de produção, é recomendável usar as instruções para atualizar ambientes de produção
apigeectl apply -f overrides.yaml
- Verifique o estado:
apigeectl check-ready -f overrides.yaml
- Aplique as substituições para atualizar o Cassandra:
Parabéns! Atualizou com êxito para a versão 1.4.4 do Apigee Hybrid.
- Inicialize o híbrido 1.4.4: