Rancherのインストールとシングルノードで運用するときの設定
Rancher 2 をインストールしてシングルノードのクラスターを構築する手順です。運用としてRancherの設定のバックアップ、データをNAS上に永続化する方法、コマンドによるメンテナンスについて考慮しています。
はじめに
この記事では、既にDockerコマンドを実行する環境が構築されたところからの手順を書いています。
この記事の一部は「RancherOSをインストールしたときの手順」の内容を前提にしています。 全体の経緯などは「RancherとGitLabでCI/CD環境と運用環境を構築した」に書いています。
Rancherの設定のスナップショットをNASに保存する準備
Rancherの設定はetcd(Key-Value Store)に保存されます。 Rancherには、このetcdのスナップショットを定期的に保存する機能があり、一定期間さかのぼって設定を復元することができます。
今回はシングルノードで運用することもあり、スナップショットをホストOS(今回はRancherOS)にマウントしたNAS上に保存するようにします。 スナップショットは /opt/rke/etcd-snapshots
に保存されるので、OSのセットアップでNASをマウントしたパス(今回は/mnt/nas/opt/rke/etcd-snapshots
)に向けてシンボリックリンクを作成します。
シンボリックリンクを作成する前に、予め、既に /opt/rke/etcd-snapshots
が存在するかどうかに応じてディレクトリを用意します:
- 存在する場合、
/mnt/nas/opt/rke/etcd-snapshots
にディレクトリを移動 - 存在しない場合、
/mnt/nas/opt/rke/etcd-snapshots
を作成
シンボリックリンクを作成:
sudo ln -s /mnt/nas/opt/rke/etcd-snapshots /opt/rke
これで、スナップショットがマウント先(今回はNAS)に保存されるようになります。
Rancherのインストール
Dockerで起動:
docker run -d --restart=unless-stopped \
-p 8443:443 \
-v /mnt/nas/var/lib/rancher:/var/lib/rancher \
rancher/rancher:stable
- ポートは 8443 にしました
- Rancherのデータを、マウントしたNAS上に永続化しています
- Rancherイメージのタグは次のリンクから要件に合うものを使ってください
https://hub.docker.com/r/rancher/rancher/tags
https://<host>:8443/
にアクセスしてRancherの画面が表示されたらインストール完了です。
クラスターの追加
Rancherのクラスターを構成します。今回はシングルノードでの運用なので、すべての役割をRancherを実行しているサーバーに割り当てます。
以下、要点のみです。
- Rancherにログインして、メニューの「グローバル」をクリック、「クラスターを追加」ボタンを押して、クラスターの追加画面を表示
- クラスター名に任意の名前を入力
- 必要に応じてその他の項目を入力したら「次へ」ボタンを押下
- クラスタータイプの選択で「カスタム」を選択
- ノードロールで
etcd
,Control
,Worker
を選択 - 表示されているコマンドをコピーして、Rancherを起動したサーバーで実行
これでRancherに各役割のノードとしてサーバーが登録され、各機能が使えるようになります。
メンテナンスについて
Rancherを使用すると基本的にはGUIで管理が行えるのですが、一部コマンドラインからの操作が必要になります。 それらについては「Rancherのメンテナンスに使用するコマンド」にまとめています。