Build & Config
Adding a cloud provider
Overview
You can add a cloud provider account to Cloud 66 in one of two ways:
- During initial app set up (Click the New Application button to get started)
- Via Account Settings
To add a cloud account via Account Settings:
- Click on your avatar (top right) and select Account Settings
- Click on Cloud Platforms in the Settings panel (on the left)
- Click the + Add Cloud button
- Add the cloud account details to the drawer that opens from the left
- Click Add Cloud
Follow the instructions for your prefered cloud provider below to grant Cloud 66 access to your account.
AWS (Amazon Web Services)
Cloud 66 supports both VPC and (for AWS accounts created before 2014) EC2-Classic. We also support reserved instances. To use a VPC, your account must conform with the default VPC guidelines.
You need to configure AWS so that Cloud 66 to access your account. To to this:
- Log into the web interface for your AWS account
- Click on the name of your account in the top right corner of your AWS account, and select My Security Credentials.
On the next screen, some users will be asked to choose between Security Credentials and IAM users. We support both methods but we recommend that experienced users select IAM (Identity and Access Management) for better security because allows you to set permissions for specific users. Click on your chosen option below for more instructions.
Help with advanced AWS features:
- Using IAM instance profiles with your servers
- Cloud 66 Security Groups on AWS
- AWS Reserved instances
- Using AWS EC2-Classic
- Cloud 66 tag propagation
Azure
You can use Cloud 66 to provision and deploy your code to servers in any Azure region. Cloud 66 needs some credentials to authenticate our agent to provision your infrastructure. You need to specify the following credentials:
- Azure Subscription ID
- Client ID (Microsoft calls this “Application ID”)
- Client Secret
- Tenant ID
You can find those by following the step by step guide created by Microsoft.
Add object storage
For static sites you need to add the Microsoft.Storage
Resource provider. To do this:
- Log into your Azure Portal
- Click through to the subscription you’re using for Prepress
- Click Resource providers in the left nav
- Filter the list by the word
storage
- Click on
Microsoft.Storage
and then the Register button at the top of the panel (it will take a while to react because, Microsoft) - Click Refresh after 2 or 3 minutes to check that it is now registered.
For more help read this guide.
Active Directory
Make sure you give your Active Directory App a high enough level of access. Check that your Active Directory Application is added to your Azure subscription and has the role Contributor.
Help with advanced Azure features:
Digital Ocean
You can use Cloud 66 to provision and deploy your code to servers (droplets) in any DigitalOcean region.
Private networking is enabled for all data centers that support it. This means that servers can communicate freely between each other on the same network without counting towards bandwidth costs.
Cloud 66 supports DigitalOcean API v2, which uses OAuth to authenticate requests. If you choose Digital Ocean as a deployment target (see below) you'll be redirected to the DigitalOcean Ocean site, where you need to authenticate and approve Cloud 66. Once confirmed you will be redirected back to Cloud 66, where you can deploy your application to your DigitalOcean account.
Help with advanced Digital Ocean features:
Google Cloud (GCE)
You can use Cloud 66 to provision and deploy your code to servers in any Google Compute Engine (GCE) region. You need to provide your GCE API keys in order for Cloud 66 to access your account. To generate these:
- Access the Console of your Google Cloud account
- Create a project (if you don’t already have one)
- Switch to your desired project
- Use the search bar at the top of the page to search for “APIs & Services” and click the first result
- Click on the blue button (at the top of the main panel) named + Enable APIs and Services
- Search the API library for “Compute Engine API” and click on the top result
- If the page does not have a green tick with “API enabled” click the blue Enable button (newer accounts tend to have the API already enabled, but it is worth checking)
- Return to the “APIs & Services” dashboard (you can use search as you did in step 4)
- Click on Credentials in the left-hand panel Click on + Create Credentials at the top of the page; Select Service Account
- Give your service account a name (like “cloud66”) and an optional description; Click Create
- Add the role “Compute Admin” and then click Continue (NOTE: this will grant Cloud 66 the rights to create/amend/delete compute resources in this project)
- Leave the User Access options blank and click Done
- On the Service account details page, click the Keys tab
- Click Add Key, choose Create new key and select JSON then click Create.
- Download and save your JSON key somewhere locally (this contains your credentials, so treat it with care)
Once the above is done, we will need three things to connect with your account:
- Email address - this is the email address of the service account you just created (ie. like cloud66@.iam.gserviceaccount.com)
- Project ID - this is your project ID (available at the top of the Overview page)
- JSON key - the file that you downloaded and saved above
Help with advanced GCE features:
Hetzner Cloud
You can automatically provision and deploy to Hetzner Cloud servers in any supported location via Cloud 66. You need to add a Hetzner Cloud API key to your Cloud 66 account in order to integrate them. On Hetzner API keys are specific to “projects”. To generate an API key:
- Log into your Hetzner Cloud dashboard
- Either add a new project or click on an existing one
- Click on the key (Access) in the left-hand navigation
- Click on API Tokens at the top of the main panel
- Click the Generate API Token button (top right) and give your token a name (e.g. Cloud 66)
- Copy the API token and save it somewhere (it won’t ever be shown again by Hetzner)
You will use this token to add Hetzner as a Deployment Target (see below).
Custom disk sizes aren’t supported
Hetzner Cloud does not allow custom disk sizes for new instances. As such any disk size specified in your configuration files or via the Dashboard will be ignored by Hetzner.
Help with advanced Hetzner Cloud features:
Latitude.sh
You can automatically provision and deploy to Latitude.sh bare metal servers in any supported location via Cloud 66. You need to add create a Latitude.sh API key in order to connect it to Cloud 66:
- Log into your Latitude.sh dashboard
- Click on API in the left-hand navigation
- Click the Create Key button (top right) and give your token a name (e.g. Cloud 66)
- Copy the API token
You will use this token to add Latitude.sh as a Deployment Target (see below).
Instant deletion unavailable
Latitude.sh doesn't currently allow instant deletion of servers via their UI (this functionality is coming with their new UI). Please contact Latitude.sh support directly if you wish to delete a server immediately.
Custom disk sizes aren’t supported
Latitude.sh does not allow custom disk sizes for new instances. As such any disk size specified in your configuration files or via the Dashboard will be ignored by Latitude.sh.
Help with advanced Latitude.sh features:
Linode
You can use Cloud 66 to provision and deploy your code to servers in any Linode region. Private networking is automatically enabled for all servers deployed by Cloud 66. This means that servers can communicate freely between each other on the same network without counting towards bandwidth costs.
You need to generate a personal access token for your Linode account to grant Cloud 66 access. To do this:
- Log into Linode Cloud Manager
- Click on your username at the top of the screen and select My Profile.
- Click API Tokens and then Add a Personal Access Token
- Give the token a label and set its expiry to
Never
- Set the access rights for the token to a minimum of:
Account: Read-onlyDomains: Read/WriteKubernetes: Read/WriteLinodes: Read/WriteNodeBalancers: Read/WriteVolumes: Read/Write
- Click Create Token and then copy the personal access token.
You will use this token to add Linode as a Deployment Target (see below).
Help with advanced Linode features:
OVH
You can automatically provision and deploy to OVHcloud servers in any supported location via Cloud 66. We use Project IDs to access to your cloud resources on OVHcloud. To enable Cloud 66 to manage your servers you need to:
- Create a new Project using your OVHcloud dashboard (or open an existing one)
- Open the Project and click on Private Network (in the left nav) and then Create a vRack
- Choose New vRack and then click *Create (*wait for the vRack to be set up before moving on).
- Copy the Project ID (at the top left, just below your project’s name
- You will use this token to add OVH as a Deployment Target (see below).
- After you paste in your Project ID and click Add Cloud. you will be taken to a sign-in page on the OVH site where you can confirm the required permissions and then log in to authenticate Cloud 66’s access to your Project.
Help with advanced OVHcloud features:
Packet
You can use Cloud 66 to provision and deploy your code to servers in Packet.
Help with advanced Packet features:
Rackspace
You can use Cloud 66 to provision and deploy your code to servers in any Rackspace region. You need to provide your Rackspace API key in order for Cloud 66 to access your account. To generate a key:
- Log into the Rackspace web interface
- Click the Account dropdown in the top right
- Go to the User Management page
- Click Create a new user, and fill in the necessary details for this new user. This user must be created with Full Access in order for servers to be created in your account.
- Once you click Create user, you will be able to view the API Key by clicking Show.
You will use this key to add Rackspace as a Deployment Target (see below).
Rackspace UK limitations
If you have a Rackspace UK account, you will be limited to creating servers in the London region. Only a Rackspace US account is able to create servers in the remaining regions.
Vultr
You can automatically provision and deploy to Vultr servers in any data centre via Cloud 66. You need to add your Vultr API key to your Cloud 66 account in order to integrate them. To generate a Vultr API key:
- Click on your account dropdown (top right) and select API
- Enable API access (if it’s not enabled already)
- Update the Access Control list to allow access from “Any IPv4” and “Any IPv6”. If you would prefer to restrict access, you will need to add each of Cloud 66’s authorized IP addresses individually.
- Copy your new Vultr API key
You will use this key to add Vultr as a Deployment Target (see below).
Custom disk sizes aren’t supported
Vultr does not allow custom disk sizes for new instances. As such any disk size specified in your configuration files or via the Dashboard will be ignored by Vultr.