Configure Cloud Providers
This section details how to configure cloud providers for YugaByte DB using the YugaWare Admin Console. If no cloud providers are configured in YugaWare yet, the main Dashboard page highlights the need to configure at least 1 cloud provider.
If you plan to run YugaByte DB nodes on public cloud providers such as Amazon Web Services (AWS) or Google Cloud Platform (GCP), all you need to provide on YugaWare UI is your cloud provider credentials. YugaWare will use those credentials to automatically provision and de-provision instances that run YugaByte. An ‘instance’ for YugaByte includes a compute instance as well as local or remote disk storage attached to the compute instance.
Private cloud or on-premises datacenters
The prerequisites for YugaByte DB Enterprise Edition data nodes are same as that of YugaByte DB Community Edition.
Configure cloud providers
YugaWare ensures that YugaByte DB nodes run inside your own AWS account and are secured by a dedicated VPC and Key Pair. To that end, YugaWare will require access to your cloud infrastructure, which it can do in one of two ways:
- directly provide your AWS Access Key ID and Secret Key
- attach an IAM role to the YugaWare VM in the EC2 tab
Once you decide which access method is right for you, it is time to consider deployment options. YugaWare currently supports 3 modes of deploying YugaByte DB nodes:
Use the same VPC as the YugaWare machine. This will setup a custom Security Group to be attached to the YugaByte nodes, so communication is guaranteed to work. It will also setup a new Key Pair, to be used when spinning up EC2 instances.
Specify a different VPC and the region in which it lives. This will also setup a custom Security Group in the given VPC, as well as a Key Pair. Note however, that it is your responsibility to have already setup Routing Table entries in both VPCs, to ensure network traffic is properly routed!
Let YugaWare configure, own and manage a full cross-region deployment of custom VPCs. This will generate a custom VPC in each available region, then interconnect them, as well as the YugaWare VPC, through VPC-peering. This will also setup all the other relevant sub-components in all regions, such as Key Pairs, Subnets, Security Groups and Routing Table entries.
Note that the AWS Account Name should be unique for each instance of YugaWare integrating with a given AWS Account.
Finally, before we can proceed to creating a universe, let us check that you can actually spin up EC2 instances with the default AMIs we use. Our reference AMIs come from a Marketplace CentOS 7 Product. Visit that link while logged into your AWS account and click the top-right
Continue to Subscribe button.
If you are not already subscribed and have thus not accepted the
Terms and Conditions, then you should see something like this:
If so, please click the
Accept Terms button and wait for the page to switch to a successful state. You should see the following once the operation completes, or if you had already previously subscribed and accepted the terms:
Now we are ready to create a YugaByte DB universe on AWS.
Go to the
Configuration nav on the left-side and then click on the GCP tab. You should see
something like this:
Fill in the couple of pieces of data and you should get something like:
Take note of the following for configuring your GCP provider:
Give this provider a relevant name. We recommend something that contains Google or GCP in it, especially if you will be configuring other providers as well.
Upload the JSON file that you obtained when you created your service account as per the Initial Setup.
Assuming this is a new deployment, we recommend creating a new VPC specifically for YugaByte DB nodes. You have to ensure that the YugaWare host machine is able to connect to your Google Cloud account where this new VPC will be created. Otherwise, you can choose to specify an existing VPC for YugaByte DB nodes. The 3rd option that is available only when your YugaWare host machine is also running on Google Cloud is to use the same VPC that the YugaWare host machine runs on.
Saveand give it a couple of minutes, as it will need to do a bit of work in the background. This includes generating a new VPC, a network, subnetworks in all available regions, as well as a new firewall rule, VPC peering for network connectivity and a custom SSH keypair for YugaWare-to-YugaByte connectivity
Note: Choosing to use the same VPC as YugaWare is an advanced option, which currently assumes that you are in complete control over this VPC and will be responsible for setting up the networking, SSH access and firewall rules for it!
The following shows the steps involved in creating this cloud provider.
If all went well, you should see something like:
Now we are ready to create a YugaByte DB universe on GCP.
You are now ready to create YugaByte DB universes as outlined in the next section.