Azure

AzureにKubernetesを展開する5つの方法

はじめに

くどうです。

今回は、AzureにKubernetesを展開する方法についていくつか紹介したいと思います。
それぞれドキュメントがしっかりしているのでサクッとできます。

Azure Container Service (ACS)

(ドキュメントしか残ってません)
https://docs.microsoft.com/ja-jp/azure/container-service/
従来のサービスではAzure Container Service (ACS)があります。
オーケストレーションとしてSwarm、DC/OS、Kubernetesを選択できるようになっています。

ACSのドキュメントを参照すると下記のように古いバージョンですと表示されます。
警告
現在ご覧になっているのは、古いバージョンの Azure Container Service のドキュメントです。 Azure Container Service (AKS) は、新しいデプロイ オプション、強化された管理機能、およびコスト面でのメリットを Azure での Kubernetes に追加するために更新されています。 これらのプレビュー機能の使用を開始するには、AKS のドキュメントを参照してください。

Azure Container Service (AKS)

https://azure.microsoft.com/ja-jp/services/container-service/
ん?ちょっと待った。A「K」S? そう「K」とはKubernetesの「K」です。Containerどこいったw
こちらはKubernetesのマネージドサービスです。まだ、プレビューです。
結局、ACSには古いバージョンと表示され、AKSはプレビュー・・・どっち使えば良いんですかね?

上記二つ、ACS、AKSはマネージドサービスですが、SLAはVirtul MachinesのSLAになります。
https://azure.microsoft.com/en-us/support/legal/sla/container-service/v1_0/
正直、出来ることはportalやコマンドで、AgentNodeを増やしたり減らしたりすることぐらいです。
多分ここを見ていらっしゃる方々、いやいやもっとカスタマイズしたいんだって方もいると思います。

その場合はACS Engineを利用します。

ACS Engine

https://github.com/Azure/acs-engine
ACS Engineはその名の通りACSの大元です。オープンソースで公開されており自由にみれます。
特徴として任意のVNETに展開が行えたり、大規模な1200Nodeのクラスターが構築できたり様々な展開方法が行えます。
オーケストレーションもSwarm、DC/OD、Kubernetesが選択できます。ディスクの展開方法もVMASからVMSSに変更できたりします。
(Kubernetesは仕様上VMSSでの展開がまだ難しいようで対応されていません)

ACS Engineを利用してAzure上にkubernetesをdeploy!
Node Auto-Scaling + Kubernetes with ACS-Engine on Azure.

CoreOS Tectonic

https://github.com/coreos/tectonic-installer
CoreOS Tectonicという選択肢もあります。
CoreOSがDocker用にLinuxディストリビューションじゃなかった?と思う方も多いかと思いますが、
悟ったのかKubernetesをデプロイするツールを作っています。
利用するにはCoreOS account とTerraform 、DNSが必須です。
ドキュメントはまとまっているので苦ではありませんが少々手間がかかりますね。

Kubernetes on Ubuntu

https://kubernetes.io/docs/getting-started-guides/ubuntu/
手動で全部構築!?ではありません。
conjure-up + juju による展開です。
Ubuntu 限定の方法ですが展開フレームワークです。
特に、必須なものは無くKubernetesを展開するまでに30分もかかりません。

conjure-up
https://conjure-up.io/
juju
https://jujucharms.com/

まとめ

今回はAzureにKubernetes展開する5つの方法を紹介しました。
自分で管理運用するの嫌だって方はACS、AKSを利用すると良いでしょう。
いや、もっとカスタマイズしたいという方はACS Engineを利用すると良いと思います。
MS?そうじゃないOSSを使いたいという方はTectonicやjujuを利用してみてはいかがでしょうか。
上記5つ以外の方法で展開するんだという方もご自由に・・・

下記は独断と偏見です。

特段、良い悪いはないかと思います。
自分にあった展開する方法を検討してみてください!

Related post

  1. Azure

    Azure PowerShell のインストールで注意すること。あれ? Azure Resource…

    はじめにくどうです。最近、PCを入れ替えてAzure PowerS…

  2. Azure

    Diagnostics(診断)設定をする場合のストレージについて

    はじめにくどうです。Diagnostics(診断)設定をす…

  3. Azure

    Azureのアラートって簡単にPagerDutyと連携できるんです。そっからSlackとも連携できる…

    はじめにくどうです。Azureではアラートの設定がポータルから…

  4. Azure

    de:code 2016に参加した!

    はじめにくどうです。de:code2016に参加してきまし…

  5. AWS

    CloudMonixをちょっとだけ試してみた。

    はじめにくどうです管理運用面倒ですね・・・そこで、楽に…

  6. AWS

    AWS/Azure/GCP クラウド各社のIPv6対応状況(2017/03/27)

    はじめにくどうです。AWS/Azure/GCP クラウド各…

  1. Azure

    クイックスタートテンプレートを利用してユーザーイメージから仮想マシンを作成します…
  2. その他

    PowerMockupが便利でっせ。有料だけど。
  3. Azure

    SQL Server で照合順序 Japanese_CI_AS どこ消えた?あっ…
  4. Azure

    Azure Load Balancerと Azure Application G…
  5. 未分類

    XREAにEC-CUBEを入れる方法
PAGE TOP