Nesta etapa, explicamos como criar o cluster em que você executará a Apigee híbrida. As instruções variam de acordo com a plataforma em que você está executando o híbrido. Antes de começar, leia as seguintes informações:
- Configurações mínimas do cluster
- Como configurar pools de nós dedicados
- Configurar o Cassandra para produção
- Como configurar a autenticação do Cassandra
- Configuração do StorageClass
- Uso de portas seguras
Crie o cluster
Siga as etapas de acordo com a plataforma selecionada.
GKE
Crie um cluster no GKE
Nestas etapas, explicamos como configurar e criar um cluster do GKE no projeto do Google Cloud.
A Apigee recomenda que você crie um cluster regional
em vez de um cluster zonal. Se você não estiver familiarizado com a distinção entre regiões e zonas, consulte Regiões e zonas.
As regiões disponíveis estão listadas em Regiões e zonas disponíveis. Observe que, por exemplo, us-west1
é um nome de região válido, enquanto us-west1-a
é uma zona na região.
- Verifique se você está usando uma versão do GKE compatível com a versão híbrida 1.10.4. Consulte Plataformas e versões híbridas compatíveis com a Apigee
- Verifique se os relógios de todos os nós e servidores de aplicativos estão sincronizados com o Network Time Protocol (NTP), conforme explicado nos Pré-requisitos. O banco de dados do Cassandra depende da sincronização do Network Time Protocol (NTP) para manter a consistência dos dados. Se você planeja instalar um aplicativo híbrido em várias regiões, verifique se elas estão sincronizadas com o NTP em todas as regiões.
- (Somente clusters particulares do GKE) Se você estiver criando um cluster particular, adicione uma regra de firewall para
permitir a comunicação entre os nós mestres do GKE e os nós de trabalho
do GKE na porta 9443 e permitir que os mestres do GKE acessem os webhooks de modificação da Apigee. Siga o
procedimento em
Como adicionar regras
de firewall para casos de uso específicos na documentação do Google Kubernetes Engine. Para mais
informações, consulte Clusters
particulares no GKE.
Você não precisará adicionar essa regra se estiver criando um cluster padrão ou público.
- Crie um cluster padrão seguindo as instruções em Criar um cluster regional com um pool de nós de várias zonas.
Não há problema em criar o cluster apenas com o pool de nós padrão. Você configurará e criará os pools de nós híbridos da Apigee necessários na próxima etapa.
Vá para a próxima etapa somente depois que a criação do cluster for concluída.
- Crie dois pools de nós seguindo as instruções em Adicionar e gerenciar pools de nós. Configure os pools de nós com os requisitos mínimos listados na tabela abaixo.
Requisitos mínimos do pool de nós
Certifique-se de atender a esses requisitos mínimos ao criar os pools de nós. Se você estiver usando o Console do Cloud, configure as seções Detalhes do pool de nós e Nós.
Nome do pool de nós Descrição Mínimo de nós Tipo de máquina
mínimoapigee-data
Um pool de nós com estado usado para o banco de dados do Cassandra. 1 por zona
(3 por região)e2-standard-4
(4 vCPUs, 16 GB de memória)apigee-runtime
Um pool de nós sem estado usado pelo processador de mensagens do ambiente de execução. 1 por zona
(3 por região)e2-standard-4
(4 vCPUs, 16 GB de memória)Para mais detalhes sobre a configuração do pool de nós, consulte Configurar pools de nós dedicados.
- (Opcional) Se quiser, exclua o pool de nós
default
. Consulte Excluir um pool de nós. - Crie as variáveis de ambiente a seguir. Essas variáveis são usadas nos comandos gcloud a seguir.
Linux / MacOS
export CLUSTER_NAME="YOUR_CLUSTER_NAME"
export CLUSTER_LOCATION="YOUR_CLUSTER_LOCATION"
Windows
set CLUSTER_NAME="YOUR_CLUSTER_NAME"
set CLUSTER_LOCATION=YOUR_CLUSTER_LOCATION
set PROJECT_ID=YOUR_PROJECT_ID
Em que:
-
CLUSTER_NAME
: o nome do cluster. CLUSTER_LOCATION
: a região em que o cluster foi criado.
-
- Verifique as configurações do pool 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}
- Para verificar se o cluster está definido como o padrão para
kubectl
, acesse o Credenciaisgcloud
do cluster que você 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 Definir um cluster padrão para os comandos do kubectl.
-
Configurar o armazenamento de disco de estado sólido (SSD) permanente para o Cassandra. Não é possível usar SSDs locais. Para mais informações, consulte Alterar a classe de armazenamento padrão na documentação do Kubernetes.
- Consiga o nome da StorageClass padrão atual:
kubectl get sc
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 - Descreva a StorageClass chamada
standard-rwo
. Observe que o tipo dela épd-balanced
:kubectl describe sc standard-rwo
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>
- Crie um novo arquivo chamado
storageclass.yaml
. - Adicione este código ao arquivo. Observe que o nome da nova classe é
apigee-sc
. Use o nome que preferir. Além disso, 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 cluster do Kubernetes:
kubectl apply -f storageclass.yaml
- Execute os dois seguintes comandos para alterar a StorageClass padrão:
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 padrão é chamada
apigee-sc
:kubectl get sc
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
- Consiga o nome da StorageClass padrão atual:
- Ative a identidade da carga de trabalho para o cluster. A Identidade da carga de trabalho permite que as cargas de trabalho nos clusters do GKE representem contas de serviço de gerenciamento de identidade e acesso (IAM) para acessar serviços do Google Cloud. Esta operação pode levar 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}
Para mais informações, consulte Ativar a Identidade da carga de trabalho.
- Verifique se a Identidade da carga de trabalho foi ativada com o 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, vá para a próxima etapa.
GKE On-Prem
Criar um cluster no GKE On-Prem
Nestas etapas, explicamos como configurar e criar um cluster do GKE On-Prem para a Apigee híbrida.
- Verifique se você está usando uma versão do VMWare local do Anthos compatível com a versão híbrida 1.10.4. Consulte Plataformas e versões híbridas compatíveis com a Apigee
- Verifique se os relógios de todos os nós e servidores de aplicativos estão sincronizados com o Network Time Protocol (NTP), conforme explicado nos Pré-requisitos. O banco de dados do Cassandra depende da sincronização do Network Time Protocol (NTP) para manter a consistência dos dados. Se você planeja instalar um aplicativo híbrido em várias regiões, verifique se ele está sincronizado com o NTP em todas as regiões.
- Crie o cluster seguindo as instruções em Criar clusters básicos.
Não há problema em criar o cluster apenas com o pool de nós padrão. Você configurará e criará os pools de nós híbridos da Apigee necessários na próxima etapa.
Vá para a próxima etapa somente depois que a criação do cluster for concluída.
- Crie dois pools de nós seguindo as instruções em Como criar e gerenciar pools de nós. Configure os pools de nós com os requisitos mínimos listados na tabela abaixo.
Requisitos mínimos do pool de nós
Certifique-se de atender a esses requisitos mínimos ao criar os pools de nós.
Nome do pool de nós Descrição Mínimo de nós Tipo de máquina
mínimoapigee-data
Um pool de nós com estado usado para o banco de dados do Cassandra. 1 por zona
(3 por região)e2-standard-4
(4 vCPUs, 16 GB de memória)apigee-runtime
Um pool de nós sem estado usado pelo processador de mensagens do ambiente de execução. 1 por zona
(3 por região)e2-standard-4
(4 vCPUs, 16 GB de memória)Para mais detalhes sobre a configuração do pool de nós, consulte Configurar pools de nós dedicados.
- (Opcional) Se quiser, exclua o pool de nós
default
. Consulte Excluir um pool de nós. -
Configurar o armazenamento de disco de estado sólido (SSD) permanente para o Cassandra. Não é possível usar SSDs locais. Para mais informações, consulte Alterar a classe de armazenamento padrão na documentação do Kubernetes.
- Consiga o nome da StorageClass padrão atual:
kubectl get sc
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 - Descreva a StorageClass chamada
standard-rwo
. Observe que o tipo dela épd-balanced
:kubectl describe sc standard-rwo
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>
- Crie um novo arquivo chamado
storageclass.yaml
. - Adicione este código ao arquivo. Observe que o nome da nova classe é
apigee-sc
. Use o nome que preferir. Além disso, 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 cluster do Kubernetes:
kubectl apply -f storageclass.yaml
- Execute os dois comandos a seguir para alterar a StorageClass padrão:
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 padrão é chamada
apigee-sc
:kubectl get sc
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
- Consiga o nome da StorageClass padrão atual:
Quando tiver um cluster instalado e em execução, vá para a próxima etapa.
Anthos em bare metal
Criar um cluster no Anthos em bare metal
Nestas etapas, explicamos como configurar e criar um cluster para a Apigee híbrida no Anthos em bare metal. Com o Anthos em bare metal, você executa os clusters do Kubernetes diretamente nos seus recursos de máquina.
- Verifique se você está usando uma versão do Anthos em bare metal compatível com a versão híbrida 1.10.4. Consulte Plataformas e versões híbridas compatíveis com a Apigee
- Verifique se os relógios de todos os nós e servidores de aplicativos estão sincronizados com o Network Time Protocol (NTP), conforme explicado nos Pré-requisitos. O banco de dados do Cassandra depende da sincronização do Network Time Protocol (NTP) para manter a consistência dos dados. Se você planeja instalar um aplicativo híbrido em várias regiões, verifique se elas estão sincronizadas com o NTP em todas as regiões.
- Consulte a Visão geral dos pré-requisitos de instalação e Como criar clusters: visão geral.
- Crie o cluster com dois pools de nós configurados conforme descrito abaixo:
- Siga as instruções de criação do cluster no guia de início rápido de clusters do Anthos em bare metal.
- Crie no mínimo dois pools de nós. Configure os pools de nós com os requisitos mínimos listados na tabela abaixo.
As configurações mínimas do cluster são:
Configuração Pool de nós com estado Pool de nós sem estado Finalidade Um pool de nós com estado usado para o banco de dados do Cassandra. Um pool de nós sem estado usado pelo processador de mensagens do ambiente de execução. Nome do rótulo 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 dynamic Gerenciada com o CRD ApigeeDeployment IOPS mínimas do disco 2.000 IOPS com SAN ou armazenamento anexado diretamente. O NFS não é recomendado, mesmo que seja compatível com as IOPS necessárias. 2.000 IOPS com SAN ou armazenamento anexado diretamente. O NFS não é recomendado, mesmo que seja compatível com 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, vá para a próxima etapa.
AKS
Criar um cluster no AKS
Estas etapas explicam como configurar e criar um cluster para a Apigee híbrida no AKS.
- Verifique se você está usando uma versão do AKS compatível com a versão híbrida 1.10.4. Consulte Plataformas e versões híbridas compatíveis com a Apigee
- Verifique se os relógios de todos os nós e servidores de aplicativos estão sincronizados com o Network Time Protocol (NTP), conforme explicado nos Pré-requisitos. O banco de dados do Cassandra depende da sincronização do Network Time Protocol (NTP) para manter a consistência dos dados. Se você planeja instalar um aplicativo híbrido em várias regiões, verifique se ele está sincronizado com o NTP em todas as regiões.
- Crie o cluster usando a CLI do Azure ou o Portal do Azure e crie dois pools de nós, conforme descrito abaixo.
As configurações mínimas do cluster são:
Configuração Pool de nós com estado Pool de nós sem estado Finalidade Um pool de nós com estado usado para o banco de dados do Cassandra. Um pool de nós sem estado usado pelo processador de mensagens do ambiente de execução. Nome do rótulo 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 dynamic Gerenciada com o CRD ApigeeDeployment IOPS mínimas do disco 2.000 IOPS com SAN ou armazenamento anexado diretamente. O NFS não é recomendado, mesmo que seja compatível com as IOPS necessárias. 2.000 IOPS com SAN ou armazenamento anexado diretamente. O NFS não é recomendado, mesmo que seja compatível com 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, vá para a próxima etapa.
EKS
Criar um cluster no EKS
Estas etapas explicam como configurar e criar um cluster para a Apigee híbrida no EKS.
- Verifique se você está usando uma versão do EKS compatível com a versão híbrida 1.10.4. Consulte Plataformas e versões híbridas compatíveis com a Apigee
- Verifique se os relógios de todos os nós e servidores de aplicativos estão sincronizados com o Network Time Protocol (NTP), conforme explicado nos Pré-requisitos. O banco de dados do Cassandra depende da sincronização do Network Time Protocol (NTP) para manter a consistência dos dados. Se você planeja instalar um aplicativo híbrido em várias regiões, verifique se elas estão sincronizadas com o NTP em todas as regiões.
- Se você estiver usando o Kubernetes versão 1.24 ou mais recente, verifique se instalou o driver CSI do Kubernetes para Amazon EBS.
- Use as instruções a seguir para criar um cluster de usuário e dois pools de nós, conforme descrito abaixo.
As configurações mínimas do cluster são:
Configuração Pool de nós com estado Pool de nós sem estado Finalidade Um pool de nós com estado usado para o banco de dados do Cassandra. Um pool de nós sem estado usado pelo processador de mensagens do ambiente de execução. Nome do rótulo 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 dynamic Gerenciada com o CRD ApigeeDeployment IOPS mínimas do disco 2.000 IOPS com SAN ou armazenamento anexado diretamente. O NFS não é recomendado, mesmo que seja compatível com as IOPS necessárias. 2.000 IOPS com SAN ou armazenamento anexado diretamente. O NFS não é recomendado, mesmo que seja compatível com 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, vá para a próxima etapa.
GKE na AWS
Criar um cluster no GKE na AWS
Estas etapas explicam como configurar e criar um cluster para a Apigee híbrida no GKE na AWS.
- Verifique se você está usando uma versão do GKE compatível com a versão híbrida 1.10.4. Consulte Plataformas e versões híbridas compatíveis com a Apigee
- Verifique se os relógios de todos os nós e servidores de aplicativos estão sincronizados com o Network Time Protocol (NTP), conforme explicado nos Pré-requisitos. O banco de dados do Cassandra depende da sincronização do Network Time Protocol (NTP) para manter a consistência dos dados. Se você planeja instalar um aplicativo híbrido em várias regiões, verifique se elas estão sincronizadas com o NTP em todas as regiões.
- Use as instruções a seguir para criar um cluster de usuário e dois pools de nós, conforme descrito abaixo.
As configurações mínimas do cluster são:
Configuração Pool de nós com estado Pool de nós sem estado Finalidade Um pool de nós com estado usado para o banco de dados do Cassandra. Um pool de nós sem estado usado pelo processador de mensagens do ambiente de execução. Nome do rótulo 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 dynamic Gerenciada com o CRD ApigeeDeployment IOPS mínimas do disco 2.000 IOPS com SAN ou armazenamento anexado diretamente. O NFS não é recomendado, mesmo que seja compatível com as IOPS necessárias. 2.000 IOPS com SAN ou armazenamento anexado diretamente. O NFS não é recomendado, mesmo que seja compatível com 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, vá para a próxima etapa.
OpenShift
Criar um cluster no OpenShift
Estas etapas explicam como configurar e criar um cluster para a Apigee híbrida no OpenShift.
- Verifique se você está usando uma versão do OpenShift compatível com a versão híbrida 1.10.4. Consulte Plataformas e versões híbridas compatíveis com a Apigee
- Verifique se os relógios de todos os nós e servidores de aplicativos estão sincronizados com o Network Time Protocol (NTP), conforme explicado nos Pré-requisitos. O banco de dados do Cassandra depende da sincronização do Network Time Protocol (NTP) para manter a consistência dos dados. Se você planeja instalar um aplicativo híbrido em várias regiões, verifique se elas estão sincronizadas com o NTP em todas as regiões.
- Crie o cluster do OpenShift para implantar no plano do ambiente de execução,
instale a Apigee no cluster de usuário do OpenShift e crie dois pools de nós.
Como parte da instalação do OpenShift, instale e configure a ferramenta da CLI
oc
. Consulte Primeiros passos com a CLI do OpenShift na documentação do OpenShift.As configurações mínimas do cluster são:
Configuração Pool de nós com estado Pool de nós sem estado Finalidade Um pool de nós com estado usado para o banco de dados do Cassandra. Um pool de nós sem estado usado pelo processador de mensagens do ambiente de execução. Nome do rótulo 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 dynamic Gerenciada com o CRD ApigeeDeployment IOPS mínimas do disco 2.000 IOPS com SAN ou armazenamento anexado diretamente. O NFS não é recomendado, mesmo que seja compatível com as IOPS necessárias. 2.000 IOPS com SAN ou armazenamento anexado diretamente. O NFS não é recomendado, mesmo que seja compatível com 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
Depois de instalar um cluster, acesse a próxima etapa.
1 (NEXT) Step 2: Install cert-manager 3 4 5 6 7 8 9 10 11