Neste guia, mostramos como automatizar a implantação de um sistema de escalonamento horizontal do SAP HANA em um cluster de alta disponibilidade (HA, na sigla em inglês) do SUSE Linux Enterprise Server (SLES) no Google Cloud.
Neste guia, usamos o Terraform para implantar um sistema de escalonamento horizontal de vários hosts do SAP HANA, um endereço IP virtual (VIP, na sigla em inglês) com uma implementação do balanceador de carga de rede de passagem interna. um cluster de alta disponibilidade baseado em SO, de acordo com as práticas recomendadas do Google Cloud, SAP e SUSE.
Um dos sistemas SAP HANA funciona como o sistema primário ativo e o outro como sistema secundário em espera. Implante os dois sistemas SAP HANA na mesma região, de preferência em diferentes zonas.
O cluster implantado inclui as seguintes funções e recursos:
- O gerenciador de recursos do cluster de alta disponibilidade do Pacemaker
- Um mecanismo de isolamento do Google Cloud
- Um IP virtual (VIP) que usa uma implementação de balanceador de carga interno TCP de
nível 4, incluindo:
- Uma reserva do endereço IP que você seleciona para o VIP.
- Dois grupos de instâncias do Compute Engine.
- Um balanceador de carga interno de TCP.
- Uma verificação de integridade do Compute Engine.
- O padrão de alta disponibilidade do SUSE
- O pacote de agente de recursos SUSE SAPHanaSR
- Replicação síncrona do sistema
- Memória pré-carregada
- Reinicialização automática da instância com falha como nova instância secundária
Se você precisar de um sistema de escalonamento horizontal com hosts em espera para failover automático do host do SAP HANA, consulte Terraform: sistema de escalonamento horizontal do SAP HANA com guia de implantação de failover automático do host do Google Analytics.
Para implantar um sistema SAP HANA sem um cluster de alta disponibilidade do Linux ou hosts em espera, use o Guia de implantação do SAP HANA.
Este guia é destinado a usuários avançados do SAP HANA familiarizados com as configurações de alta disponibilidade do Linux para SAP HANA.
Pré-requisitos
Antes de criar o cluster de alta disponibilidade do SAP HANA, verifique se os pré-requisitos a seguir são atendidos:
- Você leu o Guia de planejamento do SAP HANA e o Guia de planejamento de alta disponibilidade do SAP HANA.
- Você ou sua organização tem uma conta do Google Cloud e criou um projeto para a implantação do SAP HANA. Para informações sobre como criar contas e projetos do Google Cloud, consulte Como configurar sua Conta do Google.
- Se você precisar que a carga de trabalho da SAP seja executada em conformidade com residência de dados, controle de acesso, equipes de suporte ou requisitos regulatórios, crie a pasta do Assured Workloads necessária. Para mais informações, consulte Controles soberanos e de conformidade para a SAP no Google Cloud.
A mídia de instalação do SAP HANA está armazenada em um bucket do Cloud Storage disponível no projeto e na região de implantação. Para informações sobre como fazer o upload da mídia de instalação do SAP HANA para um bucket do Cloud Storage, consulte Como criar um bucket do Cloud Storage para os arquivos de instalação do SAP HANA.
Se o login do SO estiver ativado nos metadados do projeto, você precisará desativar o login do SO temporariamente até que a implantação seja concluída. Para fins de implantação, este procedimento configura chaves SSH em metadados de instâncias. Quando o login do SO é ativado, as configurações de chave SSH baseadas em metadados são desativadas e a implantação falha. Após a conclusão da implantação, ative o login do SO novamente.
Veja mais informações em:
Se você estiver usando o DNS interno da VPC, o valor da variável
vmDnsSetting
nos metadados do projeto do Google Cloud precisará serGlobalDefault
ouZonalPreferred
para ativar a resolução dos nomes de nó nas zonas. A configuração padrão devmDnsSetting
éZonalOnly
. Para mais informações, consulte estes tópicos:
Como criar uma rede
Por motivos de segurança, crie uma nova rede. Para controlar quem tem acesso a ela, adicione regras de firewall ou use outro método de controle de acesso.
Caso o projeto tenha uma rede VPC padrão, não a use. Em vez disso, crie sua própria rede VPC para que as únicas regras de firewall aplicadas sejam aquelas criadas explicitamente por você.
Durante a implantação, as instâncias de VM normalmente exigem acesso à Internet para fazer o download do agente do Google Cloud para SAP. Se você estiver usando uma das imagens Linux certificadas pelo SAP disponíveis no Google Cloud, a instância da VM também exigirá acesso à Internet para registrar a licença e acessar repositórios de fornecedor do sistema operacional. Uma configuração com um gateway NAT e tags de rede da VM é compatível com esse acesso, mesmo se as VMs de destino não tiverem IPs externos.
Para criar uma rede VPC para o projeto, siga estas etapas:
-
Crie uma rede de modo personalizado. Para mais informações, consulte Como criar uma rede de modo personalizado.
-
Crie uma sub-rede e especifique a região e o intervalo de IP. Para mais informações, consulte Como adicionar sub-redes.
Como configurar um gateway NAT
Se você precisar criar uma ou mais VMs sem endereços IP públicos, será necessário usar a conversão de endereços de rede (NAT) para permitir que as VMs acessem a Internet. Use o Cloud NAT, um serviço gerenciado distribuído e definido pelo software do Google Cloud que permite que as VMs enviem pacotes de saída para a Internet e recebam todos os pacotes de resposta de entrada estabelecidos. Se preferir, é possível configurar uma VM separada como um gateway NAT.
Para criar uma instância do Cloud NAT para seu projeto, consulte Como usar o Cloud NAT.
Depois de configurar o Cloud NAT para seu projeto, as instâncias de VM poderão acessar a Internet com segurança sem um endereço IP público.
Como adicionar regras de firewall
Por padrão, uma regra de firewall implícita bloqueia conexões de entrada de fora da rede de nuvem privada virtual (VPC). Para permitir conexões de entrada, configure uma regra de firewall para sua VM. Depois que uma conexão de entrada for estabelecida com uma VM, será permitido o tráfego nas duas direções nessa conexão.
Também é possível criar uma regra de firewall para permitir o acesso externo a portas especificadas
ou para restringir o acesso entre as VMs na mesma rede. Se o tipo de rede VPC default
for usado, algumas regras padrão complementares também serão aplicadas, como a regra default-allow-internal
, que permite a conectividade entre VMs na mesma rede em todas as portas.
Dependendo da política de TI que for aplicada ao ambiente, pode ser necessário isolar ou então restringir a conectividade com o host do banco de dados, o que pode ser feito criando regras de firewall.
Dependendo do seu cenário, é possível criar regras de firewall para permitir o acesso para estes itens:
- Portas padrão do SAP listadas no TCP/IP de Todos os Produtos SAP.
- Conexões do seu computador ou do ambiente de rede corporativa para a instância de VM do Compute Engine. Se você não tiver certeza do endereço IP a ser usado, fale com o administrador de redes da sua empresa.
Para criar as regras de firewall para seu projeto, consulte Como criar regras de firewall.
Como criar um cluster de alta disponibilidade do Linux com o SAP HANA instalado
As instruções a seguir usam um arquivo de configuração do Terraform para criar um cluster do SLES com dois sistemas SAP HANA, um sistema SAP HANA principal e um sistema SAP HANA secundário ou em espera na mesma região do Compute Engine. Os sistemas SAP HANA usam replicação síncrona, e o sistema em espera pré-carrega os dados replicados.
Defina as opções de configuração do cluster de alta disponibilidade do SAP HANA em um arquivo de configuração do Terraform.
As instruções a seguir usam o Cloud Shell, mas geralmente são aplicáveis a um terminal local com o Terraform instalado e configurado com o Provedor do Google.
Confirme se as cotas atuais para recursos, como discos permanentes e CPUs, são suficientes para os sistemas SAP HANA que você está prestes a instalar. Se as cotas forem insuficientes, a implantação falhará.
Para saber os requisitos de cotas do SAP HANA, consulte Considerações sobre preços e cotas para SAP HANA.
Abra o Cloud Shell ou seu terminal local.
Faça o download do arquivo de configuração
sap_hana_ha.tf
para o diretório de trabalho executando o comando a seguir no Cloud Shell ou no terminal:$
wget https://storage.googleapis.com/cloudsapdeploy/terraform/latest/terraform/sap_hana_ha/terraform/sap_hana_ha.tfAbra o arquivo
sap_hana_ha.tf
no editor de código do Cloud Shell ou, se estiver usando seu terminal, abra o arquivo em um editor de texto de sua escolha.Para abrir o editor de código, clique no ícone de lápis, no canto superior direito da janela do terminal do Cloud Shell.
No arquivo
sap_hana_ha.tf
, atualize os valores do argumento substituindo o conteúdo dentro das aspas duplas pelos valores da sua instalação. Os argumentos são descritos na tabela a seguir.Argumento Tipo de dado Descrição source
String Especifica o local e a versão do módulo do Terraform a serem usados durante a implantação.
O arquivo de configuração
sap_hana_ha.tf
inclui duas instâncias do argumentosource
: uma que está ativa e outra incluída como um comentário. O argumentosource
, que é ativo por padrão, especificalatest
como a versão do módulo. A segunda instância do argumentosource
, que, por padrão, é desativada por um caractere#
inicial, especifica um carimbo de data/hora que identifica uma versão do módulo.Se você precisar que todas as implantações usem a mesma versão do módulo, remova o caractere
#
líder do argumentosource
que especifica o carimbo de data/hora da versão e o adiciona aossource
que especificalatest
.project_id
String Especifique o ID do projeto do Google Cloud em que você está implantando esse sistema. Por exemplo, my-project-x
.machine_type
String Especifique o tipo de máquina virtual (VM) do Compute Engine em que você precisa executar o sistema SAP. Se você precisar de um tipo de VM personalizado, especifique um tipo de VM predefinido com um número de vCPUs o mais próximo possível do necessário, mesmo que maior. Após a conclusão da implantação, modifique o número de vCPUs e a quantidade de memória. Por exemplo,
n1-highmem-32
.network
String Especifique o nome da rede em que você precisa criar o balanceador de carga que gerencia o VIP. Se você estiver usando uma rede VPC compartilhada, será preciso adicionar o ID do projeto host como um diretório pai do nome da rede. Por exemplo,
HOST_PROJECT_ID/NETWORK_NAME
.subnetwork
String O nome da sub-rede criada em um passo anterior. Se você estiver implantando em uma VPC compartilhada, especifique esse valor como SHARED_VPC_PROJECT_ID/SUBNETWORK
. Por exemplo,myproject/network1
.linux_image
String Especifique o nome da imagem do sistema operacional Linux em que você quer implantar o sistema SAP. Por exemplo, sles-15-sp5-sap
. Para ver a lista de imagens do sistema operacional disponíveis, consulte a página Imagens no console do Google Cloud.linux_image_project
String Especifique o projeto do Google Cloud que contém a imagem que você especificou para o argumento linux_image
. Talvez seja seu próprio projeto ou um projeto de imagem do Google Cloud. Para uma imagem do Compute Engine, especifiquesuse-sap-cloud
. Para encontrar o projeto de imagem do sistema operacional, consulte Detalhes do sistema operacional.primary_instance_name
String Especifique um nome da instância de VM para o sistema SAP HANA principal. O nome pode conter letras minúsculas, números ou hífens. primary_zone
String Especifique uma zona em que o sistema SAP HANA principal está implantado. As zonas principal e secundária precisam estar na mesma região. Por exemplo, us-east1-c
secondary_instance_name
String Especifique um nome da instância de VM para o sistema secundário do SAP HANA. O nome pode conter letras minúsculas, números ou hífens. secondary_zone
String Especifique uma zona em que o sistema secundário do SAP HANA está implantado. As zonas principal e secundária precisam estar na mesma região. Por exemplo, us-east1-b
majority_maker_instance_name
String Especifique um nome para a instância de VM do Compute Engine que atua como maior fabricante.
Este argumento está disponível na versão
202307270727
do módulosap_hana_ha
ou posterior.majority_maker_instance_type
String Especifique o tipo de máquina virtual (VM, na sigla em inglês) do Compute Engine que você quer usar para a instância de maioria. Por exemplo, n1-highmem-32
.Se você precisar de um tipo de VM personalizado, especifique um tipo de VM predefinido com um número de vCPUs o mais próximo possível do necessário, mesmo que maior. Após a conclusão da implantação, modifique o número de vCPUs e a quantidade de memória..
Este argumento está disponível na versão
202307270727
do módulosap_hana_ha
ou posterior.majority_maker_zone
String Especifique uma zona em que a instância de VM da maioria dos fabricantes está implantada. Essa zona precisa estar na mesma região que as zonas principal e secundária. Por exemplo, us-east1-d
.O Google Cloud recomenda que a instância de VM da maioria dos fabricantes seja implantada em uma zona diferente dos sistemas principal e secundário do SAP HANA.
Este argumento está disponível na versão
202307270727
do módulosap_hana_ha
ou posterior.sap_hana_deployment_bucket
String Para instalar automaticamente o SAP HANA nas VMs implantadas, especifique o caminho do bucket do Cloud Storage que contém os arquivos de instalação do SAP HANA. Não inclua gs://
no caminho. Inclua apenas o nome do bucket e os nomes das pastas. Por exemplo,my-bucket-name/my-folder
.O bucket do Cloud Storage precisa existir no projeto do Google Cloud especificado para o argumento
project_id
.sap_hana_scaleout_nodes
Inteiro Especifique o número de hosts workers necessários para seu sistema de escalonamento horizontal. Para implantar um sistema de escalonamento horizontal, você precisa de pelo menos um host de worker. O Terraform cria os hosts de worker além da instância principal do SAP HANA. Por exemplo, se você especificar
3
, quatro instâncias do SAP HANA serão implantadas no sistema de escalonamento horizontal nas zonas principal e secundária.sap_hana_sid
String Para instalar automaticamente o SAP HANA nas VMs implantadas, especifique o ID do sistema SAP HANA. O ID precisa ter três caracteres alfanuméricos e começar com uma letra. Todas as letras precisam estar em maiúsculas. Por exemplo, ED1
.sap_hana_instance_number
Inteiro Opcional. Especifique o número da instância, de 0 a 99, do sistema SAP HANA. O padrão é 0
.sap_hana_sidadm_password
String Para instalar automaticamente o SAP HANA nas VMs implantadas, especifique uma senha temporária SIDadm
para os scripts de instalação a serem usados durante a implantação. A senha precisa conter pelo menos oito caracteres e incluir pelo menos uma letra maiúscula, uma letra minúscula e um número.Em vez de especificar uma senha como texto simples, recomendamos o uso de um secret. Para mais informações, consulte Gerenciamento de senhas.
sap_hana_sidadm_password_secret
String Opcional. Se você estiver usando o Secret Manager para armazenar a SIDadm
e depois especifique o Nome do secret que corresponde a essa senha.No Secret Manager, verifique se o valor do Secret, que é a senha, contém pelo menos oito caracteres e inclui pelo menos uma letra maiúscula, uma minúscula e um número.
Para mais informações, consulte Gerenciamento de senhas.
sap_hana_system_password
String Para instalar automaticamente o SAP HANA nas VMs implantadas, especifique uma senha temporária de superusuário do banco de dados para os scripts de instalação usarem durante a implantação. A senha precisa conter pelo menos oito caracteres e incluir pelo menos uma letra maiúscula, uma letra minúscula e um número. Em vez de especificar uma senha como texto simples, recomendamos o uso de um secret. Para mais informações, consulte Gerenciamento de senhas.
sap_hana_system_password_secret
String Opcional. Se você estiver usando o Secret Manager para armazenar a senha de superusuário do banco de dados, especifique o Nome do secret que corresponde a essa senha. No Secret Manager, verifique se o valor do Secret, que é a senha, contém pelo menos oito caracteres e inclui pelo menos uma letra maiúscula, uma minúscula e um número.
Para mais informações, consulte Gerenciamento de senhas.
sap_hana_double_volume_size
Booleano Opcional. Para duplicar o tamanho do volume do HANA, especifique true
. Esse argumento é útil quando você quer implantar várias instâncias do SAP HANA ou uma instância de recuperação de desastres do SAP HANA na mesma VM. Por padrão, o tamanho do volume é calculado automaticamente para ser o tamanho mínimo necessário para o tamanho da VM, sem deixar de atender aos requisitos de certificação e suporte da SAP. O valor padrão éfalse
.sap_hana_backup_size
Inteiro Opcional. Especifique o tamanho do volume /hanabackup
em GB. Se você não especificar ou definir esse argumento como0
, o script de instalação vai provisionar a instância do Compute Engine com um volume de backup do HANA duas vezes maior que a memória total.sap_hana_sidadm_uid
Inteiro Opcional. Especifique um valor para substituir o valor padrão do ID do usuário SID_LCadm. O valor padrão é 900
. É possível alterá-lo para um valor diferente para maior consistência no cenário da SAP.sap_hana_sapsys_gid
Inteiro Opcional. Substitui o ID do grupo padrão para sapsys
. O valor padrão é79
.sap_vip
String Especifique o endereço IP que você usará para o VIP. O endereço IP precisa estar dentro do intervalo de endereços IP atribuídos à sua sub-rede. O arquivo de configuração do Terraform reserva esse endereço IP para você. primary_instance_group_name
String Opcional. Define o nome do grupo de instâncias não gerenciadas para o nó principal.a O nome padrão é ig-PRIMARY_INSTANCE_NAME
.secondary_instance_group_name
String Opcional. Define o nome do grupo de instâncias não gerenciadas para o nó secundário. O nome padrão é ig-SECONDARY_INSTANCE_NAME
.loadbalancer_name
String Opcional. Especifique o nome do balanceador de carga de rede de passagem interno. O nome padrão é lb-SAP_HANA_SID-ilb
.network_tags
String Opcional. Especifique uma ou mais tags de rede separadas por vírgula que você quer associar às suas instâncias de VM para fins de firewall ou roteamento. Se você especificar
public_ip = false
e não inserir uma tag de rede, forneça outro meio de acesso à Internet.nic_type
String Opcional. Especifique a interface de rede a ser usada com a instância de VM. É possível especificar o valor GVNIC
ouVIRTIO_NET
. Para usar uma NIC virtual do Google (gVNIC), você precisa especificar uma imagem do SO compatível com gVNIC como o valor do argumentolinux_image
. Para conferir a lista de imagens do SO, consulte Detalhes do sistema operacional.Se você não especificar um valor para esse argumento, a interface de rede será selecionada automaticamente com base no tipo de máquina especificado para o argumento
Este argumento está disponível na versãomachine_type
.202302060649
do módulosap_hana
ou posterior.disk_type
String Opcional. Especifique o tipo padrão de disco permanente ou Hyperdisk que você quer implantar para todos os volumes SAP na implantação. O valor padrão é pd-ssd
. Os seguintes valores são válidos para esse argumento:pd-ssd
,pd-balanced
,hyperdisk-extreme
,hyperdisk-balanced
epd-extreme
.Quando você especifica o valor
hyperdisk-extreme
ouhyperdisk-balanced
, o diretório/usr/sap
é montado em um disco permanente equilibrado separado (pd-balanced
). Isso ocorre porque o diretório/usr/sap
não requer um desempenho tão alto quanto o diretório/hana/data
ou/hana/log
. Nas implantações de escalonamento vertical do SAP HANA, um disco permanente equilibrado e separado também é implantado no diretório/hana/shared
.É possível modificar esse tipo de disco padrão e o tamanho do disco padrão associado e as IOPS padrão usando alguns argumentos avançados. Para ver mais informações, navegue até seu diretório de trabalho, execute o comando
terraform init
e veja o arquivo/.terraform/modules/sap_hana_ha/variables.tf
. Antes de usar esses argumentos na produção, é preciso testá-los em um ambiente de teste.use_single_shared_data_log_disk
Booleano Opcional. O valor padrão é false
, que direciona o Terraform para implantar um disco permanente ou hiperdisco separado para cada um dos seguintes volumes SAP:/hana/data
,/hana/log
e/hana/shared
e/usr/sap
. Para montar esses volumes SAP no mesmo disco permanente ou Hyperdisk, especifiquetrue
.include_backup_disk
Booleano Opcional. Esse argumento é aplicável a implantações de escalonamento vertical do SAP HANA. O valor padrão é true
, que direciona o Terraform a implantar um disco permanente HDD padrão para hospedar o diretório/hanabackup
. O tamanho desse disco é determinado pelo argumentosap_hana_backup_size
.Se você definir o valor de
include_backup_disk
comofalse
, nenhum disco será implantado no diretório/hanabackup
.enable_fast_restart
Booleano Opcional. Esse argumento determina se a opção de reinicialização rápida do SAP HANA está ativada para sua implantação. O valor padrão é true
. O Google Cloud recomenda ativar a opção de reinicialização rápida do SAP HANA.Este argumento está disponível na versão
202309280828
do módulosap_hana_ha
ou posterior.public_ip
Booleano Opcional. Determina se um endereço IP público é adicionado na sua instância de VM. O valor padrão é true
.service_account
String Opcional. Especifique o endereço de e-mail de uma conta de serviço gerenciada pelo usuário que será usada pelas VMs do host e pelos programas executados nas VMs do host. Por exemplo, svc-acct-name@project-id.iam.gserviceaccount.com
.Se você especificar esse argumento sem um valor ou omiti-lo, o script de instalação usará a conta de serviço padrão do Compute Engine. Para mais informações, consulte Gerenciamento de identidade e acesso para programas SAP no Google Cloud.
sap_deployment_debug
Booleano Opcional. Somente quando o Cloud Customer Care solicitar que você ative a depuração da sua implantação, especifique true
, o que faz com que a implantação gere registros de implantação detalhados. O valor padrão éfalse
.primary_reservation_name
String Opcional. Para usar uma reserva de VM do Compute Engine específica para provisionar a instância da VM que hospeda a instância principal do SAP HANA do cluster de alta disponibilidade, especifique o nome da reserva. Por padrão, o script de instalação seleciona qualquer reserva disponível do Compute Engine com base nas condições a seguir. Para que uma reserva seja utilizável, independentemente de você especificar um nome ou o script de instalação a selecionar automaticamente, a reserva precisa ser definida com o seguinte:
-
A opção
specificReservationRequired
está definida comotrue
ou, no console do Google Cloud, a opção Selecionar uma reserva específica está selecionada. -
Alguns tipos de máquina do Compute Engine são compatíveis com plataformas de CPU que não são
cobertas pela certificação SAP do tipo de máquina. Se a reserva
de destino for de qualquer um dos seguintes tipos de máquina, a reserva
precisará especificar as plataformas mínimas de CPU, conforme indicado:
n1-highmem-32
: Intel Broadwelln1-highmem-64
: Intel Broadwelln1-highmem-96
: Intel Skylakem1-megamem-96
: Intel Skylake
As plataformas de CPU mínimas para todos os outros tipos de máquina que são
certificadas pela SAP para uso no Google Cloud estão em conformidade com o requisito de CPU mínimo da SAP.
secondary_reservation_name
String Opcional. Para usar uma reserva de VM específica do Compute Engine para provisionar a instância da VM que hospeda a instância secundária do SAP HANA do cluster de alta disponibilidade, especifique o nome da reserva. Por padrão, o script de instalação seleciona qualquer reserva disponível do Compute Engine com base nas condições a seguir. Para que uma reserva seja utilizável, independentemente de você especificar um nome ou o script de instalação a selecionar automaticamente, a reserva precisa ser definida com o seguinte:
-
A opção
specificReservationRequired
está definida comotrue
ou, no console do Google Cloud, a opção Selecionar uma reserva específica está selecionada. -
Alguns tipos de máquina do Compute Engine são compatíveis com plataformas de CPU que não são
cobertas pela certificação SAP do tipo de máquina. Se a reserva
de destino for de qualquer um dos seguintes tipos de máquina, a reserva
precisará especificar as plataformas mínimas de CPU, conforme indicado:
n1-highmem-32
: Intel Broadwelln1-highmem-64
: Intel Broadwelln1-highmem-96
: Intel Skylakem1-megamem-96
: Intel Skylake
As plataformas de CPU mínimas para todos os outros tipos de máquina que são
certificadas pela SAP para uso no Google Cloud estão em conformidade com o requisito de CPU mínimo da SAP.
primary_static_ip
String Opcional. Especifique um endereço IP estático válido para a instância de VM primária no cluster de alta disponibilidade. Se não houver uma especificação, um endereço IP será gerado automaticamente para sua instância de VM. Por exemplo, 128.10.10.10
.Este argumento está disponível na versão
202306120959
do módulosap_hana_ha
ou posterior.secondary_static_ip
String Opcional. Especifique um endereço IP estático válido para a instância de VM secundária no cluster de alta disponibilidade. Se não houver uma especificação, um endereço IP será gerado automaticamente para sua instância de VM. Por exemplo, 128.11.11.11
.Este argumento está disponível na versão
202306120959
do módulosap_hana_ha
ou posterior.primary_worker_static_ips
List(String) Opcional. Especifique uma matriz de endereços IP estáticos válidos para as instâncias de worker na instância principal do sistema de alta disponibilidade de escalonamento horizontal do SAP HANA. Se você não especificar um valor para esse argumento, um endereço IP será gerado automaticamente para cada instância de VM de worker. Por exemplo, [ "1.0.0.1", "2.3.3.4" ]
.Os endereços IP estáticos são atribuídos na ordem de criação da instância. Por exemplo, se você optar por implantar três instâncias de worker, mas especificar apenas dois endereços IP para o argumento
primary_worker_static_ips
, esses endereços IP são atribuídos às duas primeiras instâncias de VM implantadas pela configuração do Terraform. Para a terceira instância da VM de worker, o endereço IP é gerado automaticamente.Este argumento está disponível na versão
202307270727
do módulosap_hana_ha
ou posterior.secondary_worker_static_ips
List(String) Opcional. Especifique uma matriz de endereços IP estáticos válidos para as instâncias de worker na instância secundária do sistema de alta disponibilidade de escalonamento horizontal do SAP HANA. Se você não especificar um valor para esse argumento, um endereço IP será gerado automaticamente para cada instância de VM de worker. Por exemplo, [ "1.0.0.2", "2.3.3.5" ]
.Os endereços IP estáticos são atribuídos na ordem de criação da instância. Por exemplo, se você optar por implantar três instâncias de worker, mas especificar apenas dois endereços IP para o argumento
secondary_worker_static_ips
, esses endereços IP são atribuídos às duas primeiras instâncias de VM implantadas pela configuração do Terraform. Para a terceira instância da VM de worker, o endereço IP é gerado automaticamente.Este argumento está disponível na versão
202307270727
do módulosap_hana_ha
ou posterior.No exemplo a seguir, mostramos um arquivo de configuração concluído que define um cluster de alta disponibilidade para um sistema de escalonamento horizontal do SAP HANA no SLES. O cluster usa um balanceador de carga de rede de passagem interno para gerenciar o VIP.
O Deployment Manager implanta os recursos do Google Cloud definidos no arquivo de configuração e, em seguida, os scripts assumem a configuração do sistema operacional, instalam o SAP HANA, configuram a replicação e configuram o cluster de alta disponibilidade do Linux.
Para esclarecer, os comentários na configuração de exemplo a seguir são omitidos.
# ... module "sap_hana_ha" { source = "https://storage.googleapis.com/cloudsapdeploy/terraform/latest/terraform/sap_hana_ha/sap_hana_ha_module.zip" # # By default, this source file uses the latest release of the terraform module # for SAP on Google Cloud. To fix your deployments to a specific release # of the module, comment out the source argument above and uncomment the source argument below. # # source = "https://storage.googleapis.com/cloudsapdeploy/terraform/YYYYMMDDHHMM/terraform/sap_hana_ha/sap_hana_ha_module.zip" # ... project_id = "example-project-123456" machine_type = "n2-highmem-32" network = "example-network" subnetwork = "example-subnet-us-central1" linux_image = "sles-15-sp4-sap" linux_image_project = "suse-sap-cloud" primary_instance_name = "example-ha-vm1" primary_zone = "us-central1-a" secondary_instance_name = "example-ha-vm2" secondary_zone = "us-central1-b" majority_maker_instance_name = "example-ha-mj" majority_maker_instance_type = "n2-highmem-32" majority_maker_zone = "us-central1-c" sap_hana_scaleout_nodes = 2 # ... sap_hana_deployment_bucket = "my-hana-bucket" sap_hana_sid = "HA1" sap_hana_instance_number = 00 sap_hana_sidadm_password_secret = "hana_sid_adm_pwd" sap_hana_system_password_secret = "hana_sys_pwd" # ... sap_vip = "10.0.0.100" primary_instance_group_name = "ig-example-ha-vm1" secondary_instance_group_name = "ig-example-ha-vm2" loadbalancer_name = "lb-ha1" # ... network_tags = ["hana-ha-ntwk-tag"] service_account = "sap-deploy-example@example-project-123456.iam.gserviceaccount.com" primary_static_ip = "10.0.0.1" secondary_static_ip = "10.0.0.2" primary_worker_static_ips = ["10.0.0.3", "10.0.0.4"] secondary_worker_static_ips = ["10.0.0.5", "10.0.0.6"] enable_fast_restart = true # ... }
-
A opção
Para inicializar seu diretório de trabalho atual e fazer o download do plug-in do provedor do Terraform e dos arquivos de módulo para o Google Cloud:
terraform init
O comando
terraform init
prepara seu diretório de trabalho para outros comandos do Terraform.Para forçar uma atualização do plug-in do provedor e dos arquivos de configuração no diretório de trabalho, especifique a sinalização
--upgrade
. Se a--upgrade
sinalização é omitida e você não faz alterações no seu diretório de trabalho, o Terraform usa as cópias em cache local, mesmo selatest
é especificado nasource
URLterraform init --upgrade
Como opção, crie o plano de execução do Terraform:
terraform plan
O comando
terraform plan
mostra as alterações exigidas pela configuração atual. Se você pular essa etapa, o comandoterraform apply
criará automaticamente um novo plano e solicitará que você o aprove.Aplique o plano de execução:
terraform apply
Quando for solicitada a aprovação das ações, digite
yes
.O comando
terraform apply
configura a infraestrutura do Google Cloud e, em seguida, controla manualmente um script que configura o cluster de alta disponibilidade e instala o SAP HANA de acordo com os argumentos definidos no arquivo de configuração do Terraform.Embora o Terraform tenha controle, as mensagens de status são gravadas no Cloud Shell. Depois que o script é invocado, as mensagens de status são gravadas no Logging e podem ser visualizadas no console do Google Cloud, conforme descrito em Verificar os registros do Logging.
Como verificar a implantação do sistema HANA de alta disponibilidade
A verificação de um cluster de alta disponibilidade do SAP HANA envolve vários procedimentos diferentes:
- Como verificar a geração de registros
- Como verificar a configuração da VM e a instalação do SAP HANA
- Como verificar a configuração do cluster
- Como verificar o balanceador de carga e a integridade dos grupos de instâncias
- Como verificar o sistema SAP HANA usando o SAP HANA Studio
- Como realizar um teste de failover
Verificar os registros
No console do Google Cloud, abra o Cloud Logging para monitorar o progresso da instalação e verificar se há erros.
Filtre os registros:
Explorador de registros
Na página Explorador de registros, acesse o painel Consulta.
No menu suspenso Recurso, selecione Global e clique em Adicionar.
Se a opção Global não for exibida, insira a seguinte consulta no editor de consultas:
resource.type="global" "Deployment"
Clique em Run query.
Visualizador de registros legado
- Na página Visualizador de registros legado, no menu de seleção básico, selecione Global como o recurso de registros.
Analise os registros filtrados:
- Se
"--- Finished"
for exibido, o processamento do Deployment Manager estará concluído e será possível prosseguir para a próxima etapa. Se você vir um erro de cota:
Na página Cotas do IAM e Admin, aumente as cotas que não atendem aos requisitos do SAP HANA listados no Guia de planejamento do SAP HANA.
Abra o Cloud Shell.
Acesse seu diretório de trabalho e exclua a implantação para limpar as VMs e os discos permanentes da instalação com falha:
terraform destroy
Quando for solicitada a aprovação da ação, digite
yes
.Execute a implantação novamente.
- Se
Verificar a configuração da VM e a instalação do SAP HANA
Depois de implantar o sistema SAP HANA sem erros, conecte-se a cada VM usando SSH. Na página Instâncias de VM do Compute Engine, clique no botão SSH para cada instância de VM ou use seu método de SSH preferido.
Mude para o usuário raiz:
sudo su -
No prompt de comando, insira:
df -h
A resposta será semelhante a: Verifique se a saída inclui os diretórios
/hana
, como/hana/data
.example-ha-vm1:~ # df -h Filesystem Size Used Avail Use% Mounted on devtmpfs 4.0M 8.0K 4.0M 1% /dev tmpfs 189G 48M 189G 1% /dev/shm tmpfs 51G 26M 51G 1% /run tmpfs 4.0M 0 4.0M 0% /sys/fs/cgroup /dev/sda3 30G 6.2G 24G 21% / /dev/sda2 20M 3.0M 17M 15% /boot/efi /dev/mapper/vg_hana_shared-shared 256G 41G 215G 16% /hana/shared /dev/mapper/vg_hana_data-data 308G 12G 297G 4% /hana/data /dev/mapper/vg_hana_log-log 128G 8.8G 120G 7% /hana/log /dev/mapper/vg_hana_usrsap-usrsap 32G 265M 32G 1% /usr/sap /dev/mapper/vg_hanabackup-backup 512G 8.5G 504G 2% /hanabackup tmpfs 26G 0 26G 0% /run/user/174 tmpfs 26G 0 26G 0% /run/user/900 tmpfs 26G 0 26G 0% /run/user/0 tmpfs 26G 0 26G 0% /run/user/1000
Verifique o status do novo cluster digitando o comando de status específico para seu sistema operacional:
crm status
Você verá uma saída semelhante ao exemplo a seguir, em que as instâncias de VM nos sistemas principal e secundário do SAP HANA e a instância majoritária do criador são iniciadas.
example-ha-vm1
é a instância principal ativa.example-ha-vm1:~ # crm status Cluster Summary: * Stack: corosync * Current DC: example-ha-vm1 (version 2.1.2+20211124.ada5c3b36-150400.4.9.2-2.1.2+20211124.ada5c3b36) - partition with quorum * Last updated: Sat Jul 15 19:42:56 2023 * Last change: Sat Jul 15 19:42:21 2023 by root via crm_attribute on example-ha-vm1 * 7 nodes configured * 23 resource instances configured Node List: * Online: [ example-ha-mj example-ha-vm1 example-ha-vm1w1 example-ha-vm1w2 example-ha-vm2 example-ha-vm2w1 example-ha-vm2w2 ] Full List of Resources: * STONITH-example-ha-vm1 (stonith:external/gcpstonith): Started example-ha-mj * STONITH-example-ha-vm2 (stonith:external/gcpstonith): Started example-ha-vm1 * STONITH-example-ha-mjw2 (stonith:external/gcpstonith): Started example-ha-vm1w1 * STONITH-example-ha-vm1w1 (stonith:external/gcpstonith): Started example-ha-vm1w2 * STONITH-example-ha-vm2w1 (stonith:external/gcpstonith): Started example-ha-vm2 * STONITH-example-ha-vm1w2 (stonith:external/gcpstonith): Started example-ha-vm2w1 * STONITH-example-ha-vm2w2 (stonith:external/gcpstonith): Started example-ha-mj * Resource Group: g-primary: * rsc_vip_int-primary (ocf::heartbeat:IPaddr2): Started example-ha-vm1 * rsc_vip_hc-primary (ocf::heartbeat:anything): Started example-ha-vm1 * Clone Set: cln_SAPHanaTopology_HA1_HDB00 [rsc_SAPHanaTopology_HA1_HDB00]: * Started: [ example-ha-vm1 example-ha-vm1w1 example-ha-vm1w2 example-ha-vm2 example-ha-vm2w1 example-ha-vm2w2 ] * Stopped: [ example-ha-mj ] * Clone Set: msl_SAPHana_HA1_HDB00 [rsc_SAPHana_HA1_HDB00] (promotable): * Masters: [ example-ha-vm1 ] * Slaves: [ example-ha-vm1w1 example-ha-vm1w2 example-ha-vm2 example-ha-vm2w1 example-ha-vm2w2 ] * Stopped: [ example-ha-mj ]
Altere para o usuário administrador do SAP substituindo SID_LC no seguinte comando pelo valor de
sap_hana_sid
que você especificou no arquivosap_hana_ha.tf
. O valor SID_LC precisa estar em letras minúsculas.su - SID_LCadm
Para verificar se os serviços do SAP HANA, como
hdbnameserver
,hdbindexserver
e outros, estão sendo executados na instância, digite o seguinte comando:HDB info
Verificar a configuração do cluster
Depois que o cluster for implantado com sucesso, verifique as configurações de parâmetros dele. Verifique as configurações exibidas pelo software do cluster e as configurações dos parâmetros no arquivo de configuração do cluster. Compare suas configurações com as configurações do exemplo a seguir, que foi criado pelos scripts de automação usados neste guia.
Exiba as configurações de recursos do cluster:
crm config show
Os scripts de automação usados neste guia criam as configurações de recursos mostradas no exemplo a seguir:
node 1: example-ha-vm1 \ attributes hana_ha1_site=example-ha-vm1 hana_ha1_gra=2.0 node 2: example-ha-vm2 \ attributes hana_ha1_site=example-ha-vm2 hana_ha1_gra=2.0 node 3: example-ha-mj node 4: example-ha-vm1w1 \ attributes hana_ha1_site=example-ha-vm1 hana_ha1_gra=2.0 node 5: example-ha-vm2w1 \ attributes hana_ha1_site=example-ha-vm2 hana_ha1_gra=2.0 node 6: example-ha-vm1w2 \ attributes hana_ha1_site=example-ha-vm1 hana_ha1_gra=2.0 node 7: example-ha-vm2w2 \ attributes hana_ha1_site=example-ha-vm2 hana_ha1_gra=2.0 primitive STONITH-example-ha-mjw2 stonith:external/gcpstonith \ params instance_name=example-ha-mjw2 gcloud_path="/usr/bin/gcloud" logging=yes pcmk_reboot_timeout=300 pcmk_monitor_retries=4 pcmk_delay_max=30 \ op monitor interval=300s timeout=120s \ op start interval=0 timeout=60s \ op stop timeout=15 interval=0s primitive STONITH-example-ha-vm1 stonith:external/gcpstonith \ params instance_name=example-ha-vm1 gcloud_path="/usr/bin/gcloud" logging=yes pcmk_reboot_timeout=300 pcmk_monitor_retries=4 pcmk_delay_max=30 \ op monitor interval=300s timeout=120s \ op start interval=0 timeout=60s \ op stop timeout=15 interval=0s primitive STONITH-example-ha-vm1w1 stonith:external/gcpstonith \ params instance_name=example-ha-vm1w1 gcloud_path="/usr/bin/gcloud" logging=yes pcmk_reboot_timeout=300 pcmk_monitor_retries=4 pcmk_delay_max=30 \ op monitor interval=300s timeout=120s \ op start interval=0 timeout=60s \ op stop timeout=15 interval=0s primitive STONITH-example-ha-vm1w2 stonith:external/gcpstonith \ params instance_name=example-ha-vm1w2 gcloud_path="/usr/bin/gcloud" logging=yes pcmk_reboot_timeout=300 pcmk_monitor_retries=4 pcmk_delay_max=30 \ op monitor interval=300s timeout=120s \ op start interval=0 timeout=60s \ op stop timeout=15 interval=0s primitive STONITH-example-ha-vm2 stonith:external/gcpstonith \ params instance_name=example-ha-vm2 gcloud_path="/usr/bin/gcloud" logging=yes pcmk_reboot_timeout=300 pcmk_monitor_retries=4 \ op monitor interval=300s timeout=120s \ op start interval=0 timeout=60s \ op stop timeout=15 interval=0s primitive STONITH-example-ha-vm2w1 stonith:external/gcpstonith \ params instance_name=example-ha-vm2w1 gcloud_path="/usr/bin/gcloud" logging=yes pcmk_reboot_timeout=300 pcmk_monitor_retries=4 \ op monitor interval=300s timeout=120s \ op start interval=0 timeout=60s \ op stop timeout=15 interval=0s primitive STONITH-example-ha-vm2w2 stonith:external/gcpstonith \ params instance_name=example-ha-vm2w2 gcloud_path="/usr/bin/gcloud" logging=yes pcmk_reboot_timeout=300 pcmk_monitor_retries=4 \ op monitor interval=300s timeout=120s \ op start interval=0 timeout=60s \ op stop timeout=15 interval=0s primitive rsc_SAPHanaTopology_HA1_HDB00 ocf:suse:SAPHanaTopology \ operations $id=rsc_sap2_HA1_HDB00-operations \ op monitor interval=10 timeout=600 \ op start interval=0 timeout=600 \ op stop interval=0 timeout=300 \ params SID=HA1 InstanceNumber=00 primitive rsc_SAPHana_HA1_HDB00 ocf:suse:SAPHanaController \ op start interval=0 timeout=3600 \ op stop interval=0 timeout=3600 \ op promote interval=0 timeout=3600 \ op demote interval=0 timeout=3600 \ op monitor interval=60 role=Master timeout=700 \ op monitor interval=61 role=Slave timeout=700 \ params SID=HA1 InstanceNumber=00 PREFER_SITE_TAKEOVER=true DUPLICATE_PRIMARY_TIMEOUT=7200 AUTOMATED_REGISTER=true primitive rsc_vip_hc-primary anything \ params binfile="/usr/bin/socat" cmdline_options="-U TCP-LISTEN:60000,backlog=10,fork,reuseaddr /dev/null" \ op monitor timeout=20s interval=10s \ op_params depth=0 \ op start timeout=20s interval=0s \ op stop timeout=20s interval=0s primitive rsc_vip_int-primary IPaddr2 \ params ip=10.1.0.23 cidr_netmask=32 nic=eth0 \ op monitor interval=3600s timeout=60s \ op start timeout=20s interval=0s \ op stop timeout=20s interval=0s group g-primary rsc_vip_int-primary rsc_vip_hc-primary \ meta resource-stickiness=0 ms msl_SAPHana_HA1_HDB00 rsc_SAPHana_HA1_HDB00 \ meta clone-node-max=1 master-max=1 interleave=true target-role=Started interleave=true clone cln_SAPHanaTopology_HA1_HDB00 rsc_SAPHanaTopology_HA1_HDB00 \ meta clone-node-max=1 target-role=Started interleave=true location LOC_STONITH_example-ha-vm1 STONITH-example-ha-vm1 -inf: example-ha-vm1 location LOC_STONITH_example-ha-vm1w1 STONITH-example-ha-vm1w1 -inf: example-ha-vm1w1 location LOC_STONITH_example-ha-vm1w2 STONITH-example-ha-vm1w2 -inf: example-ha-vm1w2 location LOC_STONITH_example-ha-vm2 STONITH-example-ha-vm2 -inf: example-ha-vm2 location LOC_STONITH_example-ha-vm2w1 STONITH-example-ha-vm2w1 -inf: example-ha-vm2w1 location LOC_STONITH_example-ha-vm2w2 STONITH-example-ha-vm2w2 -inf: example-ha-vm2w2 location SAPHanaCon_not_on_mm msl_SAPHana_HA1_HDB00 -inf: example-ha-mj location SAPHanaTop_not_on_mm cln_SAPHanaTopology_HA1_HDB00 -inf: example-ha-mj colocation col_saphana_ip_HA1_HDB00 4000: g-primary:Started msl_SAPHana_HA1_HDB00:Master order ord_SAPHana_HA1_HDB00 Optional: cln_SAPHanaTopology_HA1_HDB00 msl_SAPHana_HA1_HDB00 property SAPHanaSR: \ hana_ha1_glob_mts=true \ hana_ha1_site_srHook_example-ha-vm2=SOK \ hana_ha1_site_lss_example-ha-vm1=4 \ hana_ha1_site_srr_example-ha-vm1=P \ hana_ha1_site_lss_example-ha-vm2=4 \ hana_ha1_site_srr_example-ha-vm2=S \ hana_ha1_glob_srmode=syncmem \ hana_ha1_glob_upd=ok \ hana_ha1_site_mns_example-ha-vm1=example-ha-vm1 \ hana_ha1_site_mns_example-ha-vm2=example-ha-vm2 \ hana_ha1_site_lpt_example-ha-vm2=30 \ hana_ha1_site_srHook_example-ha-vm1=PRIM \ hana_ha1_site_lpt_example-ha-vm1=1689450463 \ hana_ha1_glob_sync_state=SOK \ hana_ha1_glob_prim=example-ha-vm1 property cib-bootstrap-options: \ have-watchdog=false \ dc-version="2.1.2+20211124.ada5c3b36-150400.4.9.2-2.1.2+20211124.ada5c3b36" \ cluster-infrastructure=corosync \ cluster-name=hacluster \ maintenance-mode=false \ stonith-timeout=300s \ stonith-enabled=true \ concurrent-fencing=true rsc_defaults build-resource-defaults: \ resource-stickiness=1000 \ migration-threshold=5000 op_defaults op-options: \ timeout=600
Exiba o arquivo de configuração do cluster,
corosync.conf
:cat /etc/corosync/corosync.conf
Os scripts de automação usados neste guia especificam as configurações de parâmetros no arquivo
corosync.conf
, conforme mostrado no exemplo a seguir:totem { version: 2 secauth: off crypto_hash: sha1 crypto_cipher: aes256 cluster_name: hacluster clear_node_high_bit: yes token: 20000 token_retransmits_before_loss_const: 10 join: 60 max_messages: 20 transport: udpu interface { ringnumber: 0 bindnetaddr: "10.1.0.7" mcastport: 5405 ttl: 1 } } logging { fileline: off to_stderr: no to_logfile: no logfile: /var/log/cluster/corosync.log to_syslog: yes debug: off timestamp: on logger_subsys { subsys: QUORUM debug: off } } quorum { provider: corosync_votequorum } nodelist { node { ring0_addr: example-ha-vm1 nodeid: 1 } node { ring0_addr: example-ha-vm2 nodeid: 2 } node { ring0_addr: example-ha-mj nodeid: 3 } node { ring0_addr: example-ha-vm1w1 nodeid: 4 } node { ring0_addr: example-ha-vm2w1 nodeid: 5 } node { ring0_addr: example-ha-vm1w2 nodeid: 6 } node { ring0_addr: example-ha-vm2w2 nodeid: 7 } }
Verificar o balanceador de carga e a integridade dos grupos de instâncias
Para confirmar se o balanceador de carga e a verificação de integridade foram configurados corretamente, verifique o balanceador de carga e os grupos de instâncias no Console do Google Cloud.
No Console do Google Cloud, abra a página Balanceamento de carga.
Na lista de balanceadores de carga, confirme se um balanceador de carga foi criado para seu cluster de alta disponibilidade.
Na página Detalhes do balanceador de carga, na seção Back-end, na coluna Íntegra, confirme se um dos grupos de instâncias mostra 1 de 1 e a outra mostra 0 de 1. Após um failover, o indicador íntegro, 1 de 1, muda para o novo grupo de instâncias ativas.
Verificar o sistema SAP HANA usando o SAP HANA Studio
É possível usar o Cockpit do SAP HANA ou o SAP HANA Studio para monitorar e gerenciar os sistemas SAP HANA em um cluster de alta disponibilidade.
Conecte-se ao sistema HANA usando o SAP HANA Studio. Ao definir a conexão, especifique os seguintes valores:
- No painel "Especificar o sistema", especifique o endereço IP flutuante como o nome do host.
- No painel "Propriedades de conexão", para autenticação do usuário do banco de dados,
especifique o nome do superusuário do banco de dados e a senha que você especificou
para o argumento
sap_hana_system_password
no arquivosap_hana_ha.tf
.
Para mais informações da SAP sobre a instalação do SAP HANA Studio, consulte o Guia de instalação e atualização do SAP HANA Studio.
Depois que o SAP HANA Studio estiver conectado ao sistema HANA de alta disponibilidade, exiba a visão geral do sistema clicando duas vezes no nome do sistema no painel de navegação no lado esquerdo da janela.
Em Informações gerais, na guia Visão geral, confirme o seguinte:
- O Status operacional mostra
All services started
. - O Status de replicação do sistema mostra
All services are active and in sync
.
- O Status operacional mostra
Confirme o modo de replicação clicando no link System Replication Status em General Information. A replicação síncrona é indicada por
SYNCMEM
na coluna REPLICATION_MODE, na guia System Replication.
Limpar e tentar implantar novamente
Se alguma das etapas de verificação de implantação nas seções anteriores mostrar que a instalação não foi concluída, desfaça a implantação e tente novamente seguindo as etapas a seguir:
Resolva os erros para garantir que a implantação não falhe novamente pelo mesmo motivo. Para mais informações sobre como verificar os registros ou resolver erros relacionados a cotas, consulte Verificar os registros.
Abra o Cloud Shell ou, se você instalou a CLI do Google Cloud na sua estação de trabalho local, abra um terminal.
Acesse o diretório que contém o arquivo de configuração do Terraform que você usou nesta implantação.
Exclua todos os recursos que fazem parte da implantação executando o seguinte comando:
terraform destroy
Quando for solicitada a aprovação da ação, digite
yes
.Tente fazer a implantação novamente, conforme indicado anteriormente neste guia.
Executar um teste de failover
Depois de verificar se o sistema SAP HANA foi implantado com sucesso, teste a função de failover.
As instruções a seguir usam o comando ip link set eth0 down
para deixar a
interface de rede off-line. Esse comando valida o failover
e o isolamento.
Para executar um teste de failover, siga estas etapas:
Na instância principal do SAP HANA, conecte-se ao nó mestre usando SSH. É possível se conectar a partir da página Instâncias de VM do Compute Engine clicando no botão SSH referente a cada uma delas. Se preferir, use o método SSH que preferir.
No prompt de comando, digite o seguinte comando:
ip link set eth0 down
O comando
ip link set eth0 down
aciona um failover ao interromper as comunicações com a instância principal do SAP HANA.Conecte-se a qualquer outro nó no cluster usando SSH e mude para o usuário raiz.
Execute o comando a seguir para confirmar se a instância principal do SAP HANA está ativa na VM que continha a instância secundária.
crm status
Como a reinicialização automática está ativada no cluster, a instância interrompida é reiniciada e assume o papel da instância secundária. O exemplo a seguir mostra que os papéis em cada instância do SAP HANA foram alterados:
example-ha-vm2:~ # crm status Cluster Summary: * Stack: corosync * Current DC: example-ha-vm2 (version 2.1.2+20211124.ada5c3b36-150400.4.9.2-2.1.2+20211124.ada5c3b36) - partition with quorum * Last updated: Mon Jul 17 19:47:11 2023 * Last change: Mon Jul 17 19:46:56 2023 by root via crm_attribute on example-ha-vm2 * 7 nodes configured * 23 resource instances configured Node List: * Online: [ example-ha-mj example-ha-vm1 example-ha-vm1w1 example-ha-vm1w2 example-ha-vm2 example-ha-vm2w1 example-ha-vm2w2 ] Full List of Resources: * STONITH-example-ha-vm1 (stonith:external/gcpstonith): Started example-ha-mj * STONITH-example-ha-vm2 (stonith:external/gcpstonith): Started example-ha-vm1w1 * STONITH-example-ha-mjw2 (stonith:external/gcpstonith): Started example-ha-vm1w1 * STONITH-example-ha-vm1w1 (stonith:external/gcpstonith): Started example-ha-vm1w2 * STONITH-example-ha-vm2w1 (stonith:external/gcpstonith): Started example-ha-vm2 * STONITH-example-ha-vm1w2 (stonith:external/gcpstonith): Started example-ha-vm2w1 * STONITH-example-ha-vm2w2 (stonith:external/gcpstonith): Started example-ha-mj * Resource Group: g-primary: * rsc_vip_int-primary (ocf::heartbeat:IPaddr2): Started example-ha-vm2 * rsc_vip_hc-primary (ocf::heartbeat:anything): Started example-ha-vm2 * Clone Set: cln_SAPHanaTopology_HA1_HDB00 [rsc_SAPHanaTopology_HA1_HDB00]: * Started: [ example-ha-vm1 example-ha-vm1w1 example-ha-vm1w2 example-ha-vm2 example-ha-vm2w1 example-ha-vm2w2 ] * Stopped: [ example-ha-mj ] * Clone Set: msl_SAPHana_HA1_HDB00 [rsc_SAPHana_HA1_HDB00] (promotable): * Masters: [ example-ha-vm2 ] * Slaves: [ example-ha-vm1 example-ha-vm1w1 example-ha-vm1w2 example-ha-vm2w1 example-ha-vm2w2 ] * Stopped: [ example-ha-mj ]
No console do Google Cloud, na página Detalhes do balanceador de carga, confirme se a nova instância principal ativa mostra 1 de 1 na coluna Íntegra. Se necessário, atualize a página.
Acessar o Cloud Load Balancing
Por exemplo, veja a imagem a seguir:
No SAP HANA Studio, para confirmar se você ainda está conectado ao sistema, clique duas vezes na entrada do sistema no painel de navegação para atualizar as informações.
Clique no link System Replication Status para confirmar se os hosts principal e secundário foram trocados e estão ativos.
Validar a instalação do agente do Google Cloud para SAP
Depois que a infraestrutura for implantada e o sistema SAP HANA estiver instalado, valide se o agente do Google Cloud para SAP está funcionando corretamente.
Verificar se o agente do Google Cloud para SAP está em execução
Para verificar se o agente está em execução, siga estas etapas:
Estabeleça uma conexão SSH com a instância da VM do host.
Execute este comando:
systemctl status google-cloud-sap-agent
Se o agente estiver funcionando corretamente, a saída conterá
active (running)
. Exemplo:google-cloud-sap-agent.service - Google Cloud Agent for SAP Loaded: loaded (/usr/lib/systemd/system/google-cloud-sap-agent.service; enabled; vendor preset: disabled) Active: active (running) since Fri 2022-12-02 07:21:42 UTC; 4 days ago Main PID: 1337673 (google-cloud-sa) Tasks: 9 (limit: 100427) Memory: 22.4 M (max: 1.0G limit: 1.0G) CGroup: /system.slice/google-cloud-sap-agent.service └─1337673 /usr/bin/google-cloud-sap-agent
Se o agente não estiver em execução, reinicie-o.
Verificar se o SAP Host Agent está recebendo métricas
Para verificar se as métricas de infraestrutura são coletadas pelo agente do Google Cloud para SAP e enviadas corretamente ao agente de host da SAP, siga estas etapas:
- No sistema SAP, insira a transação
ST06
. No painel de visão geral, verifique a disponibilidade e o conteúdo dos seguintes campos para a configuração completa da infraestrutura de monitoramento da SAP e do Google:
- Provedor de nuvem:
Google Cloud Platform
- Acesso ao monitoramento avançado:
TRUE
- Detalhes do monitoramento avançado:
ACTIVE
- Provedor de nuvem:
Configurar o monitoramento para o SAP HANA
Como opção, monitore as instâncias do SAP HANA usando o agente do Google Cloud para SAP. A partir da versão 2.0, é possível configurar o agente para coletar as métricas de monitoramento do SAP HANA e enviá-las para o Cloud Monitoring. O Cloud Monitoring permite criar painéis para visualizar essas métricas, configurar alertas com base em limites de métrica e muito mais.
Para mais informações sobre a coleta de métricas de monitoramento do SAP HANA usando o agente do Google Cloud para SAP, consulte Coleta de métricas de monitoramento do SAP HANA.
Conectar-se ao SAP HANA
Como essas instruções não usam um endereço IP externo para o SAP HANA, só será possível se conectar às instâncias do SAP HANA por meio da instância Bastion usando SSH ou por meio do Windows Server usando o SAP HANA Studio.
Para se conectar ao SAP HANA por meio da instância Bastion, conecte-se ao Bastion Host e depois às instâncias do SAP HANA usando o cliente SSH de sua escolha.
Para se conectar ao banco de dados SAP HANA por meio do SAP HANA Studio, use um cliente de área de trabalho remota para se conectar à instância do Windows Server. Após a conexão, instale o SAP HANA Studio (em inglês) manualmente e acesse o banco de dados SAP HANA.
Configurar o HANA ativo/ativo (ativado para leitura)
A partir do SAP HANA 2.0 SPS1, é possível configurar o HANA Active/Active (Read Enabled) em um cluster do Pacemaker. Para instruções, consulte Configurar HANA ativo/ativo (ativado para leitura) em um cluster do SUSE Pacemaker.
Executar tarefas pós-implantação
Antes de usar sua instância do SAP HANA, recomendamos que você siga os passos de pós-implantação a seguir. Para mais informações, consulte o guia de instalação e atualização do SAP HANA (em inglês).
Altere as senhas temporárias do superusuário do sistema SAP HANA e do superusuário do banco de dados.
Atualize o software SAP HANA com os patches mais recentes.
Se o sistema SAP HANA for implantado em uma interface de rede VirtIO, recomendamos que você garanta que o valor do parâmetro TCP
/proc/sys/net/ipv4/tcp_limit_output_bytes
esteja definido como1048576
. Essa modificação ajuda a melhorar a capacidade geral da rede na interface de rede VirtIO sem afetar a latência da rede.Instale todos os componentes extras, como o Application Function Libraries (AFL) ou o Smart Data Access (SDA).
Configure e faça o backup do seu novo banco de dados SAP HANA. Para mais informações, consulte o guia de operações do SAP HANA.
Avaliar sua carga de trabalho do SAP HANA
Para automatizar verificações de validação contínua para suas cargas de trabalho de alta disponibilidade do SAP HANA em execução no Google Cloud, use o Gerenciador de carga de trabalho.
O Gerenciador de carga de trabalho permite verificar e avaliar automaticamente suas cargas de trabalho de alta disponibilidade do SAP HANA em relação às práticas recomendadas de fornecedores da SAP, do Google Cloud e do SO. Isso ajuda a melhorar a qualidade, o desempenho e a confiabilidade das cargas de trabalho.
Para informações sobre as práticas recomendadas compatíveis com o Gerenciador de cargas de trabalho para avaliar cargas de trabalho de alta disponibilidade do SAP HANA em execução no Google Cloud, consulte Práticas recomendadas do Gerenciador de cargas de trabalho para SAP. Para informações sobre como criar e executar uma avaliação usando o Gerenciador de cargas de trabalho, consulte Criar e executar uma avaliação.
Resolver problemas
Para resolver problemas com configurações de alta disponibilidade do SAP HANA no SLES, consulte Como solucionar problemas de configurações de alta disponibilidade para SAP.
Receba ajuda
Se você precisar de ajuda para resolver um problema com clusters de alta disponibilidade para SAP HANA no SLES, colete as informações de diagnóstico necessárias e entre em contato com o Cloud Customer Care. Para mais informações, consulte Clusters de alta disponibilidade em informações de diagnóstico do SLES.
A seguir
- Para mais informações sobre administração e monitoramento de VMs, consulte o Guia de operações do SAP HANA.