Kubernetes クラスタの操作性を向上させる¶
Rancher でできること¶
RancherはブラウザーのUIを通したグラフィカルなインターフェースを持っており、様々な環境のkubernetesクラスタを管理するとともに、コンテナーの管理、アプリケーションの管理も行うことができます。ここでいうアプリケーションは kubernetes 上で動くものすべてです。
Rancherの機能については、以下のサイトからご確認ください。
Your Enterprise Kubernetes Platform | Rancher Labs https://rancher.com/
ここではRancherの導入から、アプリケーションのデプロイを実施します。 アプリケーションとして、kubernetes クラスタを監視するソフトウェアスタック(Prometheus+Grafana)をkubernetes上で簡単に起動してみます。
Rancher を導入する¶
dockerをインストールする¶
Rancherの導入には、Dockerコマンドを利用します。もし、Dockerをインストールしていない場合にはDockerをインストールします。
Rancherに必要なDockerのバージョンは、以下のURLに書いてあります。 https://rancher.com/docs/rancher/v2.x/en/installation/requirements/
- 1.12.6
- 1.13.1
- 17.03.2
となっていますが、18.06.01 でも動いています。今回は、18.06を使います。
インストール方法は、
curl https://releases.rancher.com/install-docker/18.06.sh | sh
でインストールしてください。
Rancherをインストールする¶
次にRancherをインストールします。
以下のDockerHubのタグでv2.x系の最新のバージョンを確認してください。。
今回は、v2.2.6 をインストールします。
docker run -d --restart=unless-stopped \
-p 80:80 -p 443:443 \
rancher/rancher:v2.2.6
Rancher へログイン¶
上記のRancherをインストールしたホストのIPアドレスでブラウザーを開くと以下のような画面が表示されます。
パスワードを指定するか、ランダムのパスワードを生成して Continue を押します。
Kubernetes クラスターのインポート¶
次に、作っておいた Kubernetesクラスターを Rancherから認識できるようにインポートします。 Globalから Add Cluster ボタンを押します。
クラスター追加画面が出てきますが、右上の IMPORT ボタンを押します。
次に、Cluster Nameを指定して Create ボタンを押します(Memberは自分一人で使う分には追加する必要はありません)。
以下のページで表示されたコマンドを実行します。 kubectlコマンドは事前にインストールし、kubernetesに接続できるよう設定しておいてください。
kubectl create clusterrolebinding cluster-admin-binding --clusterrole cluster-admin --user [USER_ACCOUNT]
上記の [USER_ACCOUNT] は上記コマンドを実行するユーザーIDを指定します。
kubectl apply -f https://xxxxxxxxxxxxxx.com/v3/import/XXXXXXXXXXXXXXXXXXXXXXXXX.yaml
上記のコマンドで証明書の問題のエラーが発生する場合は、以下のコマンドを実行して下さい。
curl --insecure -sfL https://xxxxxxxxxxxxxx.com/v3/import/XXXXXXXXXXXXXXXXXXXXXXXXX.yaml | kubectl apply -f -
KubernetesクラスターがRancherにインポートされると以下のようにGlobalのClusterダッシュボードにインポートされたクラスターが表示されます。
アプリケーションをデプロイ¶
Prometheus+Grafanaのデプロイする¶
上記、クラスターがインポートされた状態でPrometheus+Grafanaをデプロイしてみましょう。 まず、インポートされたKubernetesクラスターのDefaultネームスペースに切り換えます。
Global を押してドロップダウンしたメニューの Default をクリックします。 ワークロードのダッシュボード画面に切り替わります。
この画面の Catalog Apps をクリックします。
カタログリストから 右側の Search 検索ボックスに Prometheus
を入力します。
View Details をクリックします。
様々な設定項目がありますが、Grafana Admin Password
だけ任意のパスワード入力します。
デプロイが開始されると以下のような画面になります。
Prometheusをクリックします。
上記の Workloads
を確認します。
prometheus-grafana の80/http をクリックします。
画面が表示されれば正常にデプロイされています。