こんにちはサイオステクノロジーの前田です。
OpenShiftの導入や設定したときに、webコンソールを使うのか、クライアントを独自用意するのか悩まれる場合があります。OpenShiftのクライアントは6443番ポートを使用するため、新たなネットワーク設定と新しくクライアントをインストールする必要があります。デフォルトでインストールされていない拡張機能の一つとしてwebterminalがあります。本記事ではその導入と利用方法について記載します。
OpenShiftのwebterminal
OpenShiftのweb GUIを利用したCLI操作として、下記があります。
項番 | 操作種類 | ユーザー | 利用目的等 | インストール方法 |
1 | podの操作 | OpenShift利用者すべて | コンテナの簡易状態把握(コンテナのシェル操作相当) | 初期設定済 |
2 | nodeの操作 | OpenShift管理者 | nodeに状態把握(nodeのsshした後のシェル操作と同等) | 初期設定済 |
3 | webterminalの操作 | OpenShift利用者すべて |
OpenShiftのツール作業、ocコマンド等のcli操作 |
web terminal Operatorインストール |
4 | CodeReadyWorkspacesの操作 | OpenShiftを利用した開発者 | ブラウザ版VScode操作と同等 | CodeReady Workspaces Operatorのインストール |
1, podの操作
webコンソールの中でデプロイ状況を確認します。podのログやターミナルを利用して、コンテナの状況を確認します。いろいろな人が利用し、コンテナ環境に慣れていない人が一番利用するのが、webコンソールになります。項目が多いので慣れるまで大変ですが階層が深いわけではないので、1時間も触れば苦労なく操作できます。
2,nodeの操作
podの操作とほぼ変わりませんが、ホストに直接アクセスして操作します。OpenShiftは、sshでホストノードにアクセスして設定変更しないので利用することは少ないです。しかしsshでアクセスを行い、nodeの障害調査(toolboxコマンド利用)やOCPのBackup操作をしたい時等にwebコンソールのcluster-admin権限を持つユーザであれば作業できます。
3.web terminalの操作
OpenShiftに慣れてきたり、kubernetes操作が慣れている場合はCLIの利用をします。OpenShiftのユーザ作成前の権限追加等で利用したり、特殊コマンドを利用する場合に利用します。
4. CodeReadyWorkspacesの操作
OpenShiftの拡張機能のCodeReadyWorkspacesを利用すれば、webブラウザでVScodeのように操作可能です。OpenShiftの特徴として便利な開発補助機能がたくさんあることです。端末ごとの初期設定や導入や端末のセキュリティについての考慮が少し減るでしょう。
OpenShift webterminalの概要
本記事ではwebterminalを深掘りしていきます。 OpenShiftで一番利用するコマンドはkubectlとほぼ同一のocコマンドになります。kubernetesの操作を利用するクライアントはいろいろなものがあります。OpenShiftの管理コンソールにログインしたユーザの認証情報を自動的に利用し、oc、kubectl、odo、kn、tkn、helm、kubens、subctl および kubectx などのクラスターと対話するための一般的な CLI ツールと共に事前にインストールされます。
簡易説明
- oc : OpenShift のCLI,kubectlと類似
- kubectl: KubernetesのCLI,アプリケーションのデプロイやクラスターのリソース管理、検査およびログの表示
- odo: アプリケーションを OpenShift Container Platform および Kubernetes で作成するためのツール
- kn: サーバレス(Knative)アプリケーションを作成
- tkn: OpenShift Pipeline CLI でCICDで利用するインターフェイス
- helm: デプロイツール、kubernetesを利用する場合のyamlの壁問題を解消するツール
- kubens: 名前空間を簡単に切り替えることができるツール
Kubernetes初心者としては、kubectl(oc)とhelmさえ知っておけば十分だと考えます。他のツールは利用するときに覚えましょう。
参考画像
cluster-admin権限時の画像
admin権限(プロジェクト内部操作のみ可能な権限)時の画像
導入手順
webterminalは初期構築後にOperatorとしてインストールする必要があります。GUIのみで作業完了することができるので下記に記載します。
Operatorのインストール
webterminal利用
画面右上のwebterminalコマンドを押すとコマンドラインターミナルが表示されます。
下記コマンドを事項して動作を確認してみてください。
oc get node
machineconfigpools.machineconfiguration.openshift.io
terminalに表示されます。
最後に
kubernetesの運用を始める時には覚えることが多く不慣れでいろいろ疲れてしまいます。少しでも作業負担を減らすためにGUIを利用し、個々の初期設定がいらないwebterminal等を利用して楽(効率化)をしてみてはどうでしょうか?CLI操作を普段しない方がlinuxのコマンドを覚える必要が減りますし、teraterm等に慣れている方も簡易操作ができるので調査のたびに端末までsshアクセスする等の手間が減ります。
本記事がOpenShiftやkubernetesの運用に悩まれている方の助けになれることを望みます。