RancherでKubernetesを展開する方法
注意
ここで紹介するものは、Rancherのバージョンが1の時のお話です。
今は、アップデートを重ねてバージョンが2となっているため、バージョンの2以降を使いたい場合はこの方法ではうまくいきません。
概要
コンテナオーケストラレーションとして、Kubernetesというものがあります。
ここでは、Rancherというものを使ってKubernetesを用意する方法について紹介します。
注意として、Rancherのインストール方法については説明せず、インストールが終わった後から紹介します。インストール方法は、Rancherのインストールを参考にしてください。
環境
- Rancher 1.6
Cattleを使う場合
Rancherを立ち上げると、CattleというRancherのデフォルトのコンテナオーケストラレーションの環境が用意されています。
そのため、Cattleを使いたいのであれば、あとはコンテナを起動するホストを登録するだけで使い始めることができます。
実は、このCattle上にRancherの製作元で用意されているカタログを使ってKubernetesを用意することができるので、最初にこの方法を紹介します。
カタログは、上のメニューから選択します。
このとき、右下のメニューから言語を選択できるので、日本語がいいという場合はそこから日本語を選んでおきましょう。
カタログを見てみると、Kubernetesというものがあるので、それをクリックします。
クリックすると、Kubernetesを展開するための設定が表示されます。
設定は変更しなくても大丈夫なので、一応設定を確認した後に、「起動」をクリックします。
これで、Kubernetesを使えるようになりました。
あとはホストを追加するだけです。ホストの追加方法は、次に説明するCattleを使わないKubernetesの展開方法と同じなので、あとで説明します。
Kubernetesを使う場合
Rancherでは、デフォルトでCattleというオーケストラレーションツールが使われますが、これをKubernetesに変えることができます。
Cattle上にKubernetesを展開する方法の次に、Cattleを使わずにKubernetesを使う方法を紹介します。
まず最初に、上のメニューの左側の方に、カーソルを合わせると「環境を管理」というものがあるのでそれを選択します。
次に、環境を追加をクリックします。
そうすると、いくつかのコンテナオーケストラレーションツールの中からひとつを選んで環境を作るページが表示されるので、環境に適当な名前をつけて、さらにKubernetesを選んで作成をクリックします。
これで、Kubernetesを使えるようになりました。
あとは、ホストの追加をするだけです。
ホストの追加
ホストを追加するには、上のメニューから、「インフラストラクチャ」>「ホスト」を選択すると表示されるページから、[ホストの追加]をクリックします。
ホストの追加のためには、ホストを用意しておく必要があります。ホストのマシンの作成方法についてここでは説明しませんが、ホストのマシンには最低限Dockerをインストールしておきましょう。
ホストには、ラベルというものをつけられるのですが、Kubernetesを使うのであればこのラベルをつけておく必要があります。
Kubernetesのホストとして使うのであれば、次の3つを選択してラベルをつけます。
- orchestration
- etcd
- compute
orchestrationは、Kubernetesのシステムで使われるコンテナを配置するホストにつけます。
etcdは、Kubernetesのホスト間のネットワークとして使われるetcdのコンテナを配置するホストにつけます。
computeは、Kubernetesのシステムで使われるコンテナを配置しないホストにつけます。
このことから、最低限orchestrationとetcdのラベルのついたホストがひとつは欲しいです。そして、computeはKubernetesのシステムに関するコンテナを配置したくないホストにつけるので、Kubernetesに関係するホストには必ずorchestrationかcomputeのラベルのどちらかがついているということになります。
あとは、表示されるコマンドをホストとなるマシンで実行し、時間が経てばホストの追加が完了し、Kubernetesを使い始められるようになります。
Kubernetesの使い方
KubernetesはRancherとブラウザを介して操作することができます。
上のメニューのCLIを選択すれば、kubectlコマンドを使えるシェルが表示されるので、ブラウザを介してKubernetesの操作ができます。
いろいろと操作してみて、使い方を覚えて行きましょう。
まとめ
Rancherを使えば、簡単にKubernetesを用意できます。
ホストについてですが、冗長化のためにもできれば3台以上用意しておくことをお勧めします。