Kubernetes部署与应用解决方案大全

本文提供了Kubernetes在不同平台上的部署方案,从本地单机到云端集群,涵盖一键部署及定制化解决方案。针对初学者及专业人员的不同需求,提供详尽的指导。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

Kubernetes部署与应用解决方案大全

Kubernetes can run on various platforms: from your laptop, to VMs on a cloud provider, to a rack of bare metal servers. The effort required to set up a cluster varies from running a single command to crafting your own customized cluster. Use this guide to choose a solution that fits your needs.

If you just want to “kick the tires” on Kubernetes, use the local Docker-based solutions.

When you are ready to scale up to more machines and higher availability, a hosted solution is the easiest to create and maintain.

Turnkey cloud solutions require only a few commands to create and cover a wide range of cloud providers. On-Premises turnkey cloud solutions have the simplicity of the turnkey cloud solution combined with the security of your own private network.

If you already have a way to configure hosting resources, use kubeadm to easily bring up a cluster with a single command per machine.

Custom solutions vary from step-by-step instructions to general advice for setting up a Kubernetes cluster from scratch.

Local-machine Solutions

  • Minikube is the recommended method for creating a local, single-node Kubernetes cluster for development and testing. Setup is completely automated and doesn’t require a cloud provider account.

  • Kubeadm-dind is a multi-node (while minikube is single-node) Kubernetes cluster which only requires a docker daemon. It uses docker-in-docker technique to spawn the Kubernetes cluster.

  • Ubuntu on LXD supports a nine-instance deployment on localhost.

  • IBM Cloud Private-CE (Community Edition) can use VirtualBox on your machine to deploy Kubernetes to one or more VMs for development and test scenarios. Scales to full multi-node cluster.

Hosted Solutions

  • Google Kubernetes Engine offers managed Kubernetes clusters.

  • Amazon Elastic Container Service for Kubernetes offers managed Kubernetes service.

  • Azure Container Service offers managed Kubernetes clusters.

  • Stackpoint.io provides Kubernetes infrastructure automation and management for multiple public clouds.

  • AppsCode.com provides managed Kubernetes clusters for various public clouds, including AWS and Google Cloud Platform.

  • Madcore.Ai is devops-focused CLI tool for deploying Kubernetes infrastructure in AWS. Master, auto-scaling group nodes with spot-instances, ingress-ssl-lego, Heapster, and Grafana.

  • Platform9 offers managed Kubernetes on-premises or on any public cloud, and provides 24/7 health monitoring and alerting. (Kube2go, a web-UI driven Kubernetes cluster deployment service Platform9 released, has been integrated to Platform9 Sandbox.)

  • OpenShift Dedicated offers managed Kubernetes clusters powered by OpenShift.

  • OpenShift Online provides free hosted access for Kubernetes applications.

  • IBM Cloud Container Service offers managed Kubernetes clusters with isolation choice, operational tools, integrated security insight into images and containers, and integration with Watson, IoT, and data.

  • Giant Swarm offers managed Kubernetes clusters in their own datacenter, on-premises, or on public clouds.

  • Kubermatic provides managed Kubernetes clusters for various public clouds, including AWS and Digital Ocean, as well as on-premises with OpenStack integration.

Turnkey Cloud Solutions

These solutions allow you to create Kubernetes clusters on a range of Cloud IaaS providers with only a few commands. These solutions are actively developed and have active community support.

On-Premises turnkey cloud solutions

These solutions allow you to create Kubernetes clusters on your internal, secure, cloud network with only a few commands.

Custom Solutions

Kubernetes can run on a wide range of Cloud providers and bare-metal environments, and with many base operating systems.

If you can find a guide below that matches your needs, use it. It may be a little out of date, but it will be easier than starting from scratch. If you do want to start from scratch, either because you have special requirements, or just because you want to understand what is underneath a Kubernetes cluster, try the Getting Started from Scratch guide.

If you are interested in supporting Kubernetes on a new platform, see Writing a Getting Started Guide.

Universal

If you already have a way to configure hosting resources, use kubeadm to easily bring up a cluster with a single command per machine.

Cloud

These solutions are combinations of cloud providers and operating systems not covered by the above solutions.

On-Premises VMs

Bare Metal

Integrations

These solutions provide integration with third-party schedulers, resource managers, and/or lower level platforms.

  • DCOS
    • Community Edition DCOS uses AWS
    • Enterprise Edition DCOS supports cloud hosting, on-premises VMs, and bare metal

Table of Solutions

Below is a table of all of the solutions listed above.

IaaS ProviderConfig. Mgmt.OSNetworkingDocsSupport Level
anyanymulti-supportany CNIdocsProject (SIG-cluster-lifecycle)
Google Kubernetes Engine  GCEdocsCommercial
Stackpoint.io multi-supportmulti-supportdocsCommercial
AppsCode.comSaltstackDebianmulti-supportdocsCommercial
Madcore.AiJenkins DSLUbuntuflanneldocsCommunity (@madcore-ai)
Platform9 multi-supportmulti-supportdocsCommercial
Kubermatic multi-supportmulti-supportdocsCommercial
Giant Swarm CoreOSflannel and/or CalicodocsCommercial
GCESaltstackDebianGCEdocsProject
Azure Container Service UbuntuAzuredocsCommercial
Azure (IaaS) UbuntuAzuredocsCommunity (Microsoft)
Bare-metalcustomFedoranonedocsProject
Bare-metalcustomFedoraflanneldocsCommunity (@aveshagarwal)
libvirtcustomFedoraflanneldocsCommunity (@aveshagarwal)
KVMcustomFedoraflanneldocsCommunity (@aveshagarwal)
DCOSMarathonCoreOS/AlpinecustomdocsCommunity (Kubernetes-Mesos Authors)
AWSCoreOSCoreOSflanneldocsCommunity
GCECoreOSCoreOSflanneldocsCommunity (@pires)
VagrantCoreOSCoreOSflanneldocsCommunity (@pires@AntonioMeireles)
Bare-metal (Offline)CoreOSCoreOSflanneldocsCommunity (@jeffbean)
CloudStackAnsibleCoreOSflanneldocsCommunity (@sebgoa)
Vmware vSphereSaltstackDebianOVSdocsCommunity (@imkin)
lxdJujuUbuntuflannel/canaldocsCommercial and Community
AWSJujuUbuntuflannel/calico/canaldocsCommercial and Community
AzureJujuUbuntuflannel/calico/canaldocsCommercial and Community
GCEJujuUbuntuflannel/calico/canaldocsCommercial and Community
Oracle CloudJujuUbuntuflannel/calico/canaldocsCommercial and Community
RackspaceJujuUbuntuflannel/calico/canaldocsCommercial and Community
Vmware vSphereJujuUbuntuflannel/calico/canaldocsCommercial and Community
Bare MetalJujuUbuntuflannel/calico/canaldocsCommercial and Community
AWSSaltstackDebianAWSdocsCommunity (@justinsb)
AWSkopsDebianAWSdocsCommunity (@justinsb)
Bare-metalcustomUbuntuflanneldocsCommunity (@resouer@WIZARD-CXY)
oVirt   docsCommunity (@simon3z)
anyanyanyanydocsCommunity (@erictune)
anyanyanyanydocsCommercial and Community

Note: The above table is ordered by version test/used in nodes, followed by support level.

Definition of columns

  • IaaS Provider is the product or organization which provides the virtual or physical machines (nodes) that Kubernetes runs on.
  • OS is the base operating system of the nodes.
  • Config. Mgmt. is the configuration management system that helps install and maintain Kubernetes on the nodes.
  • Networking is what implements the networking model. Those with networking type none may not support more than a single node, or may support multiple VM nodes in a single physical node.
  • Conformance indicates whether a cluster created with this configuration has passed the project’s conformance tests for supporting the API and base features of Kubernetes v1.0.0.
  • Support Levels
    • Project: Kubernetes committers regularly use this configuration, so it usually works with the latest release of Kubernetes.
    • Commercial: A commercial offering with its own support arrangements.
    • Community: Actively supported by community contributions. May not work with recent releases of Kubernetes.
    • Inactive: Not actively maintained. Not recommended for first-time Kubernetes users, and may be removed.
  • Notes has other relevant information, such as the version of Kubernetes used.

转载于:https://my.oschina.net/u/2306127/blog/1627166

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值