Deploy Hydrolix
Hydrolix deployments follow the Kubernetes operator pattern. To deploy Hydrolix, generate an operator configuration (operator.yaml) and a custom resource Hydrolix configuration (hydrolixcluster.yaml). You'll use these files to deploy Hydrolix on your Kubernetes cluster.
Generate the Operator Configuration⚓︎
The Hydrolix operator resources API generates all of the Kubernetes resource definitions required to deploy the operator, including service accounts and role permissions. Once deployed, the operator manages your Hydrolix cluster deployment. To upgrade your deployment to a new version, repeat this step.
Prerequisite: Environment Variables
These CLI commands require you to set environment variables before generating the configuration. See Prepare a Cluster for more information about the required inputs.
Run the following command to generate the operator YAML file, named operator.yaml:
Generate the hydrolixcluster.yaml Configuration⚓︎
Now that the environment is set up, create the Hydrolix configuration hydrolixcluster.yaml:
Use the following command to replace the environment variables above with their values:
Now, manually add your IP address to the allowlist. You can get your IP address by running curl -s ifconfig.me.
Manually Edit Configuration Files
You can also edit the hydrolixcluster.yaml to tune each deployment to your resource requirements. Scale profile information can be found in Scale Profiles.
After creating all those files, you can deploy Hydrolix by using the following command in the folder containing these YAML configs:
The cluster typically takes five to ten minutes to fully deploy. When it's ready for you to sign into the web UI, it will send e-mail to the address you configured in theHDX_ADMIN_EMAIL environment variable. There's a link in that e-mail to allow you to set a new password and log in. However, you'll need to set up DNS for your cluster, and probably HTTPS/TLS before that will work.
Create Your DNS Record⚓︎
Next, create a DNS record so you can access your cluster. Run the following command to retrieve the traefik record:
You should see output similar to the following:
Using the DNS provider of your choice, set up an A record for your hostname that points to the EXTERNAL-IP above.
Check Deployment Status⚓︎
You can now check the status of your deployment. Run the followingkubectl command to see the status of all pods in your cluster:
You should see output similar to the following:
You can also check your cluster status through the k9s tool or in the Kubernetes Dashboard available from the Linode LKE cluster summary page.
Enable IP Access and TLS⚓︎
If the URL of your Hydrolix cluster uses HTTPS, you will need to configure a TLS certificate. This is sometimes a complex process, but with simpler DNS configurations you can just follow these two steps:
-
Set the configuration option
acme_enabledtotrueinhydrolixcluster.yaml. -
Load the configuration changes to your Hydrolix cluster with
kubectl apply -f hydrolixcluster.yaml. Hydrolix will automatically generate a certificate for your cluster and store it in a Kubernetes secret namedtraefik-tls. This process can take up to 30 seconds.
If your DNS policies are more complicated, or if you want to generate and use your own certificate, refer to the instructions in Secure a Kubernetes Cluster.
TLS setup failing?⚓︎
Sometimes the Linode API will be unavailable and certificate storage will fail. In this case, delete the init-acme job from your Kubernetes cluster. The Hydrolix operator will automatically start a new one in 5 seconds and retry the operation.
To find the full name of the init-acme job, list the Kubernetes cluster's jobs:
Remove the job with
Enable Autoscaling⚓︎
Once your Hydrolix cluster is deployed, you can enable autoscaling by downloading and applying the following yaml:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 | |
Once you have downloaded the file you can apply it using:
The Final Step⚓︎
You should have received an email that will now allow you to set a password and login. If you do not receive this e-mail, or have trouble logging in, try these things:
- Verify the e-mail address in your hydrolixcluster.yaml file is correct and that you can receive mail sent to it.
- Try the "Forgot my password" option on the login page.
- If those two steps fail, contact us at mailto:support@hydrolix.io and we'll happily assist you.