diff --git a/content/en/docs/reference/glossary/applications.md b/content/en/docs/reference/glossary/applications.md new file mode 100644 index 0000000000000..33901436be589 --- /dev/null +++ b/content/en/docs/reference/glossary/applications.md @@ -0,0 +1,13 @@ +--- +title: Applications +id: appplications +date: 2019-05-12 +full_link: +short_description: > + The layer where various containerized applications run. + +aka: +tags: +- fundamental +--- + The layer where various containerized applications run. diff --git a/content/en/docs/reference/glossary/cluster-infrastructure.md b/content/en/docs/reference/glossary/cluster-infrastructure.md new file mode 100644 index 0000000000000..0b8a5377b4fa9 --- /dev/null +++ b/content/en/docs/reference/glossary/cluster-infrastructure.md @@ -0,0 +1,13 @@ +--- +title: Cluster Infrastructure +id: cluster-infrastructure +date: 2019-05-12 +full_link: +short_description: > + The infrastructure layer provides and maintains VMs, networking, security groups and others. + +aka: +tags: +- operations +--- +The infrastructure layer provides and maintains VMs, networking, security groups and others. diff --git a/content/en/docs/reference/glossary/cluster-operations.md b/content/en/docs/reference/glossary/cluster-operations.md new file mode 100644 index 0000000000000..424e6579fcefc --- /dev/null +++ b/content/en/docs/reference/glossary/cluster-operations.md @@ -0,0 +1,13 @@ +--- +title: Cluster Operations +id: cluster-operations +date: 2019-05-12 +full_link: +short_description: > + Activities such as upgrading the clusters, implementing security, storage, ingress, networking, logging and monitoring, and other operations involved in managing a Kubernetes cluster. + +aka: +tags: +- operations +--- + Activities such as upgrading the clusters, implementing security, storage, ingress, networking, logging and monitoring, and other operations involved in managing a Kubernetes cluster. diff --git a/content/en/docs/reference/glossary/control-plane.md b/content/en/docs/reference/glossary/control-plane.md new file mode 100644 index 0000000000000..c314906de321f --- /dev/null +++ b/content/en/docs/reference/glossary/control-plane.md @@ -0,0 +1,13 @@ +--- +title: Control Plane +id: control-plane +date: 2019-05-12 +full_link: +short_description: > + The container orchestration layer that exposes the API and interfaces to define, deploy, and manage the lifecycle of containers. + +aka: +tags: +- fundamental +--- + The container orchestration layer that exposes the API and interfaces to define, deploy, and manage the lifecycle of containers. diff --git a/content/en/docs/reference/glossary/data-plane.md b/content/en/docs/reference/glossary/data-plane.md new file mode 100644 index 0000000000000..f7b7cf49c8aaa --- /dev/null +++ b/content/en/docs/reference/glossary/data-plane.md @@ -0,0 +1,13 @@ +--- +title: Data Plane +id: data-plane +date: 2019-05-12 +full_link: +short_description: > + The layer that provides capacity such as CPU, memory, network, and storage so that the containers can run and connect to a network. + +aka: +tags: +- fundamental +--- + The layer that provides capacity such as CPU, memory, network, and storage so that the containers can run and connect to a network. diff --git a/content/en/docs/setup/_index.md b/content/en/docs/setup/_index.md index a47d59bf3e77b..a2cc5d477621e 100644 --- a/content/en/docs/setup/_index.md +++ b/content/en/docs/setup/_index.md @@ -12,84 +12,83 @@ content_template: templates/concept {{% capture overview %}} -Use this page to find the type of solution that best fits your needs. +Depending on your requirements such as ease of maintenance, security, control, available resources, and level of expertise to operate and manage a Kubernetes cluster, there are various solutions available. You can deploy a Kubernetes cluster on a local machine, cloud, on-prem datacenter; or choose a managed Kubernetes cluster. You can also create custom solutions across a wide range of cloud providers, or bare metal environments. -Deciding where to run Kubernetes depends on what resources you have available -and how much flexibility you need. You can run Kubernetes almost anywhere, -from your laptop to VMs on a cloud provider to a rack of bare metal servers. -You can also set up a fully-managed cluster by running a single command or craft -your own customized cluster on your bare metal servers. +You can create a Kubernetes cluster in learning and production environments. {{% /capture %}} {{% capture body %}} -## Local-machine Solutions +## Learning environment + +If you want to get familiar with Kubernetes, you can use the Docker-based solutions. You can use tools that are supported by the Kubernetes community or the tools in the ecosystem to set up a Kubernetes cluster on a local machine. + +{{< table caption="Local machine solutions table that lists the tools supported by the community and the ecosystem to deploy Kubernetes." >}} + +|Community |Ecosystem | +| ------------ | -------- | +| [Minikube](/docs/setup/minikube/) | [CDK on LXD](https://www.ubuntu.com/kubernetes/docs/install-local) | +| [Kubeadm-dind](https://github.com/kubernetes-sigs/kubeadm-dind-cluster) | [Docker Desktop](https://www.docker.com/products/docker-desktop)| +| [Kubernetes IN Docker](https://github.com/kubernetes-sigs/kind) | [Minishift](https://docs.okd.io/latest/minishift/)| +| | [MicroK8s](https://microk8s.io/)| +| | [IBM Cloud Private-CE (Community Edition)](https://github.com/IBM/deploy-ibm-cloud-private) | +| | [IBM Cloud Private-CE (Community Edition) on Linux Containers](https://github.com/HSBawa/icp-ce-on-linux-containers)| +| | [k3s](https://k3s.io)| +| | [Ubuntu on LXD](/docs/getting-started-guides/ubuntu/)| + + +## Production environment + +Some of the possible abstractions of a Kubernetes cluster are {{< glossary_tooltip text="applications" term_id="applications" >}}, {{< glossary_tooltip text="data plane" term_id="data-plane" >}}, {{< glossary_tooltip text="control plane" term_id="control-plane" >}}, {{< glossary_tooltip text="cluster infrastructure" term_id="cluster-infrastructure" >}}, and {{< glossary_tooltip text="cluster operations" term_id="cluster-operations" >}}. +The following production environment solutions diagram lists the possible abstractions of a Kubernetes cluster and the level of expertise involved in managing the operations of a cluster. + +Production environment solutions![Production environment solutions](/images/docs/KubernetesSolutions.svg) + +{{< table caption="Production environment solutions table lists the providers and the solutions." >}} +The following production environment solutions table lists the providers and the solutions that they offer. + +|Providers | Managed | Turnkey cloud | On-prem datacenter | Custom (cloud) | Custom (On-premises VMs)| Custom (Bare Metal) | +| --------- | ------ | ------ | ------ | ------ | ------ | ----- | +| [Agile Stacks](https://www.agilestacks.com/products/kubernetes)| | ✔ | ✔ | | | +| [Alibaba Cloud](https://www.alibabacloud.com/product/kubernetes)| | ✔ | | | | +| [Amazon](https://aws.amazon.com) | [Amazon EKS](https://aws.amazon.com/eks/) |[Amazon EC2](https://aws.amazon.com/ec2/) | | | | +| [AppsCode](https://appscode.com/products/pharmer/) | ✔ | | | | | +| [APPUiO](https://appuio.ch/)  | ✔ | ✔ | ✔ | | | | +| [CenturyLink Cloud](https://www.ctl.io/) | | ✔ | | | | +| [Cloud Foundry Container Runtime (CFCR)](https://docs-cfcr.cfapps.io/) | | | | ✔ |✔ | +| [CloudStack](https://cloudstack.apache.org/) | | | | | ✔| +| [Canonical](https://www.ubuntu.com/kubernetes/docs/quickstart) | | ✔ | | ✔ |✔ | ✔ +| [Containership](https://containership.io/containership-platform) | ✔ |✔ | | | | +| [Digital Rebar](https://provision.readthedocs.io/en/tip/README.html) | | | | | | ✔ +| [DigitalOcean](https://www.digitalocean.com/products/kubernetes/) | ✔ | | | | | +| [Docker Enterprise](https://www.docker.com/products/docker-enterprise) | |✔ | ✔ | | | ✔ +| [Fedora (Multi Node)](https://kubernetes.io/docs/getting-started-guides/fedora/flannel_multi_node_cluster/)  | | | | | ✔ | ✔ +| [Fedora (Single Node)](https://kubernetes.io/docs/getting-started-guides/fedora/fedora_manual_config/)  | | | | | | ✔ +| [Gardner](https://gardener.cloud/) | |✔ | | ✔ | | +| [Giant Swarm](https://giantswarm.io/) | ✔ | ✔ | ✔ | | +| [Google](https://cloud.google.com/) | [Google Kubernetes Engine (GKE)](https://cloud.google.com/kubernetes-engine/) | [Google Compute Engine (GCE)](https://cloud.google.com/compute/)|[GKE On-Prem](https://cloud.google.com/gke-on-prem/) | | | | | | | | +| [IBM](https://www.ibm.com/in-en/cloud) | [IBM Cloud Kubernetes Service](https://cloud.ibm.com/kubernetes/catalog/cluster)| |[IBM Cloud Private](https://www.ibm.com/in-en/cloud/private) | | +| [Kontena Pharos](https://www.kontena.io/pharos/) | |✔| ✔ | | | +| [Kubermatic](https://www.loodse.com/) | ✔ | ✔ | ✔ | | | +| [KubeSail](https://kubesail.com/) | ✔ | | | | | +| [Kubespray](https://kubespray.io/#/) | | | |✔ | | | +| [Kublr](https://kublr.com/) |✔ | ✔ |✔ |✔ | | | +| [Microsoft Azure](https://azure.microsoft.com) | [Azure Kubernetes Service (AKS)](https://azure.microsoft.com/en-us/services/kubernetes-service/) | | | | | +| [Mirantis Cloud Platform](https://www.mirantis.com/software/kubernetes/) | | | ✔ | | | +| [Nirmata](https://www.nirmata.com/) | | ✔ | ✔ | | | +| [Nutanix](https://www.nutanix.com/en) | [Nutanix Karbon](https://www.nutanix.com/products/karbon) | [Nutanix Karbon](https://www.nutanix.com/products/karbon) | | | [Nutanix AHV](https://www.nutanix.com/products/acropolis/virtualization) | +| [OpenShift](https://www.openshift.com) |[OpenShift Dedicated](https://www.openshift.com/products/dedicated/) and [OpenShift Online](https://www.openshift.com/products/online/) | | [OpenShift Container Platform](https://www.openshift.com/products/container-platform/) | | [OpenShift Container Platform](https://www.openshift.com/products/container-platform/) |[OpenShift Container Platform](https://www.openshift.com/products/container-platform/) +| [Oracle Cloud Infrastructure Container Engine for Kubernetes (OKE)](https://docs.cloud.oracle.com/iaas/Content/ContEng/Concepts/contengoverview.htm) | ✔ | ✔ | | | | +| [oVirt](https://www.ovirt.org/) | | | | | ✔ | +| [Pivotal Container Service](https://pivotal.io/platform/pivotal-container-service) | | ✔ | ✔ | | | +| [Platform9](https://platform9.com/) | ✔ | ✔ | ✔ | | ✔ |✔ +| [Rancher](https://rancher.com/) | | [Rancher 2.x](https://rancher.com/docs/rancher/v2.x/en/) | | [Rancher Kubernetes Engine (RKE)](https://rancher.com/docs/rke/latest/en/) | | [k3s](https://k3s.io/) +| [StackPoint](https://stackpoint.io/)  | ✔ | ✔ | | | | +| [Supergiant](https://supergiant.io/) | |✔ | | | | +| [SUSE](https://www.suse.com/) | | ✔ | | | | +| [SysEleven](https://www.syseleven.io/) | ✔ | | | | | +| [VEXXHOST](https://vexxhost.com/) | ✔ | ✔ | | | | +| [VMware](https://cloud.vmware.com/) | [VMware Cloud PKS](https://cloud.vmware.com/vmware-cloud-pks) |[VMware Enterprise PKS](https://cloud.vmware.com/vmware-enterprise-pks) | [VMware Enterprise PKS](https://cloud.vmware.com/vmware-enterprise-pks) | [VMware Essential PKS](https://cloud.vmware.com/vmware-essential-pks) | |[VMware Essential PKS](https://cloud.vmware.com/vmware-essential-pks) -A local-machine solution is an easy way to get started with Kubernetes. You -can create and test Kubernetes clusters without worrying about consuming cloud -resources and quotas. - -You should pick a local solution if you want to: - -* Try or start learning about Kubernetes -* Develop and test clusters locally - -Pick a [local-machine solution](/docs/setup/pick-right-solution/#local-machine-solutions). - -## Hosted Solutions - -Hosted solutions are a convenient way to create and maintain Kubernetes clusters. They -manage and operate your clusters so you don’t have to. - -You should pick a hosted solution if you: - -* Want a fully-managed solution -* Want to focus on developing your apps or services -* Don’t have dedicated site reliability engineering (SRE) team but want high availability -* Don't have resources to host and monitor your clusters - -Pick a [hosted solution](/docs/setup/pick-right-solution/#hosted-solutions). - -## Turnkey – Cloud Solutions - - -These solutions allow you to create Kubernetes clusters with only a few commands and -are actively developed and have active community support. They can also be hosted on -a range of Cloud IaaS providers, but they offer more freedom and flexibility in -exchange for effort. - -You should pick a turnkey cloud solution if you: - -* Want more control over your clusters than the hosted solutions allow -* Want to take on more operations ownership - -Pick a [turnkey cloud solution](/docs/setup/pick-right-solution/#turnkey-cloud-solutions) - -## Turnkey – On-Premises Solutions - -These solutions allow you to create Kubernetes clusters on your internal, secure, -cloud network with only a few commands. - -You should pick a on-prem turnkey cloud solution if you: - -* Want to deploy clusters on your private cloud network -* Have a dedicated SRE team -* Have the resources to host and monitor your clusters - -Pick an [on-prem turnkey cloud solution](/docs/setup/pick-right-solution/#on-premises-turnkey-cloud-solutions). - -## Custom Solutions - -Custom solutions give you the most freedom over your clusters but require the -most expertise. These solutions range from bare-metal to cloud providers on -different operating systems. - -Pick a [custom solution](/docs/setup/pick-right-solution/#custom-solutions). - -{{% /capture %}} - -{{% capture whatsnext %}} -Go to [Picking the Right Solution](/docs/setup/pick-right-solution/) for a complete -list of solutions. {{% /capture %}} diff --git a/static/images/docs/KubernetesSolutions.svg b/static/images/docs/KubernetesSolutions.svg new file mode 100644 index 0000000000000..2361c47fc5df8 --- /dev/null +++ b/static/images/docs/KubernetesSolutions.svg @@ -0,0 +1,620 @@ + + + + + + + + + + + + + + image/svg+xml + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + Managed + Turnkey Cloud + On-prem Datacenter + Custom + Application + Data Plane + Data Plane + Data Plane + Data Plane + Application + Application + Cluster Infrastructure + Application + Control Plane + Control Plane + Control Plane + Control Plane + Cluster Infrastructure + Cluster Infrastructure + Cluster Infrastructure + Minimal ClusterOperations + Normal ClusterOperations + Extensive ClusterOperations + Extensive ClusterOperations + + + Managed by Providers + Self-Managed + +