cloud-tools can operate virtual machines provided by multiple cloud providers through a unified interface. The following cloud providers are currently supported
In order for cloud-tools to work, you must have sufficient permissions to create an instance with each cloud provider. In addition, the CLI tool provided by the cloud provider must be installed locally on the PC on which cloud-tools is to run.
- Install AWS CLI
- Verified Version : aws-cli/1.22.34, aws-cli/2.7.31
- Install Azure CLI
- Verified Version : azure-cli/2.41.0, azure-cli/2.40.0
- Install GCP CLI
- Verified Version : Google Cloud SDK/401.0.0, Google Cloud SDK/405.0.0
Once you have authenticated with each of them, you can use cloud-tools.
These tools provide a variety of functions for managing many instances of aws in many regions at once. This tool is derived from dissys-lab/aws-tools.
These tools provide a variety of functions for managing many instances of Azure in many regions at once. This tool is derived from xnyan/domino/azure.
These tools provide a variety of functions for managing many instances of GCP in many regions at once. See gcp-tools in this repository for instructions.
First, create settings for all cloud instances.
cp global_config_default.sh global_config.sh
Next, rewrite global_config.sh
according to the instructions.
Similarly, rewrite */settings.sh
according to the support in the file.
Once all configuration files have been filled in, you can configure the cluster across each cloud according to global_config.sh
by entering the following command.
./create_cluster.sh
To delete all instances, enter the following command
./delete_cluster.sh
To find out the current instance placement status, enter the following command
./check_hosts_ip.sh
If you want to create a single instance on a cloud instead of batch creation, type the following command
./create_instance.sh aws Tokyo
This command places a single instance at aws tokyo. Enter a name similar to cluster_config in global_config
To delete a single instance in the same way, enter the following command
./delete_instance.sh aws Tokyo
Deleting or adding a single instance will cause discrepancies with the ideal placement (cluster_config). To check which operations are necessary to achieve the ideal cluster_config state, enter the following command
./check_layout.sh
This will output the necessary operations you should do.
./delete_cluster.sh
or ./delete_instance.sh aws 〇〇
will give you the following error message, but don't worry about it.
An error occurred (CannotDelete) when calling the DeleteSecurityGroup operation: the specified group: "sg-xxxxxxxxxxx" name: "default" cannot be deleted by a user
Done delete cluster