This section provides the steps to deploy a Kubernetes cluster on bare metal nodes configured using MAAS with Calico as a Kubernetes networking plugin.
Caution
OpenContrail 4.x for Kubernetes 1.12 or later is not supported.
To automatically deploy a Kubernetes cluster on bare metal nodes:
Verify that you have completed the steps described in Prerequisites.
Log in to the Jenkins web UI as Administrator.
Note
To obtain the password for the admin user, run the
salt "cid*" pillar.data _param:jenkins_admin_password
command
from the Salt Master node.
Find the k8s_ha_calico heat pipeline job in the global view.
Select the Build with Parameters option from the drop-down menu of the selected job.
Configure the deployment by setting the following parameters as required:
Parameter | Defualt value | Description |
---|---|---|
ASK_ON_ERROR | False | If True , Jenkins will stop on any failure and ask either you want to
cancel the pipeline or proceed with the execution ignoring the error. |
SALT_MASTER_CREDENTIALS | <YOUR_SALT_MASTER_CREDENTIALS_ID> | The Jenkins ID of credentials for logging in to the Salt API. For example, salt-credentials. See View credentials details used in Jenkins pipelines for details. |
SALT_MASTER_URL | <YOUR_SALT_MASTER_URL> | The URL to access the Salt Master node. |
STACK_INSTALL | Select core,k8s,calico |
Components to install. |
STACK_TEST | Empty | The names of the cluster components to test. By default, nothing is tested. |
STACK_TYPE | physical |
The type of the cluster. |
Click Build to launch the pipeline.
Click Full stage view to track the deployment process.
The following table contains the stages details for the deployment with Calico as a Kubernetes networking plugin:
# | Title | Details |
---|---|---|
1 | Create infrastructure | Creates a base infrastructure using MAAS. |
2 | Install core infrastructure |
|
3 | Install Kubernetes infrastructure |
|
4 | Install the Kubernetes control plane and networking plugins |
|
When the pipeline has successfully executed, log in to any Kubernetes
ctl
node and verify that all nodes have been registered successfully:
kubectl get nodes
See also