Centos7.8上にMinishiftを導入したのでそのメモ。
ベアメタル環境にCentos7を入れKVM環境を構築しています。
1つのVMとしてCentos7.8を導入し、そこにMinishiftを導入します。Nested環境となります。
以下の方々の記事を参考にしています。
https://haruka-note.hateblo.jp/entry/20190807_nestedkvm
https://qiita.com/daihiraoka/items/f04ce27d4ddaff1734e0
https://qiita.com/d_studio/items/61002fefde9f3b8bc439
1)KVMでのNest環境設定
前提:ベアメタル環境上で設定を行います。
設定:
/etc/modprobe.d/kvm.conf を作成。
上記kvm.confファイルに
「options kvm_intel nested=1」
を記述し保存。Nested KVMを有効化する。
(一度再起動し)catなどで以下を確認。
cat /sys/module/kvm_intel/parameters/nested
結果「1」となることを確認する。
次に同じくベアメタルサーバー上にて、仮想マシンの設定を追加。
以下のコマンドを実行し編集状態に。
virsh edit (変更対象のVM名)
(中略)
(中略)
保存後、変更対象のVMを一旦終了してから起動。
正常に起動したことで確認。
2)Minishiftの導入
もしWidnowsシステムが入っていないなら(楽なので)導入しておく。
yum group install "GNOME Desktop"
(導入後reboot)
Dockerの導入
yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
yum install docker-ce
libvirtとqemu-kvmを追加
yum install libvirt qemu-kvm -y
minishiftインストール
curl -L https://github.com/dhiltgen/docker-machine-kvm/releases/download/v0.10.0/docker-machine-driver-kvm-centos7 > /usr/local/bin/docker-machine-driver-kvm
chmod +x /usr/local/bin/docker-machine-driver-kvm
Minishiftの起動
minishift start --openshift-version v3.11.0 --iso-url centos --cpus 4 \
--memory 12GB --disk-size 60GB
ことのき、仮想サーバーにメモリー割り当てが少ないとErrorとなり起動しなかったため、メモリー割り当てを追加した。
さらに「Could not set oc CLI context for 'minishift' profile: Error during setting 'minishift' as active profile: The specified path to the kube config '/Users/xxxxx/.minishift/machines/minishift_kubeconfig' does not exist」
とエラー表示に遭遇。
以下のを投入し、再び起動することで正常に起動(するはず)
minishift delete -f
minishift start --profile minishift
正常に終了すると一連の起動メッセージの終わりの方でポータルログインのためのURLと、アカウント情報が表示されるのでメモ。
The server is accessible via web console at:
https://192.168.XX.XX:8443/console
ログインIDは以下の通り。パスワードは何でもよいと・・・
You are logged in as:
User: developer
Password:
管理権限でのアクセスの場合は、
oc login -u system:admin
にてアクセスします。
環境変数定義を行います。以下3つを入力します。
eval $(minishift oc-env)
eval $(minishift docker-env)
source <(oc completion bash)
確認コマンド:
minishift oc-env
結果:
export PATH="/root/.minishift/cache/oc/v3.11.0/linux:$PATH"
確認コマンド:
ls -1 /root/.minishift/cache/oc/v3.11.0/linux
結果:
oc
確認コマンド:
minishift docker-env
結果:
export DOCKER_TLS_VERIFY="1"
export DOCKER_HOST="tcp://192.168.XX.XX:2376"
export DOCKER_CERT_PATH="/root/.minishift/certs"
環境情報の確認;
確認コマンド:
minishift docker-env
結果:
export DOCKER_TLS_VERIFY="1"
export DOCKER_HOST="tcp://192.168.XX.XX:2376"
export DOCKER_CERT_PATH="/root/.minishift/certs"
ブラウザログインのための情報の確認;
確認コマンド;
oc login -u developer
結果:
Logged into "https://192.168.XX.XXX:8443" as "developer" using existing credentials.
You have one project on this server: "myproject"
Using project "myproject".
この情報を元にブラウザでアクセス可能に。
IPはMinishiftが稼働している仮想サーバー自身のIPではないので注意。
Minishift停止する場合、以下のコマンドを実行する。
minishift stop
余談:
導入終わって3.11であることに気づき本タイトルを修正。。
次にCodeReady(4.2相当)を入れることにする。