Skip to content

This toolset provides various useful functions to manage instances in many regions of multiple cloud services all together.

Notifications You must be signed in to change notification settings

distsys-lab/cloud-tools

Repository files navigation

cloud-tools

cloud-tools can operate virtual machines provided by multiple cloud providers through a unified interface. The following cloud providers are currently supported

Requirements

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.

Once you have authenticated with each of them, you can use cloud-tools.

Components

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.

gcp

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.

Quick start

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.

Hint

./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

About

This toolset provides various useful functions to manage instances in many regions of multiple cloud services all together.

Resources

Stars

Watchers

Forks

Languages