Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
5分で説明する RancherOS+Rancher2インストール / rancherosin...
Search
yasu
May 09, 2019
Technology
0
670
5分で説明する RancherOS+Rancher2インストール / rancherosinstall
Cloud Native Online #01 のLT資料です。
LTでは中途半端に終わりましたが、
こちらは63ページ Full Verです。
yasu
May 09, 2019
Tweet
Share
More Decks by yasu
See All by yasu
Docker 危険のキ!/Docker the beginning of danger
yasu8899
1
230
Dockerとは
yasu8899
1
870
ML基本のキの一筆目
yasu8899
0
78
はじめての文字認識_改
yasu8899
1
480
rancheros-in-raspberrypi
yasu8899
2
440
Other Decks in Technology
See All in Technology
MCP認可の現在地と自律型エージェント対応に向けた課題 / MCP Authorization Today and Challenges to Support Autonomous Agents
yokawasa
5
2.3k
人に寄り添うAIエージェントとアーキテクチャ #BetAIDay
layerx
PRO
9
2.2k
Agent Development Kitで始める生成 AI エージェント実践開発
danishi
0
150
テストを実行してSorbetのsigを書こう!
sansantech
PRO
1
100
LLM 機能を支える Langfuse / ClickHouse のサーバレス化
yuu26
9
2.2k
いかにして命令の入れ替わりについて心配するのをやめ、メモリモデルを愛するようになったか(改)
nullpo_head
7
2.6k
ユーザー課題を愛し抜く――AI時代のPdM価値
kakehashi
PRO
1
120
JAWS AI/ML #30 AI コーディング IDE "Kiro" を触ってみよう
inariku
3
370
Claude Codeは仕様駆動の夢を見ない
gotalab555
23
6.6k
Amazon GuardDuty での脅威検出:脅威検出の実例から学ぶ
kintotechdev
0
110
AI時代の大規模データ活用とセキュリティ戦略
ken5scal
0
130
Infrastructure as Prompt実装記 〜Bedrock AgentCoreで作る自然言語インフラエージェント〜
yusukeshimizu
1
120
Featured
See All Featured
How to Ace a Technical Interview
jacobian
278
23k
Building a Scalable Design System with Sketch
lauravandoore
462
33k
What’s in a name? Adding method to the madness
productmarketing
PRO
23
3.6k
Building Adaptive Systems
keathley
43
2.7k
Navigating Team Friction
lara
188
15k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
33
2.4k
Designing for humans not robots
tammielis
253
25k
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
8
760
The Illustrated Children's Guide to Kubernetes
chrisshort
48
50k
Bash Introduction
62gerente
614
210k
KATA
mclloyd
32
14k
The MySQL Ecosystem @ GitHub 2015
samlambert
251
13k
Transcript
5分で説明する RancherOS+Rancher2 インストール Cloud Native Online #01 令和元年/05/09 小田@仙台
・専門用語がわからない。 ・とにかく動かしたい場合の手順を探しにくい。 書いた動機 これらを解消した、現時点の資料があったらいいなぁ
Rancher コンテナ管理ツール RancherOS コンテナを動作させるための専用OS 違い
VirtualBox 5.2.8 r122009 RancherOS 1.5.1 Rancher 2.2.2 (Single Node)
環境
下記ページの中ほどある、「rancheros.iso」を ダウンロードします。 https://github.com/rancher/os RancherOS ISOの入手
手順はgoogle先生に https://www.google.com/search?q=virtualbox+インストール VirtualBoxのインストール
仮想マシンを作成します。 参考)私が作成した仮想マシンのスペック CPU 3CPU メモリ 4096MB DISK 100GB
タイプ Linux バージョン Other Linux(64-bit) 仮想マシン作成
ネットワークを「ブリッジアダプター」に変更します。 仮想マシン作成
NAT構成の場合、Nodeの追加に失敗する。 「docker container logs -f rancher」でログを見ると 「10.0.2.15」が現れる。 VirtualBoxのNATとは相容れないのではないかと予測。 正確な原因は不明だが、ブリッジにすることで 回避できそう・・・。
ブリッジアダプターにした理由
「rancheros.iso」をマウントし、 仮想マシンを通常起動します。 仮想マシン作成
RancheOSをインストールします。 詳細は公式を確認。 https://docs.docker.com/install/linux/docker-ce/centos/ 下記が表示されたら「y」を入力します。 RancheOSのインストール $
sudo ros install -d /dev/sda --append "rancher.password=パスワード" Continue [y/N]:
起動しました。 仮想マシン作成
下記が表示されたら「n」を入力します。 シャットダウンします。 RancheOSのインストール Continue with reboot
[y/N]: # sudo poweroff
「rancheros.iso」のマウントを解除し、 仮想マシンを通常起動します。 起動したらログインします。 ユーザ名 rancher パスワード インストール時に設定したパスワード 仮想マシン作成 rancher
login: rancher Password:
※環境がDHCPの場合、このページの作業は不要 起動したらログインします。 ユーザ名 rancher パスワード インストール時に設定したパスワード RancheOSのネットワーク設定
※環境がDHCPの場合、このページの作業は不要 下記コマンドを実行します。 ※各値は、環境に合わせて変更してください。 RancheOSのネットワーク設定 $
sudo ros config set rancher.network.dns.nameservers "['192.168.1.10']" $ sudo ros config set rancher.network.interfaces.eth0.dhcp false $ sudo ros config set rancher.network.interfaces.eth0.address "192.168.1.100/24" $ sudo ros config set rancher.network.interfaces.eth0.gateway "192.168.1.1"
※環境がDHCPの場合、このページの作業は不要 確認します。 RancheOSのネットワーク設定
$ sudo ros config export rancher: network: dns: nameservers: - 192.168.1.10 interfaces: eth0: address: 192.168.1.100/24 dhcp: false gateway: 192.168.1.1
※環境がDHCPの場合、このページの作業は不要 再起動します。 RancheOSのネットワーク設定 # sudo
reboot
仮想マシンを起動します。 起動したらログインします。 ※これ以降の作業は、sshが使用できます。 ユーザ名 rancher パスワード インストール時に設定したパスワード 仮想マシン作成
コンソールを切り替えます。 下記が表示されたら「y」を入力します。 自動的に再起動されます。 RancheOSの設定 $ sudo
ros console switch centos Continue [y/N]:
再起動後に確認します。 RancheOSの設定 $ sudo ros console list disabled alpine current
centos disabled debian disabled default disabled fedora disabled ubuntu
Rancher公式サイト https://rancher.com/docs/rancher/v2.x/en/installation/single-node/ 公式サイトに書かれているコマンド ※このコマンドは実行しません。 Rancher 起動 sudo docker run
-d --restart=unless-stopped \ -p 80:80 -p 443:443 \ rancher/rancher:latest
こちらを実行しましょう。
実行すると、イメージのダウンロードが始まります。 Rancher 起動 $ docker container run -d --restart=unless-stopped \ --name rancher -h rancher \ -v /opt/rancher:/var/lib/rancher \ -v /var/log/rancher/auditlog:/var/log/auditlog \ -e AUDIT_LEVEL=1 \ -p 8080:80 -p 8443:443 \ rancher/rancher:latest
--name rancher -h rancher コンテナとコンテナ内のOSに名前を付けている -v /opt/rancher:/var/lib/rancher
設定をホスト上に保存するためマウントする -v /var/log/rancher/auditlog:/var/log/auditlog ログを監査ホスト上に保存するためマウントする -e AUDIT_LEVEL=1 監査ログのレベル -p 8080:80 -p 8443:443 シングルノードだと、コンテナとホスト側ポートが被るので変更する Rancher 起動
起動の確認 Rancher 起動 $ docker container ls
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES ea797af57529 rancher/rancher:latest "entrypoint.sh" 7 seconds ago Up 7 seconds 0.0.0.0:8080->80/tcp, 0.0.0.0:8443->443/tcp rancher
ブラウザで下記へアクセスします。 https://仮想マシンのIP:8443/ Rancherへ接続
「New Password」と 「Confirm Password」を 入力して、 「Continue」ボタンを クリックします。
admin アカウントのパスワード設定
URLを確認して、「Save URL」ボタンを クリックします。 Rancher サーバのURL設定
画面右下の「English」を クリックして、リストから 「日本語(ja-jp)」を 選択します。 日本語表示
「クラスターを追加」 ボタンをクリックします。 クラスターを追加
「Custom」をクリックします。 クラスターを追加
「クラスター名」を入力して ページ一番下の「次へ」をクリックします。 ※ここでは、クラスター名を「cluster」にしています。 クラスターを追加
「ノードロール」は、 「etcd」、「Control」、「Worker」のすべてを チェックします。 クラスターを追加
下記のコマンドをコピーして、「完了」ボタンを クリックします。 クラスターを追加
nodeの追加待ちになります。 クラスターを追加
コピーしたコマンドを実行します。 ※下記のコマンドはtokenが違うので実行しても 失敗します。必ず自身の環境のコマンドを実行します。
クラスターを追加 $ sudo docker run -d --privileged --restart=unless-stopped --net=host -v /etc/kubernetes:/etc/kubernetes -v /var/run:/var/run rancher/rancher-agent:v2.2.2 --server https://192.168.1.100:8443 --token 8v2jn4n2rpns69ctzxgvx2tlhgdr76cpz67fq6l69rd2hwvz9fmgvf --ca-checksum 555037031e7dde0bb6a4e963446d1fa88c5e6ab6165bf34cb69d2abe75e53bf6 --etcd --controlplane --worker
コマンドを実行するとworkerコンテナの実行が始まり、 さらにバックエンドでetcd、Hyperkubeコンテナの実行が 始まります。 CUI・WebUI共に画面の変化が乏しいですが、動いています。 かなり時間がかかります。 クラスターを追加
成功すると、状態が「Active」になります。 クラスターを追加
画面上部の「グローバル」にカーソルを置き、 展開されたメニューの「Cluster Active」に カーソルを置き、「System Active」をクリックします。 ワークロードの確認
コンテナの一覧が表示されます。 下記のようにまだ起動中のものがある場合は、すべてが 「Active」になるまで待ちます。 ワークロードの確認
画面上部の「Cluster System」にカーソルを置き、 展開されたメニューの「Cluster Active」に カーソルを置き、「Default Active」をクリックします。 カタログの表示
画面上部の「カタログアプリ」をクリックします。 カタログの表示
「起動」をクリックする。 カタログの表示
worspressの「詳細を見る」をクリックする。 WordPressの起動
ページ一番下の「起動」をクリックする。 WordPressの起動
状態が、「installing」になっています。 起動するまで、待ちます。 WordPressの起動
状態が「Active」になりました。 「80/http」をクリックします。 WordPressの起動
http://xip.io-wordpress.wordpress.192.168.128.248.xip.io/ WordPressの起動
WordpressのURLですが、下記のようになります。 http://xip.io-wordpress.wordpress.192.168.1.100.xip.io/ 名前解決には、xip.ioを使用しています。 dig等で名前解決すると、RancherOSのIPアドレスになっている ことが確認できます。 ※xip.io xip.ioの前の数字をIPアドレスとして返すもの。 「sample.1.2.3.4.xip.io」を名前解決すると「1.2.3.4」が返ります。
WordPressのURL
画面上部の「Cluster Default」にカーソルを置き、 展開されたメニューの「Cluster Active」をクリックします。 監視の有効化
画面右の方の「Enable Monitoring to see live metrics」をクリック します。 監視の有効化
Cluster Monitoring Configuration画面が開きます。 右の方の「有効」をクリックします。 ページ一番下の「保存」をクリックします。 必要なコンテナが起動するまで、待ちます。 監視の有効化
待ちます。 監視の有効化
監視機能が起動するとこうなります。 監視の有効化
Grafanaの画面。 監視の有効化
詳細は、以下。 https://rancher.com/docs/os/v1.x/en/installation/configuration/ Tips.1 RnacherOSの設定 値を設定する $ sudo ros config set
<key> <value> 複数の値を設定する(DNSの設定など) $ sudo ros config set <key> "[`xxx`, `yyy`]" yamlファイルから値を設定する $ sudo ros config merge -i <yaml file>
Tips.1 RnacherOSの設定 値を確認する $ sudo ros config get <key>
設定を取得する $ sudo ros config export
RancherOSの停止・再起動に必要な作業はありません。 「sudo poweroff」・「sudo reboot」で実行します。 起動後、必要なコンテナは自動起動します。 このドキュメントの従っていれば、Rancherの設定はローカル ディスク上(/opt/rancher)に保存されています。 Tips.2 RnacherOSの停止
node追加コマンド実行後、以下のメッセージが出力されました。 [etcd] Failed to bring up Etcd Plane: [etcd]
Etcd Cluster is not healthy そのまま放置していたら、気が付いた時には状況が進んでいま した。 Tips.3 クラスタ作成中のエラー
監視を有効にして、保存しようとすると図のようなメッセージが 出力され、「保存」が押せないことがあります。 メッセージから、CPUパワーが足りないと考え、 CPU数を2から3にしたところ解消しました。 Tips.4
監視の有効化中のエラー
エラーや異常があり、やり直したい場合の手順です。 詳細は以下。 https://rancher.com/docs/rancher/v2.x/en/cluster-admin/cleaning-cluster-nodes / 全てのコンテナを停止・削除します。 Tips.5 クリーンアップ $
docker container rm -f $(docker container ls -qa)
不要なファイル・ディレクトリの削除 以上の操作を行ったあとは、「Rancher 起動」の項目から再開 できます。 Tips.5
クリーンアップ $ sudo rm -rf /etc/ceph /etc/cni /etc/kubernetes /opt/cni /opt/rke \ /run/secrets/kubernetes.io /run/calico /run/flannel /var/lib/calico \ /var/lib/etcd /var/lib/cni /var/lib/rancher/rke/log /var/log/containers \ /var/log/pods /var/run/calico /opt/rancher/
ノートPC等でスリープしてネットワークが落ちた場合、復帰後に rancher/rancherコンテナが再起動を繰り返すことがあります。 RancherOSの再起動で回復します。 詳細の調査は未実施。いずれは・・・ Tips6. スリープ時