マルチクラスター管理プラットフォーム Rancher (k8s) のデプロイ

  1. ホストの紹介

牧場主: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

  1. ドッカーをインストールする

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 を使用しています。

  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. クラスター/ノードの展開

クラスターを追加するには、「全般」を選択し、

プロンプトに従ってマスター、ノード 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

おすすめ

転載: blog.csdn.net/weixin_48878440/article/details/129073543