目的
OpenShift Local(CRC) を動かして OpenShift 環境をためします
インストール
インストールは以下を参考にします。CentOS 9に導入しました。
おおまかにやったことは
- CRCのダウンロード
- crc 実行ファイルの ~/binへのmv (~/binのPATHへの追加)
- crc config set preset openshift (デフォルトなので必要無し)
- crc setup
- crc start
- pull secret を取得
pull secret は
https://cloud.redhat.com/openshift/install/pull-secret
から取得します。事前にとっておいてもいいですが、crc start 実行中に入力をもとめられたときでも問題ありません。
OpenShiftにログイン
OpenShift Webコンソール、oc を使ってログインします。先に紹介したリンク で ”3.4.2. OpenShift CLIによるOpenShiftクラスタへのアクセス” に詳細があります。
oc コマンドは以下から openshift-client-linux-4.13.14.tar.gz をダウンロードしました。
https://mirror.openshift.com/pub/openshift-v4/clients/ocp/4.13.14/
実行するのは
- ocのダウンロード
- 解凍した kubectl oc の ~/bin への mv
- oc login -u kubeadmin / oc login -u developer
パスワードをつかわなくてもログインできましたが、パスワードは crc startが完了したときに出力されてます。
トラブルシューティング ハンズオン
OpenShiftの操作をするのにハンズオンの課題を用意しました。githubからクローンして書かれている課題をときつつOpenShiftの構成方法や使い方を覚えていきます。
git clone https://github.com/pdprof/openshift-liberty.git
cd openshift-liberty
レポジトリにはディレクトリがあり、それぞれが何のハンズオンかを示しています。
- htpasswd (ユーザー管理など)
- ingress (ネットワーク)
- resource (リソース制限)
- route (SSLネットワーク)
- schedule (PODの割り当て)
ハンズオン内容の確認
ハンズオンを始めるときには、kubeadminでログオンします。各ディレクトリにREADME.mdがあるので、それをみて課題を確認します。
ディレクトリ中には start.sh が用意されているので、実行するこで環境の準備ができます。課題が終わったら finish.sh を実行してリソースの削除などを実行してクリーンアップします。
oc login -u kubeadmin
./start.sh
./finish.sh
kubeadmin ユーザーを無効にする手順もあります。環境を削除して作り直してもよい前提でやるか、別の管理ユーザーが有効であることをたしかめた上で実行します。方法を知っておくだけでも良いです。
回答の準備はありませんが、start.shの中身や構成時に使用している yamlファイルなどがヒントになります。
トラブルシューティング用のコマンドなど
よく使うコマンド(状況確認、構成時の説明確認)などをメモしておきます。
oc get all
oc get node
oc get node -o wide
oc describe pod
oc exec -it <pod_name> bash
oc create dc --help
oc explain oauth
oc explain oauth.spec
oc explain oauth.spec.templates
oc explain limitrange
oc explain limitrange.spec
yamlのもとにするテンプレートはOpenShift Consoleを使ってリソースを作成するときなどに表示されます。コマンドだけでなくブラウザを使用するのも有効です。
まとめ
OpenShift Local(CRC)を使ってOpenLibertyを動かして、操作方法を学びました。