Cloud製品を担当しているソリューションアーキテクトの輿水です。
OpenShift Advent Calendar 2022の12/22の記事です。
以前 All learning | Red Hat Developerというサイトにハンズオン(英語)があることをご紹介しましたが、その一部を日本語に翻訳し、手軽に試せる自己学習型OpenShiftハンズオン環境として提供し始めました。非公式ではありますが、使っているプラットフォームとコンテンツは公式と同じですので、同等の内容を学ぶことができます。
ハンズオンを行うために、ご用意いただくのはブラウザ(Firefox,Chrome)のみです。指定のURLにアクセスしコースをlaunchすると、環境がデプロイされて、OpenShiftの演習とターミナルがセットされた環境が使用可能になります。コースをlaunchするためにアカウントを作る必要はありません。このハンズオンの長所と短所は以下の通りで、Developer Sandbox for Red Hat OpenShiftのように同じ環境を長期間継続して使えるものではなく、単発のものです。しかしながら、何度でも使えるので1回目はただただコピペで進む、2回目は自分でコマンド実行など繰り返し学習することができます。
長所
- ブラウザ(Firefox,Chrome)があれば試せる
- アカウント作成不要
- コマンドはコピー&ペースト可能
- admin権限あり
- 何度でも実施可能
短所
- 都度デプロイするので、環境が準備されるまで多少待つ必要がある(10〜30分程度)
- 環境は一定時間が経過すると自動的に削除される
- 削除された後、再度デプロイしても、それまでに行った操作は保存されていない(新しい環境になる)
学習コースの内容は、まだほとんどOpenShiftを触ったことがない初学者向けで、CLIやGUIを利用してOpenShiftの基本的な操作を手順通りに実行してゆくものです。
それでは、現在用意されているコース内容を簡単に説明します。各コースへのリンクは下記のgithubにあります。
OpenShiftハンズオンへようこそ github.com
基本的な操作とアプリケーションのデプロイ方法
OpenShiftクラスタにOpenShift Command Line Tool(ocコマンド)とWebコンソールでログインするところから始め、CLIやGUIでのプロジェクトの作成、イメージやソースを利用してアプリケーションをデプロイする方法を学びます。デプロイされたアプリケーションの外部公開を行って実際にアプリケーションにアクセスします。また、ひとつのプロジェクトを複数のユーザーで共同利用する方法も実施します。
Login to an OpenShift cluster (Japanese)
- 概要:OpenShiftクラスターにログインしてユーザーの操作を行います
- OpenShiftクラスタのWebコンソールURLを調べてアクセス
- OpenShift Command Line Tool(ocコマンド)の利用
- OpenShiftの新規ユーザー作成と権限付与
- ユーザーの切替
Getting Started with OpenShift for Developers (Japanese)
- 概要:OpenShift環境で既存のイメージを利用してアプリケーションをデプロイします
- ocコマンドでOpenShiftクラスタにアクセス
- WebコンソールでOpenShiftクラスタにアクセス
- 既存のイメージを利用してアプリケーションをデプロイ
- デプロイしたアプリケーションをスケール
- OpenShift Routeを利用して外部に公開されたURLにアクセス
Deploying Applications From Source (Japanese)
- 概要:OpenShift環境でソースをビルドしてアプリケーションをデプロイします
- ocコマンドを利用してプロジェクトを作成、Webコンソールで確認
- Webコンソールを利用してソースからblogアプリをビルド&デプロイ
- Webコンソールでアプリのログを確認
- 外部に公開されたURLにアクセスしアプリの確認
- アプリの削除
- ocコマンドでアプリを再度デプロイ
- ビルドトリガーの設定
GitOps
Gitリポジトリに置かれたコードをSingle Source of Truthとみなし、コードとインフラを常に同じ状態に保つ運用のベストプラクティスをGitOpsと呼びます。Cloud NativeなGitOps継続的デリバリーツールArgo CDを利用して、OpenShiftでのどのように動作するかを体験します。また、Kubernetesのマニフェスト管理ツールであるKustomizeやKubernetesアプリケーションのパッケージマネージャーであるHelmと統合した場合の動作を体験できます。
Getting Started with ArgoCD and OpenShift GitOps Operator (Japanese)
- 概要:OpenShiftのGitOpsを体験します
- OpenShiftのGitOpsについて
- OpenShift GitOps Operatorのインストール
- Argo CDインスタンスにCLIとGUIを用いて接続する
- サンプルアプリケーションをデプロイ
- Gitで変更を行った内容がアプリに反映されることを確認
Working with Kustomize (Japanese)/Working with Helm (Japanese)
- 概要:Argo CDとKustomize / Helmの統合
- Kustomize / Helmについて
- Kustomizedアプリケーションをデプロイする
- Helmチャートをデプロイする
Pipeline
OpenShift Pipelines はTektonを使用してパイプラインを構築するための、Cloud Nativeな継続的CI/CDソリューションです。PVを持つbackendとfrontendからなる投票アプリケーションのデプロイを通して、OpenShiftでのどのように動作するかを体験します。
Getting Started with OpenShift Pipelines (Japanese)
- 概要:OpenShift Pipelinesを使用してアプリケーションのデプロイを自動化する方法
- OpenShift Pipelines Operatorをインストール
- サンプルTaskを作成
- Taskリソース定義
- Tekton Pipelineを作成
- frontend と backend からなる投票アプリケーションをデプロイ
Serverless
Getting Started with OpenShift Serverless (Japanese)
- 概要:Cloud Nativeな開発モデルを提供するOpenShift Serverlessの基本的な使用方法
- OpenShift Serverlessのserviceをデプロイ
- 複数のrevisionsをデプロイ
- Serverless serviceの基本コンポーネントについて
- Serverlessがscale-to-zeroを可能にする方法
- canary および blue-green デプロイメント
- knative client の利用
Playground
Playgrounds OpenShift 4.11 (Japanese)
- 概要:決まった演習項目はなく、自由に試すための環境
現時点では、コース内容は初学者向けで「ざっくり体験する」レベルのものが多いですが、今後、様々なコースを拡充してゆく予定です。また、定期的に「もくもく会」と称して、あらかじめデプロイした環境をpoolしておき、待ち時間なしにコースが始められ、かつQ&A可能な会を行っております。connpassでお知らせしておりますので、お時間が合えばご参加ください(※12/22時点では次の開催のご案内はありません)
Red Hat製品を無料で試してみよう
この自己学習型OpenShiftハンズオン環境意外にも、Red Hat製品を無料でトライできる方法があり、次のblogにまとまってますので、ぜひ、こちらも参照ください。
お知らせ
2023/01/27に「OpenShift.Run 2023 冬の陣」を開催します。
OpenShift.Runは、OpenShiftやKubernetes、クラウドネイティブテクノロジーに関わる知見や運用ノウハウなどを共有し合う話です。と同時に、お祭り感覚で飲みながらラフに楽しんで頂く場です。connpassで参加募集始まりました。ぜひご参加ください。登壇者も募集してます。