Hetzner remote provisioning
Altinity.Cloud Anywhere operates inside your Hetzner account. We’ll go through the steps required to create a BYOC environment here. The steps are:
- Create a new project in your Hetzner Cloud account.
- Create an API key with read/write privileges in your Hetzner account.
- Log in to your Altinity.Cloud account. If you don’t have one already, sign up for a trial account. (We’ll wait here.)
- Create a new Altinity.Cloud Anywhere BYOC environment.
- Enter your Hetzner API key and other parameters, then click PROCEED.
After a few minutes, your Hetzner BYOC environment will be up and running. We’ll cover these steps in detail now.
Create a project in your Hetzner Cloud account
From the Hetzner Cloud Console, go to your list of projects and click the + New Project link at the bottom of the list:
Figure 1 - Creating a new project
Give your new project a new name and click Add project:
Figure 2 - The Add a new project dialog
In a few seconds, you’ll see your new project in the console:
Figure 3 - The new project in the project list
Click the name of your new project to go to the project page.
Create an API key with read/write privileges in your Hetzner account
With your server created, you need to create a read/write API key. Click the Security link in the left navigation panel of the project page, then API tokens and Generate API token.
In the Generate API token dialog, give your token a name, click the Read & Write radio button, then click the Generate API token button:
Figure 4 - The Generate API token dialog
Your new token will be created shortly. Click the Click to show link in the text box to see the token. Be sure to make a copy of it somewhere; you won’t be able to see it again in the console.
Figure 5 - The new API token
Your new token will show up in the list of tokens. The Prefix column here is the first few characters of the token; once you close the Generate API token dialog, you can never see the entire token again.
Figure 6 - The list of API tokens
With your Hetzner environment set up, it’s time to go to the Altinity Cloud Manager (ACM) to create a BYOC environment.
Check the Hetzner Cloud Limits
Hetzner Cloud has quite restrictive Resource Limits. The project is dedicated to Altinity.Cloud and should have enough resources to provision servers, load balancers, etc.
For system-related workloads, here are the minimum resources needed:
- 2 servers
- 4 VCPUs
- 1 IP
- 2 LoadBalancers
- 65GB Volume space available
For ClickHouse servers, it depends on the number of nodes in the cluster and their size. As an example, for one ClickHouse server, the minimum requirements are:
- 1 server
- 2 VCPUs
- Volume space required for a server
- Server type availability in a required region
We recommend using CPX11/CAX11 cloud servers for the system nodes and CCX family servers for ClickHouse. Please check availability or get in touch with Hetzner Customer Support for servers in a needed region in advance. Please choose a region with available resources to avoid issues with provisioning.
To request a limit increase, go to you account menu in the upper right-hand corner of the Hetzner console and click the Limits menu item:
Figure 7 - The Hetzner Limits menu item
Click the Request change button and select the Limit increase menu item:
Figure 8 - The Hetzner Limit increase menu item
In the Request limit increase dialog, enter your requested limits and a description, then click Request limit increase.
Figure 9 - The Hetzner Request limit increase dialog
Someone at Hetzner will review your request and get back to you.
Create a new Altinity.Cloud Anywhere BYOC environment
Once your Hetzner account has the correct resource limits, log in to your Altinity.Cloud account and go to the Environments tab in the left navigation. Click the button to create a new Environment. In the Environment Setup dialog, select Bring Your Own Cloud (BYOC):
Figure 10 - Creating a Hetzner BYOC environment
(Complete details on setting up an environment are available elsewhere in the docs.) Click OK to start the environment creation process.
The Configuration Setup tab
The Connection Setup tab looks like this:
Figure 11 - The Hetzner BYOC Connection Setup tab
Clicking the documentation link takes you to this page. (If you clicked it, welcome back!). Click PROCEED to continue to the Resources Configuration tab.
The Resources Configuration tab
Things get more interesting here:
Figure 12 - The Hetzner BYOC Resources Configuration tab
Most of the entries here are straightforward. Select a region and availability zone, then enter your Hetzner API token and a CIDR block.
Node pools are a bit more complicated. Click the button to create a new node pool. Select an instance type, then select ClickHouse and Zookeeper. Don’t check System; by default the first node pool you create is defined with the toleration dedicated=clickhouse:NoSchedule
, and that doesn’t work for System nodes. (In Figure 12 above, we’ve clicked the down arrow to display the tolerations for the first node pool.)
Next, click the button again to create another node pool. Select an instance type and click System only.
The pricing page on the Hetzner Cloud site has detailed information about the different instance types and pricing.
Once you’ve selected a node pool for all three types of nodes, the PROCEED button will become active. Click it to start provisioning your BYOC environment.
The Status tab
As your Hetzner BYOC environment is being provisioned, you can watch the log to see how things are progressing. Click the VIEW LOG link to see system messages:
Figure 13 - Provisioning status
As provisioning progresses, you may see errors (line 8 in Figure 13 above, for example). Most of the time those messages resolve themselves as resources become available. If provisioning stalls, contact Altinity support for help.
When your Hetzner BYOC environment is ready
Once everything is set up, take a look at the Altinity Cloud Manager introduction for an overview of the Altinity.Cloud UI, or skip straight to the documentation for the Launch Cluster Wizard to create your first ClickHouse® cluster.