Use the Kubernetes destination task to deploy application components to your Kubernetes cluster. It’s important to note that a deployment pipeline can have only one Kubernetes destination task. Before you add the Kubernetes destination, make sure you've created a Kubernetes connection.
Click the Deploy tab. Clickto create a new deployment pipeline or click Edit on an existing pipeline.
Add a Kubernetes destination task or click and existing Kubernetes task. Complete the following steps to configure your setup. When you’re done, click Save to close the modal.
Add a Persistent Volume
Managing Persistent Volume Claims in ShuttleOps is a simple way to setup shared data mounts among your pods. Persistent volumes allow you to persist pod data and storage after the pod is deleted. To add a Persistent Volume, click on Add New in the Resources section, then click Persistent Volume. When you're done, click Save to continue.
Note: Once setup, the configured Persistent Volume can be referenced from the container configuration section - see below for details.
Configure the Persistent Volume
Add a Configuration Map
Use the ConfigMap section to store configuration for use within your deployment pipeline. These fields accept key-value pairs as their values. Clickin the Add ConfigMap section to add a new configuration map or click Edit on an existing one. When you’re done, click Save to close the modal.
The window will update to display the first few entries.
Ingress exposes HTTP and HTTPS routes from outside the cluster to services within the cluster. Traffic routing is controlled by rules defined on the Ingress resource. To add an Ingress rule, click on Add New in the Resources section, then click Ingress. When you're done, click Save to continue.
Configure the Ingress
Use the Pod Template section to specify a Kubernetes deployment. ShuttleOps provides default values where appropriate. Clickin the Add New Pod Template section to create a new Pod template or click Edit on an existing one. When you’re done, click Save to close the modal.
Configure the Pod
Images Select the images to deploy. All images will be deployed to the same pod.
Name Set a name for the pod.
Namespace Specify the Namespace for the deployment.
Replicas Specify the number of replicas.
Strategy Select between Rolling or Recreate deployment strategies.
Rolling Update Max Unavailable Set the maximum number of unavailable pods during the deployment update. This can be an absolute number or percentage of the replicas count; the default is 25%.
Rolling Update Max Surge Set the maximum of pods that can be created over the desired number of pods. This can be an absolute number or a percentage of the replicas count; the default is 25%.
Terminal Grace Period (Seconds) Enter a terminal server grace period.
Node Selector (Key) Enter the node selector key.
Node Selector (Value) Enter a node selector value.
Configure the Service
Name Provide a name for the service.
Type Select a Service Type. Select between ClusterIP, NodePort or LoadBalancer types. The default is ClusterIP.
Ports Where needed, add a Service Port. If no Service Port is added, then no Service will be created.
When you’re done, click Save to close the modal.
Manage the Container Configuration
ShuttleOps lets your easily manage your general and advanced container configurations from the Pod Settings modal. To access the container configuration section, click on the image name on the left. Enter your container configurations and when you're done, click Save to continue.
Image Displays the name of the image.
Container Name Specify a container name.
Image Pull Policy Set a rule for how the image is pulled from the container registry.
Config Map Key Refs Add a key reference specified in the config map that will be used for this container.
Volumes Add a claim to a preconfigured persistent volume to mount to this container.