Deploying the Container Gateway
This topic describes the prerequisite knowledge required for you to deploy your Container Gateway to Kubernetes with a Helm Chart.
Before You Begin
Prior to installing or using Helm for your Container Gateway deployment to Kubernetes, ensure that the following tools, applications, or components are set up or given consideration:
- Access to at least one Gateway Kubernetes cluster (requires a valid cloud platform account).
- kubectlis installed locally.
- Access to Docker Engine to create base containers for your Gateway solution.
- Forked the latest Gateway Helm Chart project from the Layer7 API Charts GitHub repository.
- Deciding what configurations apply to your Gateway Helm Chart installation.
Installing Helm CLI
Before you can execute commands to install and execute Gateway Helm Charts, you'll need to install Helm on your Linux machine. Helm provides several options for users, including the option to install from source or from pre-built binary releases. For a comprehensive list of installation options, review Helm documentation here.
Using a Script to Install Helm CLI
To help you get quickly started, Helm offers a script option for installation:
$ curl -fsSL -o get_helm.sh https://raw.githubusercontent.com/helm/helm/master/scripts/get-helm-3 $ chmod 700 get_helm.sh $ ./get_helm.sh
When executed, a tar.gz package of the current release of Helm will be downloaded directly from The Helm Project and should be installed to
If you are new to Helm, it's strongly that you familiarize yourself with the product by reviewing Helm documentation. You may also run the
$ helm --helpcommand for a full list of Helm commands and their descriptions.
Adding Third-Party Helm Charts to Your Helm Repository
For the latest best practices in Gateway Helm Chart deployments, always refer to the README file of the Gateway Helm Chart repository.
To successfully run a Container Gateway solution in Kubernetes as described in Layer7's Container Gateway Reference Architecture, you may require Helm Subcharts for the following third-party components that will be used by the Container Gateway as dependencies:
Helm Command for Adding to Your Helm Repository
$ helm repo add mysql https://github.com/helm/charts/tree/master/stable/mysql
$ helm repo add hazelcast https://github.com/helm/charts/tree/master/stable/hazelcast
$ helm repo add influxdata https://github.com/influxdata/helm-charts/tree/master/charts/influxdb
$ helm repo add grafana https://github.com/bitnami/charts/tree/master/bitnami/grafana
After adding the subcharts as dependencies to your Helm repository, you'll need to rebuild the
charts/directory based on the Chart.lock file, also known as the dependency file.
To build out the charts/ directory from the Chart.lock file, run the following Helm command:
$ helm dependency build
If the build command fails or returns an error, use the
$ helm dependency updatecommand instead.
charts/directory should now contain all the subcharts (typically in .tgz format) as specified by the dependency file.