| [Helm Tiller](https://docs.helm.sh/)| 10.2+ | Helm is a package manager for Kubernetes and is required to install all the other applications. It will be automatically installed as a dependency when you try to install a different app. It is installed in its own pod inside the cluster which can run the `helm` CLI in a safe environment. |
| [Helm Tiller](https://docs.helm.sh/) | 10.2+ | Helm is a package manager for Kubernetes and is required to install all the other applications. It will be automatically installed as a dependency when you try to install a different app. It is installed in its own pod inside the cluster which can run the `helm` CLI in a safe environment. |
| [Ingress](https://kubernetes.io/docs/concepts/services-networking/ingress/) | 10.2+ | Ingress can provide load balancing, SSL termination, and name-based virtual hosting. It acts as a web proxy for your applications and is useful if you want to use [Auto DevOps] or deploy your own web apps. |
| [Ingress](https://kubernetes.io/docs/concepts/services-networking/ingress/) | 10.2+ | Ingress can provide load balancing, SSL termination, and name-based virtual hosting. It acts as a web proxy for your applications and is useful if you want to use [Auto DevOps] or deploy your own web apps. |
| [Prometheus](https://prometheus.io/docs/introduction/overview/)| 10.4+ | Prometheus is an open-source monitoring and alerting system useful to supervise your deployed applications |
| [Prometheus](https://prometheus.io/docs/introduction/overview/) | 10.4+ | Prometheus is an open-source monitoring and alerting system useful to supervise your deployed applications |
| [GitLab Runner](https://docs.gitlab.com/runner/)| 10.6+ | GitLab Runner is the open source project that is used to run your jobs and send the results back to GitLab. It is used in conjunction with [GitLab CI/CD](https://about.gitlab.com/features/gitlab-ci-cd/), the open-source continuous integration service included with GitLab that coordinates the jobs. When installing the GitLab Runner via the applications, it will run in **privileged mode** by default. Make sure you read the [security implications](#security-implications) before doing so. |
| [GitLab Runner](https://docs.gitlab.com/runner/) | 10.6+ | GitLab Runner is the open source project that is used to run your jobs and send the results back to GitLab. It is used in conjunction with [GitLab CI/CD](https://about.gitlab.com/features/gitlab-ci-cd/), the open-source continuous integration service included with GitLab that coordinates the jobs. When installing the GitLab Runner via the applications, it will run in **privileged mode** by default. Make sure you read the [security implications](#security-implications) before doing so. |
## Getting the external IP address
## Getting the external IP address
...
@@ -244,11 +246,11 @@ Also, jobs that don't have an environment keyword set will not be able to access
...
@@ -244,11 +246,11 @@ Also, jobs that don't have an environment keyword set will not be able to access
For example, let's say the following Kubernetes clusters exist in a project:
For example, let's say the following Kubernetes clusters exist in a project:
| Cluster | Environment scope |
| Cluster | Environment scope |
| ---------- | ------------------- |
| ----------- | ----------------- |
| Development| `*` |
| Development | `*` |
| Staging | `staging/*` |
| Staging | `staging/*` |
| Production | `production/*` |
| Production | `production/*` |
And the following environments are set in [`.gitlab-ci.yml`](../../../ci/yaml/README.md):
And the following environments are set in [`.gitlab-ci.yml`](../../../ci/yaml/README.md):
...
@@ -278,9 +280,9 @@ deploy to production:
...
@@ -278,9 +280,9 @@ deploy to production:
The result will then be:
The result will then be:
- The development cluster will be used for the "test" job.
* The development cluster will be used for the "test" job.
- The staging cluster will be used for the "deploy to staging" job.
* The staging cluster will be used for the "deploy to staging" job.
- The production cluster will be used for the "deploy to production" job.
* The production cluster will be used for the "deploy to production" job.
## Multiple Kubernetes clusters
## Multiple Kubernetes clusters
...
@@ -300,22 +302,22 @@ The Kubernetes cluster integration exposes the following
...
@@ -300,22 +302,22 @@ The Kubernetes cluster integration exposes the following
[deployment variables](../../../ci/variables/README.md#deployment-variables) in the
[deployment variables](../../../ci/variables/README.md#deployment-variables) in the
| `KUBE_NAMESPACE` | The Kubernetes namespace is auto-generated if not specified. The default value is `<project_name>-<project_id>`. You can overwrite it to use different one if needed, otherwise the `KUBE_NAMESPACE` variable will receive the default value. |
| `KUBE_NAMESPACE`| The Kubernetes namespace is auto-generated if not specified. The default value is `<project_name>-<project_id>`. You can overwrite it to use different one if needed, otherwise the `KUBE_NAMESPACE` variable will receive the default value. |
| `KUBE_CA_PEM_FILE` | Only present if a custom CA bundle was specified. Path to a file containing PEM data. |
| `KUBE_CA_PEM_FILE` | Only present if a custom CA bundle was specified. Path to a file containing PEM data. |
| `KUBE_CA_PEM`| (**deprecated**) Only if a custom CA bundle was specified. Raw PEM data. |
| `KUBE_CA_PEM` | (**deprecated**) Only if a custom CA bundle was specified. Raw PEM data. |
| `KUBECONFIG`| Path to a file containing `kubeconfig` for this deployment. CA bundle would be embedded if specified. |
| `KUBECONFIG` | Path to a file containing `kubeconfig` for this deployment. CA bundle would be embedded if specified. |
## Enabling or disabling the Kubernetes cluster integration
## Enabling or disabling the Kubernetes cluster integration
After you have successfully added your cluster information, you can enable the
After you have successfully added your cluster information, you can enable the
Kubernetes cluster integration:
Kubernetes cluster integration:
1. Click the "Enabled/Disabled" switch
1.Click the "Enabled/Disabled" switch
1. Hit **Save** for the changes to take effect
1.Hit **Save** for the changes to take effect
You can now start using your Kubernetes cluster for your deployments.
You can now start using your Kubernetes cluster for your deployments.
...
@@ -394,4 +396,4 @@ the deployment variables above, ensuring any pods you create are labelled with
...
@@ -394,4 +396,4 @@ the deployment variables above, ensuring any pods you create are labelled with