Kubernetesクラスター管理もGUIでできるDocker専用OSのRancherOS後継 BurmillaOSをESXi VMにインストールしたのでめも。
今回はESXi VMにDocker専用OSのRancherOS後継 BurmillaOSをGitHubからISOイメージをダウンロードしました。
https://github.com/burmilla/os/releases/
VMは以下の構成です。
新規仮想マシン | |
名前 | BurmillaOS |
互換性 | ESXi6.7仮想マシン |
ゲストOS ファミリ | Linux |
ゲストOS のバージョン | Debian GNU/Linux 10 (64 ビット) |
.
仮想マシンの設定 | |
CPU | 2 |
メモリ | 4GB |
ハードディスク | 200GB |
ハードディスクオプション | シンプロビジョニング |
ネットワークアダプタ1 | VM Network |
起動オプション | ファームウェア BIOS |
.
電源をオンにするとメモリにロードされたインストール画面が表示されました。
.
sudo su – で root 権限でネットワークの編集をしてOSインストールの準備をします。
$ sudo su -
# ip addr add 192.168.1.190/24 dev eth0
# ip route add default via 192.168.1.1
$ ip -4 a | grep inet
inet 127.0.0.1/8 scope host lo
inet 192.168.1.190/24 brd 192.168.255.255 scope global eth0
inet 172.18.42.1/16 scope global docker-sys
inet 172.17.0.1/16 brd 172.17.255.255 scope global docker0
.
cloud-config.yml を編集して同じネットワークの他のLinuxサーバーに保存します。
#cloud-config hostname: dh1.stuffy.site rancher: docker: environment: - no_proxy=192.168.1.190 system_docker: environment: - no_proxy=192.168.1.190 network: dns: nameservers: - 192.168.1.250 - 8.8.8.8 ←(お使いのDNSサーバー no_proxy: localhost,127.0.0.1,192.168.1.190 interfaces: eth0: address: 192.168.1.190/24 gateway: 192.168.1.1 mtu: 1500 dhcp: false services: console: environment: TZ: 'JST-9' syslog: environment: TZ: 'JST-9' server: image: rancher/server:preview restart: unless-stopped port: - 8080:80 - 8443:443
.
scp コマンドで 保存したcloud-config.yml ファイルを Burmilla OS上にコピーします。作業はBurmilla OS上で行います。
# scp root@192.168.1.200:/root/cloud-config.yml .
root@192.168.1.200's password: xxxxxxxxxxx
cloud-config.yml
.
Burmilla OSのハードディスクへのインストールを行います。
# ros install \
-d /dev/sda \
-c /home/rancher/cloud-config.yml \
--append "rancher.password=password1234"
.
途中、質問に y/No (yes)と答えて画面を進めるとインストールが完了しました。
.
SSH接続は cloud-config.yml に ssh_authorized_keys: としてキーを直接コピペします。
※ キーはターミナルエミュレーターからコピーしていったんメモ帳に貼って改行を削除する必要がありました。
#cloud-config
ssh_authorized_keys:
- "ssh-rsa AAAAB3NzaC1y....DQ== rancher@dh1"
設定を反映するには system-docker restart networkです。
# system-docker restart network
各種設定を編集するには /var/lib/rancher/conf/cloud-config.d/user_config.yml ファイルを開きます。
# cd /var/lib/rancher/conf/cloud-config.d
# vi user_config.yml
OS全体の設定も ros config set コマンドから行います。設定を確認するには ros config export -f です。
# ros config export -f
再起動するとSSH接続が拒否される場合は dhcp false としてIP固定すると良い感じになりました。
# ros config set rancher.network.interfaces.eth0.address 192.168.1.190/16
# ros config set rancher.network.interfaces.eth0.gateway 192.168.1.1
# ros config set rancher.network.interfaces.eth0.dhcp false
Kubernetes クラスターを管理するコンソールは rancher/server:preview コンテナが本体で8443ポートで起動し直してブラウザのアドレスバーに<Burmillaホスト>:8443 と入力すると開きました。
$ docker run -d -p 8080:80 -p 8443:443 --name server -v /opt/certs/cacerts.pem:/etc/rancher/ssl/cacerts.pem --restart always rancher/server:preview
.
クラスター作成画面で hello-world を作成、ローカルで確認できました。
OS のアップデートは ros os upgrade –image burmilla/os:v1.9.7-rc1 です。
# ros os upgrade --image burmilla/os:v1.9.7-rc1
参考書籍:Docker実践ガイド 第3版