Como criar ambientes de staging e testing do PABXFLEX

Os ambientes de staging e testing do PABXFLEX podem ser criados a partir de VMs já existentes (pula algumas etapas) ou totalmente do zero com nova instalação da ISO.

Este procedimento irá contemplar:

  1. Criar ambiente a partir de clone de VM
  2. Criar ambiente a partir do zero (nova instalação)
  3. Preparar ambiente para deploy do bot / CI

Criar ambiente a partir de clone de VM

Qualquer VM padrão de staging ou testing pode ser usada como base, desde que tenha os snapshot pabx_base e pabx_initial no proxmox.

  1. Criar Nova VM com as mesmas configurações de hardware da VM de referência (CPU, RAM, disco, interfaces de rede).
  2. Criar os snapshots pabx_base e pabx_initial nesta nova VM para facilitar o clone dos estados.
  3. Desligar VM de referência e nova VM
  4. Copiar diretório de imagem da VM de referência para VM nova e renomear os arquivos de disco
cd /stor/array2/images/
mv 117/ 117_old
cp -r 113/ 117
cd 117
mv vm-113-disk-0.qcow2 vm-117-disk-0.qcow2
mv vm-113-state-pabx_base.raw vm-117-state-pabx_base.raw
mv vm-113-state-pabx_initial.raw vm-117-state-pabx_initial.raw
  1. Iniciar a VM nova no estado pabx_base (voltar snap pela interface)
  2. Ajustar rede
    • Editar IP da lan0 com novo IP estático
  3. Mudar hostname para nome correto

Neste ponto, recriar o snapshot pabx_base.

  1. Iniciar a VM nova no estado pabx_initial (voltar snap pela interface)
  2. Ajustar rede
    • Editar IP da lan0 com novo IP estático
  3. Mudar hostname para nome correto

Neste ponto, recriar o snapshot pabx_initial.

Configurações adicionais:

  1. Criar reserva de IP no DHCP da iTFLEX
  2. Criar o registro A no DNS da iTFLEX para acessar o staging pelo nome pabx-staging-X.itflex.lan

Criar ambiente a partir do zero (nova instalação)

Para criar o ambiente a partir do zero, deve seguir o procedimento padrão de implantação do PABXFLEX.

  1. Instalar a ISO do KS CentOS 7
  2. Configurar interface de rede lan0 com IP estático
  3. Criar reserva de IP no DHCP da iTFLEX
  4. Criar o registro A no DNS da iTFLEX para acessar o staging pelo nome pabx-staging-X.itflex.lan
  5. Configurar hostname da máquina

Neste ponto, criar o snapshot pabx_base.

  1. Executar procedimento de implantação do PABX conforme indicado na Intranet.
  2. Reiniar a VM.
  3. Acessar a interface web e criar 1 ramal de teste.

Neste ponto, criar o snapshot pabx_initial.

Preparar ambiente para deploy do bot / CI

Adicionar no /home/deploy/.ssh/authorized_keys a chave pública do gitlab-ci:

ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAACAQDX9Ijfv/DEzYEaF1TLEKgsXmFbIHeWsl664oDswgFT5S+mY+E/s9OcRUJhcr1Gu8PuNYh2q+PPHa6qEbXFtQcN3j5Fp00RoFpm5L22I4HEEKgChYWhzsRoKtNoFj3AAQXLdGAZemDQJWeeJ1LQcZwGFEQaq/SA3k+2deHLZUL3YWGEtLr/HoEql4bt6MK9nX660wudAYfrrX7DhYwaPtRfRC+gonOx1U5DiqWuidb1yDh4HMsKO0tein9GIV7z64rRejTF+TBMuhxtVawsxJ4MtmvqCO1zBxdwdnu0qWnNDhmMNGWkvpC0u15glzhmYDnmZ/HiYJzW4sLy3PAy9SKZD10T8NQlZr7HpbbCObsyWvkv02bHApFoO82hCUE7k8cfq13EN3drS3sMUxEVgum6qVG69Qt0jVCENE440vBdrNwlwIue6FylkUrPAULsC0SuN+aDZ3PxloDXdD+Y6S4BCi9A03SPKnSUB9zclEpxLaNGLeEVMU50/UBXqfvhtqFnhlNj01SJMaA0OWjS2wNuOx+IBkrs4du2mNK4mTwTbAUTPduz3NZT/FKQ4mdcorNgRvE9wJKnMD3DO2go+k3QM9bvyHp7AfnqNns5hp3vagIifKRuYFBS8DsugKJuLXf+GLBx6H1we/f2AHfFZ3vd0jagQX5ijHqKZVG7ZT4+9w== gitlab-ci

Aplicar estas alterações para os snapshots wizard_done e wizard_initial. Deve voltar o snapshot, configurar e recriar os snapshots.

Neste ponto a VM já pode ser integrada ao BOT e ao GitLab CI/CD.