ホストの紹介
牧場主:192.168.136.8
マスター:192.168.136.21
ノード1:192.168.136.22
ノード2:192.168.136.23
それほど多くの仮想マシンを作成したくない場合は、少なくとも 2 つのホスト、1 つの Rancher、および 1 つの k8s シングルノード クラスター (擬似クラスター) が必要です。
Linux 導入の単一ノード k8s クラスターのリファレンス: https://blog.csdn.net/weixin_48878440/article/details/129561710?spm=1001.2014.3001.5502
ドッカーをインストールする
Docker のインストールに関するリファレンス: https://blog.csdn.net/weixin_48878440/article/details/122152407?spm=1001.2014.3001.5502
注: 監視端末と監視対象端末の docker バージョンは一致している必要があります。インストール時に、インストールする docker バージョンを指定する必要があります。指定されたバージョンがインストールされている場合、リポジトリ ソースは docker-ce-cli のバージョンをサポートしていますdocker-ce をサポートするバージョンがあります。docker-ce-cli はその状況をサポートしていません。たとえば、docker-ce にはバージョン 18.06.03 がありますが、docker-ce-cli にはこのバージョンがありません。
表示するには、yum list docker-ce --showduplicates|sort -r、yum list docker-ce-cli --showduplicates|sort -r を使用します。ここではバージョン 23.0.1 を使用しています。
Rancherコンテナを起動する
rancher コンテナを起動し、ポート マッピングを設定します。v2.7.X をインストールすることをお勧めします。インターネット上には、まだ rancher/server をインストールする人がたくさんいます。これは、rancher1.6.5 (古すぎる) のバージョンです。 1.6.5 はクラスター監視さえサポートしていません。
このコマンドを説明してください
-d はコンテナをバックグラウンドで実行することを意味します
-p はポートマッピングを意味します
--privileged は特権コンテナを示します。これは、コンテナ内の root ユーザーがホスト マシンの実際の root 権限を持っていることを意味します。それ以外の場合、コンテナ内の root ユーザーは外部では共通のユーザー権限にすぎません。
-v はマウントを意味し、コロン「:」の前のディレクトリはホスト ディレクトリ、次のディレクトリはコンテナ内のディレクトリであり、ディレクトリは絶対パスである必要があります。ホストが相対パスを書き込む場合 (docker -v test1:/soft など)、マウント ディレクトリが現在のパスにない場合、マウント ディレクトリは /var/lib/docker/volumes/test1/_data に表示されます。の使用は推奨されません。
--restart=always は、コンテナが閉じられた後に自動的に再起動することを意味します。コンテナを強制的に削除するには、dockers container rm "container ID" -f を使用します。
--name はコンテナのコンテナ名を表します
docker run -d --privileged -p 80:80 -p 443:443 -v /root/docker_volume/rancher:/var/lib/rancher --restart=always --name rancher-2.7.0 rancher/rancher:v2.7.0
docker ps でコンテナが開始されているかどうかを確認します
ブラウザは 192.168.136.8:80 を通じてホームページにアクセスし、443 または 80 を通じてアクセスします。ホームページを開くには 2 分かかります。プロンプトに従ってコマンドを入力してキーを取得します。curl http://127.0 を通じてテストできます。 .0.1。
!対応するパスワード ログがここに表示されない場合 (実際にはメモリ不足が原因であることが後で判明しました)、reset-password を使用して管理者パスワードをリセットできます。
docker exec -ti container-ID reset-password
ログイン成功
クラスター/ノードの展開
クラスターを追加するには、「全般」を選択し、
プロンプトに従ってマスター、ノード 1、およびノード 2 に Rancher をインストールします。2 番目のコマンドに注意してください。
Node1 ではエラーが表示されますが、ノード 2 はコマンドを入力する前に正常に追加されています。
2 つの新しい名前空間がマスター ノードに追加されました。
ホームリソースパネルの表示
5. 注意事項
5.1 メモリ不足
ホストには少なくとも 4G のメモリが必要です (6G を推奨)
5.2 ストレージが不十分である
Rancher コンテナを起動するには、サーバー ホストに少なくとも 2G のストレージ容量が必要です。コンテナは起動時に約 1.8G を占有し、安定化後は約 800M を占有します (プラグインやノードを追加しない場合)。
若需要增加root主内存,注意不要新增磁盘,这两者是不一样的。请参考https://blog.csdn.net/majianting/article/details/122944109
!内存不足会导致容器启动几秒后就消失,则会一直处在宕机/启动反复横跳,每次启动成功只能持续两分钟。如果存储不足,会容器转态会一直处于restarting。如果没有设置--restart=always,上述两种情况容器都会在几秒钟内自动停止,只能通过docker ps -a查询。强制删除容器使用docker container rm -f 容器ID。
5.3日志查询方法
5.3.1容器能够启动成功
docker logs 容器ID | grep error
5.3.2容器无法启动成功,一直处于restarting
docker logs 容器ID | grep error
docker inspect --format '{ {.LogPath}}' 容器ID,会获得日志文件地址,cat查看即可。--restart=always表示容器会尝试重启,一直处于restarting。
docker inspect --format '{
{.LogPath}}' e85e4839fcde