2022年5月11日水曜日

Windows 11 で Eclipse Che on Minikube on Hyper-V する

minikube の docker driver を使って Windows 11 上に minikube を構築する。

前提

  • OS: Windows 11 Pro 21H2 ビルド 22000.613

minikube インストール

winget install minikube

minikube 起動

管理者権限のターミナルで以下コマンドを実行。

ingress アドオンを有効にしながら minikube を起動する。

minikube start --cpus=4 --memory=16G --addons ingress --driver=hyperv --hyperv-virtual-switch=public

chectl インストール

理由はないが何となく next をインストールした。

$CHANNEL="next"; Set-ExecutionPolicy Bypass -Scope Process -Force; iex ((New-Object System.Net.WebClient).DownloadString('https://www.eclipse.org/che/chectl/win/'))

Eclipse Che のインストール

管理者権限のターミナルで以下コマンドを実行。

chectl server:deploy --platform=minikube

アクセス URL の再確認

chectl server:status

ログインユーザーの更新

既存情報の取得

kubectl get cm dex -n dex -o yaml > dex.yaml

ユーザー情報の修正

「既存情報の取得」で作成した dex.yaml を修正。

  1. ユーザー情報更新
    • data.staticPasswords を更新する
      • email: 適当に設定、ログイン時に使用する
      • username: 適当に設定、ログイン後、自身の情報としてダッシュボードに表示される
      • userID: 一意の ID を設定
      • hash: htpasswd コマンドでパスワードハッシュを生成してそれを設定
        • 例: echo "PASSWORD_STRING" | htpasswd -BinC 10 DUMMY_USER_NAME | cut -d: -f2
  2. 不要パラメーターの削除
    • 以下パラメーターを削除
      • metadata.resourceVersion
      • metadata.uid
      • metadata.creationTimestamp

本番環境では OIDC できちんとユーザー管理すべきだそうです。

修正内容を適用してデプロイメント再起動

kubectl apply -f ./dex.yaml -n dex
kubectl rollout restart deployment/dex -n dex

後始末

Eclipse Che のアンインストール

管理者権限のターミナルで以下コマンドを実行。

chectl server:delete -y --delete-namespace

minikube の削除

管理者権限のターミナルで以下コマンドを実行。

minikube delete

minikube の停止と再開

停止

minikube stop

再開

minikube start --extra-config=kubelet.cgroup-driver=systemd

参考資料

0 件のコメント:

コメントを投稿