Deploy Platform Applications via CLI
This topic describes how to use the CLI to enable an application to deploy to managed and attached clusters in a workspace.
Related Topics
Prerequisites
Before you begin, you must have:
A running cluster with Kommander installed.
Determine the name of the workspace where you wish to perform the deployments. You can use the
dkp get workspaces
command to see the list of workspace names and their corresponding namespaces.Set the
WORKSPACE_NAMESPACE
environment variable to the name of the workspace’s namespace where the cluster is attached:BASHexport WORKSPACE_NAMESPACE=<workspace_namespace>
Set the
WORKSPACE_NAME
environment variable to the name of the workspace where the cluster is attached:BASHexport WORKSPACE_NAME=<workspace_name>
From the CLI, you can enable applications to deploy in the workspace. Verify that an application has successfully deployed via the CLI.
Create the AppDeployment
to Enable the Application
Enable a supported application to deploy to your existing attached or managed cluster with an AppDeployment resource.
Obtain the APP ID and Version of the application from the applications table in the latest Release Notes. You will need them it in the
<APP-ID>-<Version>
format, for example,istio-1.16.2
.Run the following command and define the
--app
flag to specify which platform application and version will be enabled:CODEdkp create appdeployment istio --app istio-1.16.2 --workspace ${WORKSPACE_NAME}
The
--app
flag must match theAPP NAME
from the list of available platform applications.Observe that the
dkp create
command must be run with theWORKSPACE_NAME
instead of theWORKSPACE_NAMESPACE
flag.
This instructs Kommander to create and deploy the AppDeployment
to the KommanderClusters
in the specified WORKSPACE_NAME
.
Verify Applications
The applications are now enabled. Connect to the attached cluster and watch the HelmReleases
to verify the deployment. In this example, we are checking if istio
got deployed correctly:
kubectl get helmreleases istio -n ${WORKSPACE_NAMESPACE} -w
You should eventually see the HelmRelease
marked as Ready
:
NAMESPACE NAME READY STATUS AGE
workspace-test-vjsfq istio True Release reconciliation succeeded 7m3s
Some supported applications have dependencies on other applications. See Workspace Platform Application Dependencies for that table.