Kubernetesは様々なプラットフォームで動作することができます: PCから、クラウドプロバイダーのVM、ベアメタルサーバーのラックまで。 クラスターをセットアップするために必要な作業は、単一のコマンドを実行することからカスタマイズされたクラスターを作り上げるまで異なります。このガイドを使用して、ニーズに合ったソリューションを選択してください。
Kubernetesを少し試したいだけであれば、ローカルマシンを使ったソリューションを使用してください。
より多くのマシンと高い可用性にスケールアップする準備がある場合、ホスティングを使ったソリューションで作成して保守するのが最も簡単です。
すぐに利用できるクラウドを使ったソリューションは様々なクラウドプロバイダーを作成してカバーするために必要なコマンドはわずかで済みます。すぐに利用できるオンプレミスを使ったソリューションには、プライベートネットワークのセキュリティと組み合わせたすぐに利用できるクラウドソリューションのシンプルさがあります。
すでにホスティングサービスを設定する方法がある場合は、kubeadmを使用して、マシン毎に単一のコマンドでクラスターを簡単に起動できます。
カスタムソリューションは段階的な手順からセットアップの一般的なアドバイスまで様々あります。
Minikubeは開発とテスト用にローカルの単一ノードのKubernetesクラスターを作成するための方法です。セットアップは完全に自動化されており、クラウドプロバイダーのアカウントは必要ありません。
Docker Desktopは MacまたはWindows環境に簡単にインストールできるアプリケーションで、 単一ノードのKubernetesクラスターを使用して、 数分でコーディングとコンテナへのデプロイを開始できます。
Minishiftは、ローカル開発およびテスト用にKubernetesエンタープライズプラットフォームのOpenShiftのコミュニティーバージョンをインストールします。Windows、MacOS、Linux用のオールインワンのVM (minishift start
)を提供します。コンテナの起動はoc cluster up
に基づいています (Linuxのみ)。付属のアドオンをインストールすることもできます。
MicroK8sは、開発とテスト用にローカルマシンに最新リリースのKubernetesを単一コマンドでのインストールを可能にします。セットアップは素早く、速く(〜30秒)て、lstioを含む多くのプラグインを単一コマンドでサポートします。
IBM Cloud Private-CE (Community Edition)は、開発とテストシナリオ用に、ご自身のマシンでVirtualBoxを使って1つ以上のVMにKubernetesをデプロイすることができます。フルマルチノードのクラスターに拡張します。
IBM Cloud Private-CE (Community Edition) on Linux Containersは、Linuxホスト上に7ノード(1ブート、1マスター、1マネジメント、1プロキシー、3ワーカー)のLXDクラスターを作成するためのTerraform/Packer/BASHベースのInfrastructure as Code(IaC)のスクリプトです。
Kubeadm-dindは、(Minikubeが単一ノードであることに対して)マルチノードのKubernetesクラスターで、Dockerデーモンのみが必要です。Kubernetesクラスターを生成するためにdocker-in-docker技術を使います。
Ubuntu on LXDは、ローカルホスト上の9インスタンスのデプロイをサポートします。
AppsCode.comは、AWSやGoogle Cloud Platformなどの様々なパブリッククラウド用のマネージドなKubernetesクラスターを提供します。
APPUiOは、OpenShiftのパブリッククラウドプラットフォームを実行し、あらゆるKubernetesワークロードをサポートします。さらにAPPUiOは、パブリッククラウドまたはプライベートクラウド上で動作するPrivate Managed OpenShift Clustersを提供します。
Amazon Elastic Container Service for Kubernetesは、マネージドなKubernetesサービスを提供します。
Azure Kubernetes Serviceは、マネージドなKubernetesクラスターを提供します。
Containership Kubernetes Engine (CKE) GCP、Azure、AWS、Packet、DigitalOceanでの直感的なKubernetesクラスターのプロビジョニングと管理。シームレスなバージョンアップグレード、自動スケーリング、メトリック、ワークロードの作成など。
DigitalOcean Kubernetesは、マネージドなKubernetesサービスを提供します。
Giant Swarmは、独自のデータセンター、オンプレミス、またはパブリッククラウド上にマネージドなKubernetesクラスターを提供します。
Google Kubernetes Engineは、マネージドなKubernetesクラスターを提供します。
IBM Cloud Kubernetes Serviceは、アイソレーションの選択、運用ツール、イメージとコンテナーへの統合されたセキュリティーのインサイト、およびWatson、IoT、データとの統合を備えたマネージドなKubernetesクラスターを提供します。
Kubermaticは、AWSやDigital Oceanなどの様々なパブリッククラウド用のマネージドなKubernetesクラスターを提供するだけでなく、OpenStackと統合されたオンプレミスも提供します。
Kublrは、AWS、Azure、GCP、およびオンプレミスで、エンタープライズ級の安全でスケーラブルで信頼性の高いKubernetesクラスターを提供します。すぐに使用可能なバックアップとディザスターリカバリ、集中管理されたマルチクラスターのログ記録とモニタリング、および組み込みのアラートが含まれます。
KubeSailは、簡単にKubernetesを試すことができる近道です。
Madcore.Aiは、AWSにKubernetesインフラストラクチャーをデプロイするためのDevOpsにフォーカスしたCLIツールです。マスター、スポットインスタンスを使ったオートスケーリンググループのノード、ingress-ssl-lego、Heapster、およびGrafana。
Nutanix Karbonは、Kubernetesのプロビジョニング、運用、ライフサイクル管理を簡素化する、マルチクラスターで可用性の高いKubernetes管理および運用プラットフォームです。
OpenShift Dedicatedは、OpenShiftを搭載したマネージドなKubernetesクラスターを提供します。
OpenShift Onlineは、Kubernetesアプリケーションに無料のホストアクセスを提供します。
Oracle Container Engine for Kubernetesは、コンテナ化されたアプリケーションをクラウドにデプロイするために使用できる、フルマネージドかつスケーラブルで可用性の高いサービスです。
Platform9は、オンプレミスまたはパブリッククラウド上でマネージドなKubernetesを提供し、24時間365日のヘルスモニタリングとアラートを提供します。(Kube2goは、Web UIによって駆動されるKubernetesクラスターデプロイメントサービスであるPlatform9がリリースされ、Platform9 Sandboxに統合されました)
Stackpoint.ioは、複数のパブリッククラウドに対してKubernetesインフラストラクチャーの自動化と管理を提供します。
SysEleven MetaKubeは、OpenStackのパブリッククラウドを基盤とするサービスとしてマネージドなKubernetesを提供します。ライフサイクル管理、管理ダッシュボード、モニタリング、自動スケーリングなどが含まれます。
VMware Cloud PKSは、VMware Cloud ServicesポートフォリオのエンタープライズのKubernetes-as-a-Serviceであり、使いやすく、デフォルトで安全、かつ費用対効果の高いSaaSベースのKubernetesクラスターを提供します。
これらのソリューションを使用すると、ほんの少しのコマンドで、様々なCloud IaaSプロバイダー上にKubernetesクラスターを作成できます。 これらのソリューションはアクティブに開発されており、またアクティブなコミュニティー支援を受けています。
これらのソリューションは、内部の安全なクラウドネットワーク上にKubernetesクラスターをほんのわずかのコマンドで作成することを可能にします。
Kubernetesは、幅広いクラウドプロバイダーやベアメタル環境、 そして多くの基本オペレーティングシステム上で実行できます。
もし以下のガイドからニーズに合ったものを見つけることができたなら、それを使ってください。 少し古くなっているかもしれませんが最初から始めるよりも簡単です。特別な要件があるため、 またはKubernetesクラスターの下にあるものを理解したいために最初から始める必要がある場合は、 ゼロからのカスタムクラスターの作成を試してください。
ホスティングリソースを設定する方法がすでにある場合は、 kubeadmを使用して マシン毎に単一のコマンドでクラスターを起動します。
これらのソリューションは、上記のソリューションでカバーされていないクラウドプロバイダーとオペレーティングシステムの組み合わせです。
これらのソリューションは、サードパーティー製のスケジューラー、リソースマネージャー、および/または低レベルのプラットフォームとの統合を提供します。
以下は上記のソリューションすべての表です。
IaaS プロバイダー | 構成管理 | OS | ネットワーク | ドキュメント | サポートレベル |
---|---|---|---|---|---|
any | any | multi-support | any CNI | docs | Project (SIG-cluster-lifecycle) |
Google Kubernetes Engine | GCE | docs | Commercial | ||
Docker Enterprise | custom | multi-support | multi-support | docs | Commercial |
IBM Cloud Private | Ansible | multi-support | multi-support | docs | Commercial and Community |
Red Hat OpenShift | Ansible & CoreOS | RHEL & CoreOS | multi-support | docs | Commercial |
Stackpoint.io | multi-support | multi-support | docs | Commercial | |
AppsCode.com | Saltstack | Debian | multi-support | docs | Commercial |
Madcore.Ai | Jenkins DSL | Ubuntu | flannel | docs | Community (@madcore-ai) |
Platform9 | multi-support | multi-support | docs | Commercial | |
Kublr | custom | multi-support | multi-support | docs | Commercial |
Kubermatic | multi-support | multi-support | docs | Commercial | |
IBM Cloud Kubernetes Service | Ubuntu | IBM Cloud Networking + Calico | docs | Commercial | |
Giant Swarm | CoreOS | flannel and/or Calico | docs | Commercial | |
GCE | Saltstack | Debian | GCE | docs | Project |
Azure Kubernetes Service | Ubuntu | Azure | docs | Commercial | |
Azure (IaaS) | Ubuntu | Azure | docs | Community (Microsoft) | |
Bare-metal | custom | Fedora | none | docs | Project |
Bare-metal | custom | Fedora | flannel | docs | Community (@aveshagarwal) |
libvirt | custom | Fedora | flannel | docs | Community (@aveshagarwal) |
KVM | custom | Fedora | flannel | docs | Community (@aveshagarwal) |
DCOS | Marathon | CoreOS/Alpine | custom | docs | Community (Kubernetes-Mesos Authors) |
AWS | CoreOS | CoreOS | flannel | docs | Community |
GCE | CoreOS | CoreOS | flannel | docs | Community (@pires) |
Vagrant | CoreOS | CoreOS | flannel | docs | Community (@pires, @AntonioMeireles) |
CloudStack | Ansible | CoreOS | flannel | docs | Community (@sebgoa) |
VMware vSphere | any | multi-support | multi-support | docs | Community |
Bare-metal | custom | CentOS | flannel | docs | Community (@coolsvap) |
lxd | Juju | Ubuntu | flannel/canal | docs | Commercial and Community |
AWS | Juju | Ubuntu | flannel/calico/canal | docs | Commercial and Community |
Azure | Juju | Ubuntu | flannel/calico/canal | docs | Commercial and Community |
GCE | Juju | Ubuntu | flannel/calico/canal | docs | Commercial and Community |
Oracle Cloud | Juju | Ubuntu | flannel/calico/canal | docs | Commercial and Community |
Rackspace | custom | CoreOS | flannel/calico/canal | docs | Commercial |
VMware vSphere | Juju | Ubuntu | flannel/calico/canal | docs | Commercial and Community |
Bare Metal | Juju | Ubuntu | flannel/calico/canal | docs | Commercial and Community |
AWS | Saltstack | Debian | AWS | docs | Community (@justinsb) |
AWS | kops | Debian | AWS | docs | Community (@justinsb) |
Bare-metal | custom | Ubuntu | flannel | docs | Community (@resouer, @WIZARD-CXY) |
oVirt | docs | Community (@simon3z) | |||
any | any | any | any | docs | Community (@erictune) |
any | any | any | any | docs | Commercial and Community |
any | RKE | multi-support | flannel or canal | docs | Commercial and Community |
any | Gardener Cluster-Operator | multi-support | multi-support | docs | Project/Community and Commercial |
Alibaba Cloud Container Service For Kubernetes | ROS | CentOS | flannel/Terway | docs | Commercial |
Agile Stacks | Terraform | CoreOS | multi-support | docs | Commercial |
IBM Cloud Kubernetes Service | Ubuntu | calico | docs | Commercial | |
Digital Rebar | kubeadm | any | metal | docs | Community (@digitalrebar) |
VMware Cloud PKS | Photon OS | Canal | docs | Commercial | |
VMware Enterprise PKS | BOSH | Ubuntu | VMware NSX-T/flannel | docs | Commercial |
Mirantis Cloud Platform | Salt | Ubuntu | multi-support | docs | Commercial |
備考: 上記の表はバージョンテスト/ノード内での使用順に並べられ、その後にサポートレベルが続きます。
このページは役に立ちましたか?
Thanks for the feedback. If you have a specific, answerable question about how to use Kubernetes, ask it on Stack Overflow. Open an issue in the GitHub repo if you want to report a problem or suggest an improvement.