Movatterモバイル変換


[0]ホーム

URL:


Skip to content
DEV Community
Log in Create account

DEV Community

Railander Marques
Railander Marques

Posted on

Exportar Voip para AWS EC2 - .vmdk ou .ova

1- Vamos usar como exemplo neste tutorial uma .iso FreePBX para exportação.

2- Usaremos o Virtual Box para instalar a .iso em .vmdk e converter para .ova

Image description

![Coloque o nome | clique em NEXT]

Image description

![Neste caso, vou usar 4GB de ram para instalação | clique em NEXT]

Image description

![Escolha criar novo disco | clique em CREATE]

Image description

![Escolha VMDK | clique em NEXT]

Image description

![Deixe em "Dynamically allocated | clique em NEXT]

Image description

![Aloque cerca de 20GB para a máquina virtual | clique em CREATE]

Image description

![Clique em SETTINGS]

Image description

![Escolha uma quantidade razoável de cores para configurarmos a máquina virtual]

Image description

![Habilitar uma placa de rede NAT]

Image description

![Clique em Storage > Empty > Icone de CD > Choose a disk file]

Image description

![Escolha a .iso a ser instalada | clique em OPEN e OK na janela anterior]

Image description

![Clique em START]

Image description

![Caso pergunte qual midia para iniciar a máquina virtual, selecione a .iso a ser instalada | clique em START]

Image description

![Neste tutorial usaremos a versão 16 | aperte ENTER]

Image description

![Escolha a opção "Graphical Installation - Output to VGA" | aperte ENTER]

Image description

![Escolha a opção "FreePBX Standard | aperte ENTER]

Image description

![............ Aguarde a instalação ............]

Image description

![Clique em "ROOT PASSWORD" para configurar uma senha para o ROOT]

Image description

![Defina uma senha e clique em DONE]

Image description

![Com a senha de root configurada, aguarde até o final da instalação]

Image description

![Clique em REBOOT]

Image description

![Desligue a maquina virtual | clique em OK]

Image description

![Com a máquina virtual em STOP | clique em SETTINGS]

Image description

![Clique em Storage > clique na ISO atachada > Clique no ícone de CD > Remove Disk from Virtual Drive > Inicie o VOIP]

Image description

![Ao iniciar, logue como usuario "root" e a senha escolhida na instalação]

Image description

Image description

3- Agora que a máquina virtual está instalada, vamos instalar o AWS SSM Agent para acesso ao terminal via AWS Console

  • Neste caso, instalaremos o SSM para região de Virgínia (us-east-1) na AWS, seguindo a documentação da AWS.

https://docs.aws.amazon.com/systems-manager/latest/userguide/agent-install-rhel.html

sudoyuminstall-y https://s3.us-east-1.amazonaws.com/amazon-ssm-us-east-1/latest/linux_amd64/amazon-ssm-agent.rpmsudosystemctlenableamazon-ssm-agentsudosystemctl start amazon-ssm-agentsudosystemctl status amazon-ssm-agent
Enter fullscreen modeExit fullscreen mode

4- Agora podemos desligar a máquina virtual.

Execute o comando:

shutdown now
Enter fullscreen modeExit fullscreen mode

5- Vamos exportar a maquina virtual para .ova

![File > Export Appliance]

Image description

![Escolha FreePBX | clique em NEXT]

Image description

![Escolha o destino | clique em NEXT]

Image description

![Clique em EXPORT]

Image description

6- Criar bucket privado e fazer upload doarquivo.ovapara o AWS S3

  • Faça o upload do arquivo .ova para dentro do bucket criado

7- Vamos criar uma politica com o nometrust-policy.jsonno computador local

Execute o comando abaixo:

cat>"trust-policy.json"<<"EOF"{"Version":"2012-10-17","Statement":[{"Effect":"Allow","Principal":{"Service":"vmie.amazonaws.com"},"Action":"sts:AssumeRole","Condition":{"StringEquals":{"sts:Externalid":"vmimport"}}}]}EOF
Enter fullscreen modeExit fullscreen mode

![Output do comando acima]

Image description

8- Vamos criar uma Role com o nomevmimportutilizando o arquivotrust-policy.json

  • Para isso necessitamos exportar uma credencial programática com permissão “AdministratorAccess”* em seu terminal.

![Comando para exportar credencial no terminal, necessário instalar o AWS CLIhttps://docs.aws.amazon.com/cli/latest/userguide/cli-chap-install.html]

Image description

Execute o comando abaixo:

aws iam create-role--role-name vmimport--assume-role-policy-document"file://trust-policy.json"
Enter fullscreen modeExit fullscreen mode

9-Variáveis que iremos alterar nos arquivos a seguir

nome_do_seu_bucket="aldeiacloud"#Apontarodiretorio/arquivo.ovaS3Key="diretorio-local/FreePBX.ova"
Enter fullscreen modeExit fullscreen mode
  • Esta política será anexada àRolevmimport criada na etapa anterior
  • Vamos alterar obucket_name para o nome doseu bucket no AWS S3

role-policy.json

echo'{"Version":"2012-10-17","Statement":[{"Effect":"Allow","Action":["s3:GetBucketLocation","s3:GetObject","s3:ListBucket"],"Resource":["arn:aws:s3:::'nome_do_seu_bucket'","arn:aws:s3:::'nome_do_seu_bucket'/*"]},{"Effect":"Allow","Action":["ec2:ModifySnapshotAttribute","ec2:CopySnapshot","ec2:RegisterImage","ec2:Describe*"],"Resource":"*"}]}'|sudoteerole-policy.json
Enter fullscreen modeExit fullscreen mode

Execute o comando:

aws iam put-role-policy--role-name vmimport\--policy-name vmimport\--policy-document"file://role-policy.json"
Enter fullscreen modeExit fullscreen mode

10- Iniciar tarefa de exportação da .ova

  • Em nosso caso, iremos executar o seguinte comando para criarmos o arquivo

Execute o comando:

echo'[  {                                              "Description": "FreePBX",    "Format": "ova",    "UserBucket": {        "S3Bucket": "'nome_do_seu_bucket'",        "S3Key": "'diretorio-local/FreePBX.ova'"    }}]'> containers.json
Enter fullscreen modeExit fullscreen mode
  • Iniciar exportação

Execute o comando:

aws ec2 import-image--description"FreePBX"--disk-containers"file://containers.json"
Enter fullscreen modeExit fullscreen mode

Image description


CHECAGEM DA TASK

Verifique o status dos trabalhos de importação de VM

aws ec2 describe-import-image-tasks--import-task-ids"import-ami-xxxxxxxxxxxxxxxxx"
Enter fullscreen modeExit fullscreen mode

Image description

Image description

Image description

[Status 3]

Image description

![Status 4 | COMPLETED]

Image description

Top comments(0)

Subscribe
pic
Create template

Templates let you quickly answer FAQs or store snippets for re-use.

Dismiss

Are you sure you want to hide this comment? It will become hidden in your post, but will still be visible via the comment'spermalink.

For further actions, you may consider blocking this person and/orreporting abuse

Olá! Eu sou o Railander Marques, criador do canal AldeiaCloud! 🖐️ | 6x AWS Certified | 1x Gitlab Certified | 3x NSE Certified | 1x New Relic Certified | 1x Finops Cert | AWS Community Builder
  • Location
    Brazil
  • Education
    Pós Graduação em Segurança da Informação | Pós Graduação em Cloud Computing
  • Work
    AWS Solutions Architect
  • Joined

More fromRailander Marques

DEV Community

We're a place where coders share, stay up-to-date and grow their careers.

Log in Create account

[8]ページ先頭

©2009-2025 Movatter.jp