RancherにDocker for MacのKubernetesをインポートする


Rancherをとりあえずdocker runで気軽に動かして、Docker for Macで構築したKubernetesを、Rancherから操作したいなーってときの手順をメモしておく。

環境

  • macOS High Sierra
  • Docker for Mac 18.06.1-ce
  • Rancher 2.1.1

Rancherを起動

Manual Quick Start | Rancher Labs このあたりに書いてあるdocker runコマンドをローカルで実行した。

$ docker run -d --restart=unless-stopped -p 80:80 -p 443:443 rancher/rancher

うまく起動してたら、

$ docker ps

CONTAINER ID        IMAGE                    COMMAND             CREATED             STATUS              PORTS                                      NAMES
XXXXXXXXXXXX        rancher/rancher:latest   "entrypoint.sh"     2 hours ago         Up 2 hours          0.0.0.0:80->80/tcp, 0.0.0.0:443->443/tcp   xxxxxx_xxxxxxx

こんな感じで確認できる。

Rancherにアクセス

ローカルで起動しているので、 http://localhost でアクセスできるのだが、あとで、RancherにDocker for Mac上のk8s clusterを登録するあたりで、localhostでは不都合があるため、自身のIPアドレスでアクセスする。

今回は、 192.168.1.2 としておく。

ブラウザで、 https://192.168.1.2 にアクセスすると、以下のように証明書があきまへんって画面になりますが、気にせずアクセスする。

初期パスワードを設定する画面が表示されるので、設定する。好きなパスワードをどうぞ。

Rancher Server URLを登録する画面が表示される。

ここで、ちゃんと、ローカルのIPアドレスを指定しておかないと、以降の処理で失敗するぞ。

クラスターを追加

Rancher上で、Docker for MacのKubernetes Clusterを追加する。

クラスターの追加画面を開いて、Importを選択して任意の名前をつける。 ここでは、 dockerformac としておいた。

作成を押すと、以下のような画面になる。

一番下のコピーボタンを押下して、コマンドをクリップボードにコピーする。

真ん中のやつだと、証明書エラーになるので、curlとpipeを使って、いい感じに証明書のエラーを無視して kubctrl applyが実行できるようなコマンドである一番下のを使う。

すると、良い感じに以下のような画面になる。

これで、Rancher上でクラスターとして認識されたので、カタログとか実行できる状態になったっぽい。

まとめ

今回は、ひとまず、Docker for Macで実行できる k8s clusterを、Rancherにクラスターとしてインポートするあたりまでをメモった。

また、カタログとか実行していくあたりで何かあるかもだが、いろいろ試してみようと思う。

以上です。