Infraestrutura como Código (IaC) é uma prática em que a infraestrutura de TI, como servidores, redes e armazenamento, é provisionada e gerenciada por meio de arquivos de configuração em vez de processos manuais. Com o IaC, toda a infraestrutura é descrita em código, permitindo que ela seja versionada, auditada e replicada de forma automatizada e consistente. Essa abordagem melhora a eficiência, a escalabilidade e a confiabilidade da gestão de infraestruturas complexas, principalmente em ambientes de nuvem.
Passos:
Criar um usuário no AWS IAM com Access Keys
- Acesse o console da AWS.
- Navegue até o serviço IAM (Identity and Access Management).
- Crie um novo usuário com as permissões necessárias (no mínimo a política
AmazonEC2FullAccess
para o uso do EC2). - No processo de criação, selecione a opção para gerar Access Key e Secret Key.
Configurar boto3 com as Access Keys
- Instale o boto3 se ainda não tiver instalado:
Criar um código Python para iniciar instâncias EC2
- A seguir está o código que usa o
boto3
para iniciar uma instância EC2.
import boto3
# Definir as credenciais de acesso (access key e secret key)
ACCESS_KEY = 'sua_access_key_aqui'
SECRET_KEY = 'sua_secret_key_aqui'
REGION = 'us-east-1' # Região em que você deseja iniciar a instância
# Criar uma sessão no boto3 com as credenciais e região configurada
ec2_client = boto3.client(
'ec2',
aws_access_key_id=ACCESS_KEY,
aws_secret_access_key=SECRET_KEY,
region_name=REGION
)
# Parâmetros para iniciar a instância
instance_params = {
'ImageId': 'ami-0c55b159cbfafe1f0', # AMI ID da instância (Ubuntu, Amazon Linux, etc.)
'InstanceType': 't2.micro', # Tipo da instância
'MinCount': 1, # Número mínimo de instâncias
'MaxCount': 1, # Número máximo de instâncias
'KeyName': 'nome-da-sua-keypair', # Nome do par de chaves (já criado no EC2)
'TagSpecifications': [
{
'ResourceType': 'instance',
'Tags': [
{'Key': 'Name', 'Value': 'MinhaInstanciaEC2'}
]
}
]
}
# Iniciar a instância EC2
response = ec2_client.run_instances(**instance_params)
# Obter o ID da instância criada
instance_id = response['Instances'][0]['InstanceId']
print(f'Instância {instance_id} foi iniciada com sucesso.')
Dica importante, você pode postar usar esse código no Google Colab e fazer toda a operação por lá, sem a necessidade de Python ser instalado na sua máquina local.
Até mais pessoal
Fonte : aws.com