Tamer Ziady
Tamer Ziady

Reputation: 683

How to change Region / Zone in Google Cloud?

I am very new to Google Cloud. I was able to setup a wordpress site and am working on it now. However, it appears that my vm instance is using the following asia-east1-a for its zone. I was able to change the Region and Zone using gcloud commands with the following output:

$ gcloud config list compute/region 
Your active configuration is: [default]
[compute]
region = us-east4

$ gcloud config list compute/zone
Your active configuration is: [default]
[compute]
zone = us-east4-b

How does one change the active default to the new set zone? I would like my instance to run in the North East Coast of the USA?

Thanks, T

Upvotes: 51

Views: 100644

Answers (5)

Tiago Medici
Tiago Medici

Reputation: 2194

gcloud compute instances move INSTANCE_NAME --destination-zone=DESTINATION_ZONE [--async] [--zone=ZONE] [GCLOUD_WIDE_FLAG …]

gcloud compute instances move facilitates moving a Compute Engine virtual machine from one zone to another.

EXAMPLE :

gcloud compute instances move compute-instance-1 --zone us-central1-b --destination-zone us-central1-f

Upvotes: 0

Rotem jackoby
Rotem jackoby

Reputation: 22128

If you don't remember the specific commands, another option is to change the region and zone in the gcloud configurations file which is located in:

~/.config/gcloud/configurations/config_default

And contain the structure below:

[core]
account = my-account@my-domain
project = my-project

[compute]
zone = asia-south1-a
region = asia-south1

After changing region to us-central-1 you'll get the following output:

gcloud config list compute/region
[compute]
region = us-central1

gcloud config configurations list
NAME     IS_ACTIVE  ACCOUNT               PROJECT     COMPUTE_DEFAULT_ZONE  COMPUTE_DEFAULT_REGION
default  True       my-account@my-domain  my-project  us-central1-a         us-central1

Reference to all GCP regions and zones.

Upvotes: 4

Aditya Sharma
Aditya Sharma

Reputation: 691

Use commands below at cloud shell.

To check your preferred region:

$ gcloud compute regions list

To change compute regions, I select us-east4 region:

$ gcloud config set compute/region us-east4

Updated property [compute/region].

$ gcloud config list compute/region 

[compute]

region = us-east4

In a similar way, you can change compute/zone.

Upvotes: 69

VASO
VASO

Reputation: 21

Create Image of the existing instance and after create a new instance with a new zone who you like and uploaded this image with you create before

Upvotes: 2

Tuxdude
Tuxdude

Reputation: 49473

  • As described here, project-info metadata can be added per project to specify the default regions and zones. This is used only at the time of initializing gcloud (using gcloud init).

  • In addition, gcloud supports locally setting the default region and zone using the compute/region and compute/zone configurations (which is what you seem to have added to your local gcloud config). When these properties are set, they will override any configuration set in the project-info.

  • Since you have set these properties according to your requirements, I think your defaults are set as long as you're using that gcloud configuration.

  • Do remember that you can always override the zone and region using the --zone and --region arguments to any of the gcloud commands.

Moving instance from one zone to another

Changing the default zone/region does not move any of the existing VMs to a new zone. If you wish to move a VM from one zone to another, you can take a snapshot of the persistent disks, launch a new instance in the desired zone using the snapshot and cleanup the resources used by the original VM.

You can do this using either gcloud or follow a set of steps manually to achieve the same result.

gcloud compute instances move INSTANCE_NAME --zone SOURCE_ZONE --destination-zone DESTINATION_ZONE

In detail, Compute Engine will:

  • Take snapshots of persistent disks attached to the source instance.
  • Create copies of the persistent disks in the destination zone.
  • For instances moving within the same region, temporarily promote any ephemeral external IP addresses assigned to the instance to a static external IP address.
  • Create a new instance in the destination zone.
  • Attach the newly created persistent disks to your new instance.
  • Assign an external IP address to the new instance. If necessary, demote the address back to an ephemeral external IP address.
  • Delete the snapshots, original disks, and original instance.

If you want to manually move your instance, you can also perform these steps by hand.

Upvotes: 12

Related Questions