注意: 情報が古くなっています。新しい情報にあわせて記事を書いた ので、そちらをご覧ください。
kubespray はproduction readyなkubernetes(k8s)クラスタを構成できるツールです。 Ansible をベースに作られているため、任意のサーバでk8sクラスタを構成できます。
今回は、3台のVMを用意してクラスタを構成してみます1。
検証環境
今回用意したVMは以下の構成です。
- 2Core
- 8GB RAM
- 80GB HDD
- CentOS 7
IPアドレスは以下の様になっているものとします。
- 192.168.1.11
- 192.168.1.12
- 192.168.1.13
また、kubesprayを実行するローカルの環境はmacOS Sierraです。 各ホストのrootユーザに対してSSH鍵は配置済み、firewalldは無効化されているとします。
requirements
実行する環境に、Ansible
が必要なため、pipでインストールします。23
| |
install kubespray-cli
kubespray自体もpipでインストールします。
| |
prepare
設定ファイルを生成するため、kubespray prepareを使用します。
| |
deploy
以下のコマンドでk8sクラスタをデプロイします。
| |
今回はflannel
ネットワークプラグインで構成しました。
kubesprayは、次のネットワークプラグインを使用してクラスタを構成することができます。
あとは構成が終了するのを待つだけです。
vmware vSphere 上に作成しました ↩︎
最初、Python 3でkubesprayを実行しようとしたところ、
raw_inputを使っているようで、上手くいきませんでした。Python 2で実行します ↩︎私は一応
venvを挟みました ↩︎https://github.com/kubernetes-incubator/kubespray/blob/master/docs/flannel.md ↩︎
https://github.com/kubernetes-incubator/kubespray/blob/master/docs/calico.md ↩︎
https://github.com/kubernetes-incubator/kubespray/blob/master/docs/contiv.md ↩︎
https://github.com/kubernetes-incubator/kubespray/blob/master/docs/weave.md ↩︎
