obtendo um novo endereço IP permanente no google cloud compute

2

Criei algumas instâncias no mecanismo de cálculo do google usando a interface da web. Eu quero começar a fazê-lo na linha de comando para que eu possa criar mais e automatizar o processo. A interface da web me diz qual comando eu poderia usar ao criar uma instância. Solicito um endereço IP público permanente e posso ver o comando que funciona, mas como sei quais endereços estão disponíveis para solicitação? Por exemplo, vamos ficar, criei serverA com o comando "gcloud compute ... instances create" serverA ".. --address 1.2.3.4 ..." Reutilizei um endereço que eu havia sido atribuído anteriormente, mas acho que tive sorte nisso funcionou, e não consigo adivinhar quais outros endereços IP usar quando quero criar mais instâncias na linha de comando. Existe uma maneira de consultar os endereços disponíveis? Obrigado.

Tom

    
por Tom Reingold 10.12.2015 / 18:08

2 respostas

5

UPDATE

Uma segunda abordagem para isso é usar o gerenciador de implantação . Você pode ter um arquivo de configuração onde você cria o recurso IP. No mesmo arquivo, você especifica a implantação da VM com esse IP atribuído.

i.e. executando

Implementações do gcloud deployment-manager criam testdeploy --config = myconf.yaml

onde o conteúdo do arquivo myconf.yaml é

resources:
- name: test-rabbitmq-ip
  type: compute.v1.address
  properties:
    region: us-central1
- type: compute.v1.instance
  name: vm-my-first-deployment1
  properties:
    zone: us-central1-f
    machineType: https://www.googleapis.com/compute/v1/projects/myproject/zones/us-central1-f/machineTypes/f1-micro
    disks:
    - deviceName: boot
      type: PERSISTENT
      boot: true
      autoDelete: true
      initializeParams:
        sourceImage: https://www.googleapis.com/compute/v1/projects/debian-cloud/global/images/debian-8-jessie-v20160923
    networkInterfaces:
    - network: https://www.googleapis.com/compute/v1/projects/myproject/global/networks/default
      # Access Config required to give the instance a public IP address
      accessConfigs:
      - name: External NAT
        type: ONE_TO_ONE_NAT
        natIP: $(ref.test-rabbitmq-ip.address)
    
por 28.10.2016 / 19:29
1

Você pode reservar IPs estáticos e usar o comando gcloud para criar instâncias com o sinalizador --address apontando para o IP estático reservado, pois não há como consultar os endereços disponíveis. Lembre-se de que o IP estático reservado que não está anexado a nenhuma instância ocorrerá cobranças .

UPDATE: 1. Você precisa reservar um IP estático executando o seguinte comando:

gcloud compute --project "YOUR_PROJECT_ID" addresses create "STATIC_IP_NAME" --region "YOUR_REGION"
  1. Execute o seguinte comando para criar uma nova instância com o IP estático que você acabou de reservar:

gcloud compute --project "YOUR_PROJECT_ID" instances create "INSTANCE_NAME" --zone "YOUR_ZONE" --machine-type "n1-standard-1" --network "YOUR_NETWORK_NAME" --address STATIC_IP_NAME --can-ip-forward --maintenance-policy "MIGRATE" --scopes "https://www.googleapis.com/auth/cloud-platform" --image "https://www.googleapis.com/compute/v1/projects/debian-cloud/global/images/debian-8-jessie-v20151104" --boot-disk-size "10" --boot-disk-type "pd-standard" --boot-disk-device-name "DISK_NAME"

neste caso eu escolhi a imagem debian-8 e um tipo de máquina n1-standard-1 que, claro, você pode mudar dependendo de suas necessidades.

    
por 10.12.2015 / 20:25