Este passo explica como criar o cluster no qual vai executar o Apigee hybrid. As instruções variam consoante a plataforma em que está a executar o modo híbrido. Antes de começar, certifique-se de que revê as seguintes informações:
- Configurações mínimas do cluster
- Configurar node pools dedicados
- Configure o Cassandra para produção
- Configurar a autenticação para o Cassandra
- Configuração StorageClass
- Utilização de portas seguras
Crie o seu cluster
Siga os passos para a plataforma selecionada:
GKE
Crie um cluster no GKE
Estes passos explicam como configurar e criar um cluster do GKE no seu projeto do Google Cloud.
A Apigee recomenda a criação de clusters regionais
em vez de clusters zonais. Se não conhece a distinção entre regiões e zonas, consulte o artigo
Regiões e zonas.
As regiões disponíveis estão listadas em
Regiões e
zonas disponíveis. Tenha em atenção que, por exemplo, us-west1
é um nome de região válido, enquanto us-west1-a
é uma zona na região.
- Certifique-se de que está a usar uma versão do GKE suportada para a versão híbrida 1.11.2. Consulte as plataformas e versões suportadas do Apigee Hybrid.
- Certifique-se de que os relógios em todos os nós e servidores de aplicações estão sincronizados com o Network Time Protocol (NTP), conforme explicado nos Pré-requisitos. A base de dados Cassandra depende da sincronização do Network Time Protocol (NTP) para manter a consistência dos dados. Se planeia instalar o híbrido em várias regiões, certifique-se de que estão sincronizadas com o NTP em todas as regiões.
- (Apenas para clusters privados do GKE) Se estiver a criar um cluster privado no GKE, adicione uma regra de firewall para permitir a porta 9443 para comunicação entre os nós principais do GKE e os nós de trabalho do GKE, e para permitir que os nós principais do GKE acedam aos webhooks de mutação do Apigee. Siga o
procedimento em
Adicionar regras de
firewall para exemplos de utilização específicos na documentação do Google Kubernetes Engine. Para mais
informações, consulte Clusters
privados no GKE.
Não precisa de adicionar esta regra se estiver a criar um cluster padrão ou público.
- Crie um cluster padrão seguindo as instruções em
Crie um cluster regional com um node pool de várias zonas.
Não há problema em criar o cluster apenas com o node pool predefinido. Vai configurar e criar os pools de nós híbridos do Apigee necessários no passo seguinte.
Avance para o passo seguinte apenas depois de a criação do cluster ser concluída com êxito.
- Crie dois node pools seguindo as instruções
em Adicione e
faça a gestão de node pools. Certifique-se de que configura os conjuntos de nós com os requisitos mínimos indicados na tabela abaixo.
Requisitos mínimos do conjunto de nós
Certifique-se de que cumpre estes requisitos mínimos quando criar os conjuntos de nós. Se usar a Cloud Console, certifique-se de que configura as secções Detalhes do conjunto de nós e Nós.
Nome do node pool Descrição Mínimo de nós Tipo de máquina
mínimoapigee-data
Um conjunto de nós com estado usado para a base de dados Cassandra. 1 por zona
(3 por região)e2-standard-4
(4 vCPU, 16 GB de memória)apigee-runtime
Um conjunto de nós sem estado usado pelo processador de mensagens de tempo de execução. 1 por zona
(3 por região)e2-standard-4
(4 vCPU, 16 GB de memória)Para mais detalhes sobre a configuração do conjunto de nós, consulte o artigo Configure conjuntos de nós dedicados.
- (Opcional) Se quiser, pode eliminar o conjunto de nós
default
. Consulte o artigo Elimine um node pool. - Se ainda não o fez, crie as seguintes variáveis de ambiente. Estas variáveis são usadas
nos comandos gcloud que se seguem.
Linux / MacOS
export CLUSTER_NAME="YOUR_CLUSTER_NAME"
export CLUSTER_LOCATION="YOUR_CLUSTER_LOCATION"
export PROJECT_ID="YOUR_PROJECT_ID"
Windows
set CLUSTER_NAME="YOUR_CLUSTER_NAME"
set CLUSTER_LOCATION=YOUR_CLUSTER_LOCATION
set PROJECT_ID=YOUR_PROJECT_ID
Onde:
-
CLUSTER_NAME
: o nome do cluster. -
CLUSTER_LOCATION
: a região na qual criou o cluster. -
PROJECT_ID
: o ID do seu projeto do Google Cloud.
-
- Valide as configurações do conjunto de nós:
Clusters regionais
gcloud container node-pools list \ --cluster=${CLUSTER_NAME} \ --region=${CLUSTER_LOCATION} \ --project=${PROJECT_ID}
Clusters zonais
gcloud container node-pools list \ --cluster=${CLUSTER_NAME} \ --zone=${CLUSTER_LOCATION} \ --project=${PROJECT_ID}
- Certifique-se de que o cluster está definido como o cluster predefinido para
kubectl
obtendo ogcloud
credenciais do cluster que acabou de criar:Clusters regionais
gcloud container clusters get-credentials ${CLUSTER_NAME} \ --region ${CLUSTER_LOCATION} \ --project ${PROJECT_ID}
Clusters zonais
gcloud container clusters get-credentials ${CLUSTER_NAME} \ --zone ${CLUSTER_LOCATION} \ --project ${PROJECT_ID}
Consulte Defina um cluster predefinido para comandos kubectl.
-
Configure o armazenamento de discos de estado sólido (SSDs) persistentes para o Cassandra. Não oferecemos suporte para a utilização de SSDs locais. Para mais informações, consulte Alterar a classe de armazenamento predefinida na documentação do Kubernetes.
- Obtenha o nome da StorageClass predefinida atual:
kubectl get sc
Por exemplo:
kubectl get sc
NAME PROVISIONER RECLAIMPOLICY VOLUMEBINDINGMODE ALLOWVOLUMEEXPANSION AGE premium-rwo pd.csi.storage.gke.io Delete WaitForFirstConsumer true 15h standard kubernetes.io/gce-pd Delete Immediate true 15h standard-rwo (default) pd.csi.storage.gke.io Delete WaitForFirstConsumer true 15h - Descrever a StorageClass denominada
standard-rwo
. Tenha em atenção que o tipo épd-balanced
:kubectl describe sc standard-rwo
Por exemplo:
kubectl describe sc standard-rwo
Name: standard-rwo IsDefaultClass: Yes Annotations: components.gke.io/layer=addon,storageclass.kubernetes.io/is-default-class=false Provisioner: pd.csi.storage.gke.io Parameters: type=pd-balanced AllowVolumeExpansion: True MountOptions: <none> ReclaimPolicy: Delete VolumeBindingMode: WaitForFirstConsumer Events: <none>
- Cria um novo ficheiro denominado
storageclass.yaml
. - Adicione este código ao ficheiro. Tenha em atenção que o nome da nova classe de armazenamento
é
apigee-sc
. Pode usar qualquer nome que quiser. Tenha também em atenção que o tipo de armazenamento épd-ssd
:--- kind: StorageClass apiVersion: storage.k8s.io/v1 metadata: name: "apigee-sc" provisioner: kubernetes.io/gce-pd parameters: type: pd-ssd replication-type: none volumeBindingMode: WaitForFirstConsumer allowVolumeExpansion: true
- Aplique a nova StorageClass ao seu cluster do Kubernetes:
kubectl apply -f storageclass.yaml
- Execute os dois comandos seguintes para alterar a StorageClass predefinida:
kubectl patch storageclass standard-rwo \ -p '{"metadata": {"annotations":{"storageclass.kubernetes.io/is-default-class":"false"}}}'
kubectl patch storageclass apigee-sc \ -p '{"metadata": {"annotations":{"storageclass.kubernetes.io/is-default-class":"true"}}}'
- Execute este comando para verificar se a nova StorageClass predefinida se chama
apigee-sc
:kubectl get sc
Por exemplo:
kubectl get sc
NAME PROVISIONER RECLAIMPOLICY VOLUMEBINDINGMODE ALLOWVOLUMEEXPANSION AGE apigee-sc (default) kubernetes.io/gce-pd Delete WaitForFirstConsumer true 14h premium-rwo pd.csi.storage.gke.io Delete WaitForFirstConsumer true 15h standard kubernetes.io/gce-pd Delete Immediate true 15h standard-rwo pd.csi.storage.gke.io Delete WaitForFirstConsumer true 15h
- Obtenha o nome da StorageClass predefinida atual:
- Ative o Workload Identity para o cluster. O Workload Identity permite que as cargas de trabalho nos seus clusters do GKE
se façam passar por contas de serviço da gestão de identidade e de acesso (IAM) para aceder aos serviços do Google
Cloud. Esta operação pode demorar até 30 minutos:
Clusters regionais
gcloud container clusters update ${CLUSTER_NAME} \ --workload-pool=${PROJECT_ID}.svc.id.goog \ --project ${PROJECT_ID} \ --region ${CLUSTER_LOCATION}
Clusters zonais
gcloud container clusters update ${CLUSTER_NAME} \ --workload-pool=${PROJECT_ID}.svc.id.goog \ --zone ${CLUSTER_LOCATION} \ --project ${PROJECT_ID}
- Verifique se o Workload Identity foi ativado com êxito através do seguinte comando:
Clusters regionais
gcloud container clusters describe ${CLUSTER_NAME} \ --project ${PROJECT_ID} \ --region ${CLUSTER_LOCATION} | grep -i "workload"
Clusters zonais
gcloud container clusters describe ${CLUSTER_NAME} \ --zone ${CLUSTER_LOCATION} \ --project ${PROJECT_ID} | grep -i "workload"
Quando tiver um cluster instalado e em execução, avance para o passo seguinte.
GKE On-Prem
Crie um cluster no GKE On-Prem
Estes passos explicam como configurar e criar um cluster do GKE On-Prem para o Apigee Hybrid.
- Certifique-se de que está a usar uma versão do Google Distributed Cloud compatível com a versão híbrida 1.11.2. Consulte as plataformas e versões suportadas do Apigee Hybrid.
- Certifique-se de que os relógios em todos os nós e servidores de aplicações estão sincronizados com o Network Time Protocol (NTP), conforme explicado nos Pré-requisitos. A base de dados Cassandra depende da sincronização do Network Time Protocol (NTP) para manter a consistência dos dados. Se planeia instalar o sistema híbrido em várias regiões, certifique-se de que estão sincronizadas com o NTP em todas as regiões.
- Crie o cluster seguindo as instruções em
Crie clusters básicos.
Não há problema em criar o cluster apenas com o node pool predefinido. Vai configurar e criar os pools de nós híbridos do Apigee necessários no passo seguinte.
Avance para o passo seguinte apenas depois de a criação do cluster ser concluída com êxito.
- Crie dois node pools seguindo as instruções
em Criar
e gerir node pools. Configure os conjuntos de nós com os requisitos mínimos indicados na tabela abaixo.
Requisitos mínimos do conjunto de nós
Certifique-se de que cumpre estes requisitos mínimos quando criar os conjuntos de nós.
Nome do node pool Descrição Mínimo de nós Tipo de máquina
mínimoapigee-data
Um conjunto de nós com estado usado para a base de dados Cassandra. 1 por zona
(3 por região)e2-standard-4
(4 vCPU, 16 GB de memória)apigee-runtime
Um conjunto de nós sem estado usado pelo processador de mensagens de tempo de execução. 1 por zona
(3 por região)e2-standard-4
(4 vCPU, 16 GB de memória)Para mais detalhes sobre a configuração do conjunto de nós, consulte o artigo Configure conjuntos de nós dedicados.
- (Opcional) Se quiser, pode eliminar o conjunto de nós
default
. Consulte Elimine um node pool. -
Configure o armazenamento de discos de estado sólido (SSDs) persistentes para o Cassandra. Não oferecemos suporte para a utilização de SSDs locais. Para mais informações, consulte Altere a classe de armazenamento predefinida na documentação do Kubernetes.
- Obtenha o nome da StorageClass predefinida atual:
kubectl get sc
Por exemplo:
kubectl get sc
NAME PROVISIONER RECLAIMPOLICY VOLUMEBINDINGMODE ALLOWVOLUMEEXPANSION AGE premium-rwo pd.csi.storage.gke.io Delete WaitForFirstConsumer true 15h standard kubernetes.io/gce-pd Delete Immediate true 15h standard-rwo (default) pd.csi.storage.gke.io Delete WaitForFirstConsumer true 15h - Descrever a StorageClass denominada
standard-rwo
. Tenha em atenção que o respetivo tipo épd-balanced
:kubectl describe sc standard-rwo
Por exemplo:
kubectl describe sc standard-rwo
Name: standard-rwo IsDefaultClass: Yes Annotations: components.gke.io/layer=addon,storageclass.kubernetes.io/is-default-class=false Provisioner: pd.csi.storage.gke.io Parameters: type=pd-balanced AllowVolumeExpansion: True MountOptions: <none> ReclaimPolicy: Delete VolumeBindingMode: WaitForFirstConsumer Events: <none>
- Cria um novo ficheiro denominado
storageclass.yaml
. - Adicione este código ao ficheiro. Tenha em atenção que o nome da nova classe de armazenamento
é
apigee-sc
. Pode usar qualquer nome que quiser. Tenha também em atenção que o tipo de armazenamento épd-ssd
:--- kind: StorageClass apiVersion: storage.k8s.io/v1 metadata: name: "apigee-sc" provisioner: kubernetes.io/gce-pd parameters: type: pd-ssd replication-type: none volumeBindingMode: WaitForFirstConsumer allowVolumeExpansion: true
- Aplique a nova StorageClass ao seu cluster do Kubernetes:
kubectl apply -f storageclass.yaml
- Execute os dois comandos seguintes para alterar a StorageClass predefinida:
kubectl patch storageclass standard-rwo \ -p '{"metadata": {"annotations":{"storageclass.kubernetes.io/is-default-class":"false"}}}'
kubectl patch storageclass apigee-sc \ -p '{"metadata": {"annotations":{"storageclass.kubernetes.io/is-default-class":"true"}}}'
- Execute este comando para verificar se a nova StorageClass predefinida se chama
apigee-sc
:kubectl get sc
Por exemplo:
kubectl get sc
NAME PROVISIONER RECLAIMPOLICY VOLUMEBINDINGMODE ALLOWVOLUMEEXPANSION AGE apigee-sc (default) kubernetes.io/gce-pd Delete WaitForFirstConsumer true 14h premium-rwo pd.csi.storage.gke.io Delete WaitForFirstConsumer true 15h standard kubernetes.io/gce-pd Delete Immediate true 15h standard-rwo pd.csi.storage.gke.io Delete WaitForFirstConsumer true 15h
- Obtenha o nome da StorageClass predefinida atual:
Quando tiver um cluster instalado e em execução, avance para o passo seguinte.
Google Distributed Cloud no Bare Metal
Crie um cluster no Google Distributed Cloud on bare metal
Estes passos explicam como configurar e criar um cluster para o Apigee hybrid no Anthos on bare metal. O Anthos em bare metal permite-lhe executar clusters do Kubernetes diretamente nos recursos da sua própria máquina.
- Certifique-se de que está a usar uma versão do Google Distributed Cloud on Bare Metal suportada para a versão híbrida 1.11.2. Consulte as plataformas e versões suportadas do Apigee Hybrid.
- Certifique-se de que os relógios em todos os nós e servidores de aplicações estão sincronizados com o Network Time Protocol (NTP), conforme explicado nos Pré-requisitos. A base de dados Cassandra depende da sincronização do Network Time Protocol (NTP) para manter a consistência dos dados. Se planeia instalar o sistema híbrido em várias regiões, certifique-se de que estão sincronizadas com o NTP em todas as regiões.
- Reveja a Vista geral dos pré-requisitos de instalação e Criação de clusters: vista geral.
- Crie o cluster com dois node pools configurados conforme descrito abaixo:
- Siga as instruções de criação de clusters Crie clusters básicos na documentação do Google Distributed Cloud on bare metal.
- Crie, pelo menos, dois node pools. Configure os conjuntos de nós com os requisitos mínimos
indicados na tabela abaixo.
As configurações mínimas para o cluster são:
Configuração Node pool com estado Node pool sem estado Finalidade Um conjunto de nós com estado usado para a base de dados Cassandra. Um conjunto de nós sem estado usado pelo processador de mensagens de tempo de execução. Nome da etiqueta apigee-data apigee-runtime Número de nós 1 por zona (3 por região) 1 por zona (3 por região) CPU 4 4 RAM 15 15 Armazenamento dinâmico Gerido com o CRD ApigeeDeployment IOPS de disco mínimas 2000 IOPS com SAN ou armazenamento diretamente anexado. O NFS não é recomendado, mesmo que possa suportar as IOPS necessárias. 2000 IOPS com SAN ou armazenamento diretamente anexado. O NFS não é recomendado, mesmo que possa suportar as IOPS necessárias. Largura de banda da rede para cada tipo de instância de máquina 1 Gbps 1 Gbps Para mais detalhes sobre a configuração mínima do cluster, consulte: Configurações mínimas do cluster
Quando tiver um cluster instalado e em execução, avance para o passo seguinte.
AKS
Crie um cluster no AKS
Estes passos explicam como configurar e criar um cluster para o Apigee hybrid no AKS.
- Certifique-se de que está a usar uma versão do AKS suportada para a versão híbrida 1.11.2. Consulte as plataformas e versões suportadas do Apigee Hybrid.
- Certifique-se de que os relógios em todos os nós e servidores de aplicações estão sincronizados com o Network Time Protocol (NTP), conforme explicado nos Pré-requisitos. A base de dados Cassandra depende da sincronização do Network Time Protocol (NTP) para manter a consistência dos dados. Se planeia instalar o sistema híbrido em várias regiões, certifique-se de que estão sincronizadas com o NTP em todas as regiões.
- Crie o cluster através da CLI do Azure
ou do portal do Azure e crie dois conjuntos de nós, conforme descrito abaixo.
As configurações mínimas para o cluster são:
Configuração Node pool com estado Node pool sem estado Finalidade Um conjunto de nós com estado usado para a base de dados Cassandra. Um conjunto de nós sem estado usado pelo processador de mensagens de tempo de execução. Nome da etiqueta apigee-data apigee-runtime Número de nós 1 por zona (3 por região) 1 por zona (3 por região) CPU 4 4 RAM 15 15 Armazenamento dinâmico Gerido com o CRD ApigeeDeployment IOPS de disco mínimas 2000 IOPS com SAN ou armazenamento diretamente anexado. O NFS não é recomendado, mesmo que possa suportar as IOPS necessárias. 2000 IOPS com SAN ou armazenamento diretamente anexado. O NFS não é recomendado, mesmo que possa suportar as IOPS necessárias. Largura de banda da rede para cada tipo de instância de máquina 1 Gbps 1 Gbps Para mais detalhes sobre a configuração mínima do cluster, consulte: Configurações mínimas do cluster
Quando tiver um cluster instalado e em execução, avance para o passo seguinte.
EKS
Crie um cluster no EKS
Estes passos explicam como configurar e criar um cluster para o Apigee hybrid no EKS.
- Certifique-se de que está a usar uma versão do EKS suportada para a versão híbrida 1.11.2. Consulte as plataformas e versões suportadas do Apigee Hybrid.
- Certifique-se de que os relógios em todos os nós e servidores de aplicações estão sincronizados com o Network Time Protocol (NTP), conforme explicado nos Pré-requisitos. A base de dados Cassandra depende da sincronização do Network Time Protocol (NTP) para manter a consistência dos dados. Se planeia instalar o sistema híbrido em várias regiões, certifique-se de que estão sincronizadas com o NTP em todas as regiões.
- Se estiver a usar a versão 1.24 ou mais recente do Kubernetes, certifique-se de que instalou o controlador CSI do Kubernetes para o Amazon EBS.
- Use as instruções seguintes para criar um cluster de utilizadores e criar dois conjuntos de nós, conforme
descrito abaixo.
As configurações mínimas para o cluster são:
Configuração Node pool com estado Node pool sem estado Finalidade Um conjunto de nós com estado usado para a base de dados Cassandra. Um conjunto de nós sem estado usado pelo processador de mensagens de tempo de execução. Nome da etiqueta apigee-data apigee-runtime Número de nós 1 por zona (3 por região) 1 por zona (3 por região) CPU 4 4 RAM 15 15 Armazenamento dinâmico Gerido com o CRD ApigeeDeployment IOPS de disco mínimas 2000 IOPS com SAN ou armazenamento diretamente anexado. O NFS não é recomendado, mesmo que possa suportar as IOPS necessárias. 2000 IOPS com SAN ou armazenamento diretamente anexado. O NFS não é recomendado, mesmo que possa suportar as IOPS necessárias. Largura de banda da rede para cada tipo de instância de máquina 1 Gbps 1 Gbps Para mais detalhes sobre a configuração mínima do cluster, consulte: Configurações mínimas do cluster
Quando tiver um cluster instalado e em execução, avance para o passo seguinte.
GKE no AWS
Crie um cluster no GKE no AWS
Estes passos explicam como configurar e criar um cluster para o Apigee hybrid no GKE na AWS.
- Certifique-se de que está a usar uma versão do GKE suportada para a versão híbrida 1.11.2. Consulte as plataformas e versões suportadas do Apigee Hybrid.
- Certifique-se de que os relógios em todos os nós e servidores de aplicações estão sincronizados com o Network Time Protocol (NTP), conforme explicado nos Pré-requisitos. A base de dados Cassandra depende da sincronização do Network Time Protocol (NTP) para manter a consistência dos dados. Se planeia instalar o sistema híbrido em várias regiões, certifique-se de que estão sincronizadas com o NTP em todas as regiões.
- Use as instruções seguintes para criar um cluster de utilizadores e criar dois conjuntos de nós, conforme descrito abaixo.
As configurações mínimas para o cluster são:
Configuração Node pool com estado Node pool sem estado Finalidade Um conjunto de nós com estado usado para a base de dados Cassandra. Um conjunto de nós sem estado usado pelo processador de mensagens de tempo de execução. Nome da etiqueta apigee-data apigee-runtime Número de nós 1 por zona (3 por região) 1 por zona (3 por região) CPU 4 4 RAM 15 15 Armazenamento dinâmico Gerido com o CRD ApigeeDeployment IOPS de disco mínimas 2000 IOPS com SAN ou armazenamento diretamente anexado. O NFS não é recomendado, mesmo que possa suportar as IOPS necessárias. 2000 IOPS com SAN ou armazenamento diretamente anexado. O NFS não é recomendado, mesmo que possa suportar as IOPS necessárias. Largura de banda da rede para cada tipo de instância de máquina 1 Gbps 1 Gbps Para mais detalhes sobre a configuração mínima do cluster, consulte: Configurações mínimas do cluster
Quando tiver um cluster instalado e em execução, avance para o passo seguinte.
OpenShift
Crie um cluster no OpenShift
Estes passos explicam como configurar e criar um cluster para o Apigee hybrid no OpenShift.
- Certifique-se de que está a usar uma versão do OpenShift suportada para a versão híbrida 1.11.2. Consulte as plataformas e versões suportadas do Apigee Hybrid.
- Certifique-se de que os relógios em todos os nós e servidores de aplicações estão sincronizados com o Network Time Protocol (NTP), conforme explicado nos Pré-requisitos. A base de dados Cassandra depende da sincronização do Network Time Protocol (NTP) para manter a consistência dos dados. Se planeia instalar o sistema híbrido em várias regiões, certifique-se de que estão sincronizadas com o NTP em todas as regiões.
- Crie o cluster do OpenShift para implementação no plano de tempo de execução,
instale o Apigee no cluster do utilizador do OpenShift e crie dois node pools.
Como parte da instalação do OpenShift, instale e configure a ferramenta de CLI
oc
. Consulte o artigo Introdução à CLI do OpenShift na documentação do OpenShift.As configurações mínimas para o cluster são:
Configuração Node pool com estado Node pool sem estado Finalidade Um conjunto de nós com estado usado para a base de dados Cassandra. Um conjunto de nós sem estado usado pelo processador de mensagens de tempo de execução. Nome da etiqueta apigee-data apigee-runtime Número de nós 1 por zona (3 por região) 1 por zona (3 por região) CPU 4 4 RAM 15 15 Armazenamento dinâmico Gerido com o CRD ApigeeDeployment IOPS de disco mínimas 2000 IOPS com SAN ou armazenamento diretamente anexado. O NFS não é recomendado, mesmo que possa suportar as IOPS necessárias. 2000 IOPS com SAN ou armazenamento diretamente anexado. O NFS não é recomendado, mesmo que possa suportar as IOPS necessárias. Largura de banda da rede para cada tipo de instância de máquina 1 Gbps 1 Gbps Para mais detalhes sobre a configuração mínima do cluster, consulte: Configurações mínimas do cluster
Quando tiver instalado um cluster, avance para o passo seguinte.
1 (SEGUINTE) Passo 2: instale o cert-manager 3 4 5 6 7 8 9 10