Conectando uma interface de rede de cluster a uma instância
Depois de criar uma instância, você pode anexá-la a uma sub-rede de instância de rede de cluster existente. Como alternativa, você pode planejar sua rede criando primeiro as instâncias de rede do cluster, antes de criar instâncias de sub-rede para anexar.
Antes de Iniciar
- Analise as considerações de planejamento e os problemas conhecidos.
- Certifique-se de seguir as etapas a seguir:
- Verifique se existe uma rede de cluster. Para obter mais informações, consulte a criação de uma rede de cluster.
- Crie uma sub-rede de cluster.
- Crie uma instância de servidor virtual.
- Crie uma interface de rede de cluster.
Você pode anexar interfaces de rede de cluster a uma instância com a CLI, a API ou o Terraform.
Conectando uma interface de rede de cluster a uma instância a partir da CLI
Para anexar uma interface a uma instância a partir da CLI, siga estas etapas:
-
Configure seu ambiente da CLI.
-
Faça login na sua conta pela CLI. Depois de inserir a senha, o sistema solicita a conta e a região:
ibmcloud login --sso -
Para anexar uma interface a uma instância, digite o seguinte comando:
ibmcloud is instance-cluster-network-attachments INSTANCE --cnac CLUSTER_NETWORK_ATTACHMENTEm que:
INSTANCE- ID ou nome da instância.
--output- Especifique o formato de saída. Somente JSON é suportado. Um de:
JSON. -q,quiet- Suprimir a saída detalhada.
Exemplos de comando
-
Para criar uma instância
my-ins-1com anexos de rede de cluster:ibmcloud is instance-create my-ins-1 cli-vpc us-south-2 fx3d-160c1792x9h100 cli-subnet --image ibm-ubuntu-20-04-6-minimal-amd64-5 --cluster-network-attachments '[{"name":"instance-cnac-1","cluster_network_interface":{"id":"7208-18204195-be40-4f12-aaaa-2649e19acb91"}},{"name":"instance-cnac-2","cluster_network_interface":{"id":"7208-cf6023a3-86c7-459f-84b8-536b4f812541"}},{"name":"instance-cnac-3","cluster_network_interface":{"id":"7208-2d55d27c-835c-4566-acbc-da36bcf49da7"}},{"name":"instance-cnac-4","cluster_network_interface":{"id":"7208-161e2919-c505-4e6d-bd49-88e7e0c0f1f3"}},{"name":"instance-cnac-5","cluster_network_interface":{"id":"7208-d700a40e-af61-45ee-b71a-a09203db76bd"}},{"name":"instance-cnac-6","cluster_network_interface":{"id":"7208-c7dbc8b9-6b47-4b83-8649-512e4e8f0a81"}},{"name":"instance-cnac-7","cluster_network_interface":{"id":"7208-f4773e40-49b5-4d44-8c68-7a75513bbf16"}},{"name":"instance-cnac-8","cluster_network_interface":{"id":"7208-46e097b5-c1ea-4669-aafd-7a4cc82d0e02"}}]' -
Para criar uma instância
my-ins-2com um arquivo JSON de anexos de rede de cluster:ibmcloud is instance-create my-ins-2 deceiving-strode-dimly-undesirable us-south-2 hx3d-160x1002x8h100 test-subnet --image ibm-ubuntu-20-04-6-minimal-amd64-5 --cluster-network-attachments @~/cnac.json
Conectando uma interface de rede de cluster a uma instância com a API
Para anexar uma interface de rede de cluster a uma instância usando a API, siga estas etapas:
- Configure o seu Ambiente de API com as variáveis direitas.
- Armazene as variáveis adicionais a serem usadas nos comandos da API. Por exemplo:
version (string): A versão da API, no formato YYYY-MM-DD.
-
Quando todas as variáveis forem iniciadas, digite o seguinte comando para anexar a interface de rede do cluster à instância:
curl -X POST "$vpc_api_endpoint/v1/instances/$instance_id/cluster_network_attachments?version=$today&generation=2" -H "Authorization: Bearer $iam_token" -d '{ "name": "my-cluster-network-attachment", "cluster_network_interface": { "id": "$cluster_network_interface_id" } }'
Para ver o conjunto completo de APIs de rede de cluster, consulte a referência de API de VPC.
Conectando uma interface de rede de cluster a uma instância com o Terraform
O exemplo a seguir provisiona um anexo de rede de cluster de instância usando o Terraform:
resource "ibm_is_instance_cluster_network_attachment" "is_instance_cluster_network_attachment_instance" {
instance = var.is_instance_cluster_network_attachment_instance_id
before {
# href = "https://us-south.iaas.cloud.ibm.com/v1/instances/5dd61d72-acaa-47c2-a336-3d849660d010/cluster_network_attachments/0767-fb880975-db45-4459-8548-64e3995ac213" // conflicts with id
id = "0767-fb880975-db45-4459-8548-64e3995ac213"
}
cluster_network_interface {
# id = var.is_cluster_network_interface_id // conflicts with other properties
auto_delete = var.is_cluster_auto_delete
name = var.is_cluster_name
subnet = var.is_cluster_subnet_id
primary_ip {
address = "192.168.3.4"
name = "my-cluster-subnet-reserved-ip-1"
}
}
name = var.is_instance_cluster_network_attachment_name
}