WebexKubed Platform Arch
What is a WebexKubed Cluster ¶
Need to setup a kubed cluster requires infra, orchestration, package, config, deployment, LB, DNS, etc. 
Infrastructure ¶
- Infrastructure internal provider: Openstack
- Infrastructure public provider: AWS, Azure, GCP
Orchestration - Kubernetes ¶
Container deployment era: Containers are similar to VMs, but they have relaxed isolation properties to share the Operating System (OS) among the applications. Therefore, containers are considered lightweight. Similar to a VM, a container has its own filesystem, share of CPU, memory, process space, and more. As they are decoupled from the underlying infrastructure, they are portable across clouds and OS distributions.
Kubernetes Components ¶
Control Plane Components ¶
- kube-apiserver
- etcd
- kube-scheduler
- kube-controller-manager
- cloud-controller-manager
Node Component ¶
- kubelet
- kube-proxy
- Container runtime
Package ¶
Helm ¶
Package manager for Kubernetes. For reference usage scenarios, refer to tooling/helm
helm install <release_name> -n <namespace> .
Helm Charts ¶
Charts are Helm’s way of packaging Kubernetes resources into applications. WebexKubed keeps all Helm charts in the kubed-charts repo.
Configuration ¶
Helm-cfg ¶
Use cfg plugin to rendering helm charts from different config source, like Vault, infra service, app repo
helm cfg build --define env=${ENV},infra_repo=${INFRA_REPO},cloud=${CLOUD},runOnPGEnable=false,service=argo
Vault ¶
Manage Secrets & Protect Sensitive Data with Vault
Visit vault portal to check secret.
Deployment ¶
Argo ¶
Cloud native workflow and pipelining framework, used for various tasks in WebexKubed. The general flow is as follows: 1. Argo command is set in a PR. 2. Githook is triggered. 3. Argo Sensor picks up the message. 4. Argo workflow is triggered and begins running steps. For more information on Argo workflows, refer to argo-deployment-pipeline * Deploy pipeline workflow doc
Harness/Istio ¶
Harness Doc: https://sqbu-github.cisco.com/pages/WebexPlatform/docs/documentation/architecture/deployment_pipeline/harness-webexkubed-deployment
Istio mesh Doc: https://cisco.box.com/s/6iqynkyjn9y2qn9zwawfoltfkuwm6bpz
Architecture Overview ¶
Cluster Environment ¶
- dev
- int
- prod
CnC cluster ¶
The Command and Control (CnC) Cluster is the main Cluster that kickstarts a cloud, such as mccdev, mccint, mccprod, and more. This Cluster runs SinglePane and all the tools we need to bring up separate Application Cluster. For more information, refer to the CnC docs page.
Application cluster ¶
Application Clusters runs the actual applications managed by various application teams. They are the most common Cluster type in the WebexKubed Platform.
Observer cluster ¶
Observer Clusters aggregate metrics from all Clusters and host Grafana dashboards to display the metrics. Thanos powers the metric aggregation from all Cluster to the Observer Cluster.

