RancherOS で Rancher v2.0.0-alpha21 を試す
以前に Rancher 関連で以下のメモを書きました。
- vSphere 上に RancherOS をインストールする
- vSphere 上に RancherOS 1.1.0 をインストールする
- Rancher 2.0 をローカルディスクにインストールする
- RancherOS で Kubernetes 環境を構築する際の cloud-init
現時点で RancherOS の最新リリースは v1.3.0-rc1 になったので、改めて RancherOS + Rancher 2.0 な環境を作ってみました。 その際の作業メモを残しておきます。
作業方針¶
作業方針 / 利用するバージョン等は以下の通りです。
- RancherOS v1.3.0-rc1
- Rancher v2.0.0-alpha21
- 仮想マシンのローカルディスクに RancherOS をインストールする
- RancherOS へのアクセスは鍵交換方式で SSH アクセス出来るようにする
- RancherOS には「ユーザ=
rancher、パスワード=password」でアクセス出来るようにする rancher/serverは 8080/TCP または 8443/TCP で公開する
Tech Preview 2 での変更点¶
Rancher Tech Preview 2 のアナウンスは以下にあります。
主な変更点は以下だそうです。
- Rancher server is now 100% written in Go and no longer requires a MySQL database.
- You can deploy Rancher server on any Docker host as before, or you can deploy Rancher server on an existing Kubernetes cluster.
- You can create new Kubernetes clusters using Rancher Kubernetes Engine (RKE) or cloud-managed Kubernetes services such as GKE. Rancher automates both RKE and GKE cluster provisioning. Support for additional cloud-managed Kubernetes services such as EKS and AKS will be added in the future.
- You can manage all your Kubernetes clusters from a unified cluster management interface. Rancher implements centralized authentication and authorization across all Kubernetes clusters, regardless where these Kubernetes clusters are hosted.
- Rancher provides a simple workload management interface across all your Kubernetes clusters. This is still a work in progress. We continue to offer an intuitive Rancher 1.0-style container-centric interface. We are working on adding many advanced workload management features such as the app catalog, CI/CD and monitoring integration, sophisticated stats, and centralized logging.
従来、rancher/server のコンテナイメージは 8080/TCP を Listen していたと思うのですが、Tech Preview 2 からなのかは定かでないものの、最近の rancher/server リリースでは 80/TCP と 443/TCP を Listen するようになっています。 従って、rancher/server を起動するときはポート番号の指定に注意する必要があります。
vSphere 上に仮想マシンを作成する¶
以下のパラメータで仮想マシンを作成します。 仮想 DVD ドライブには RancerOS のインストールイメージをマウントします。 フロッピーディスク・ドライブは不要です。
| 項目 | 値 |
|---|---|
| ゲスト OS ファミリ | Linux |
| ゲスト OS バージョン | その他の Linux (64 ビット) |
| CPU | 4 |
| メモリ | 8GB |
| ハードディスク | 50GB |
初期ユーザのパスワード変更¶
仮想マシンが起動してきたら、vSphere のリモートコンソールから仮想マシンにアクセスします。 後の手順でファイル修正を行いますが、vSphere のコンソールではクリップボードが使えず、作業が辛い為、SSH でアクセス出来るようにします。 初期状態ではパスワードが設定されておらず、SSH ログイン出来ない為、コンソールから初期ユーザ(rancher)のパスワードを変更します。 ここで設定するパスワードはインストール中に利用する、あくまで「一時的なパスワード」であり、RancherOS をローカルディスクにアクセスした後は使えません。
1 | |
パスワードの設定が完了したら rancher ユーザで SSH アクセスします。
cloud-config.yml を用意する¶
cloud-config.yml というファイルにインストール用のパラメータを記載します。 Getting Started with Hosts というドキュメントの SUPPORTED DOCKER VERSIONS セクションに k8s と互換性のある Docker エンジンのバージョンについて記載されています。 現状では 17.03.x-ce 系が k8s をサポートしつつ、出来るだけ新しいバージョンのようです。 この点を踏まえ、cloud-config.yml の中身は以下としました。 hostname、<PUBLIC-KEY>、address、gateway は任意の値で書き換えます。
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 | |
RancherOS をローカルディスクにインストールする¶
用意した cloud-config.yml を指定して、ローカルディスクに RancherOS をインストールします。 --append "rancher.password=password" のように指定すると、RancherOS をローカルディスクにインストールした後でも、指定したパスワードで SSH アクセス出来るようになります。 下記のワンライナーを実行するとインストールが開始され、しばらくすると rancher/server が起動してきます。
1 | |
Rancher にアクセスする¶
ブラウザから http://xx.xx.xx.xx:8080 または https://xx.xx.xx.xx:8443 へアクセスすると Rancher の画面が表示されるはずです。
