Red Hat OpenShift Service on AWS (ROSA)を無料で試してみよう

OpenShift Advent Calendar 2023/AWS Containers Advent Calendar 2023の12/14の記事です。

Red Hatの小島です。
2023年12月に、Managed OpenShiftサービスの1つであるROSAを無料で試せるROSA Hands-on Experienceというサービスがリリースされました。本記事では、同時期に提供開始しましたROSA Hosted Control Plane (HCP)の特徴と共に、ROSA Hands-on Experienceの概要をご紹介します。

ROSA Hosted Control Plane (HCP)

ROSA HCPは、OpenShift 4.14のベアメタルおよびOpenShift Virtualizationで正式にリリースされたHosted Control Planeが取り入れられたROSAです。ROSA HCPでは、OpenShiftのコントロールプレーンがRed Hat SREチームのAWSアカウントに作成されるOpenShiftクラスターのPodとしてデプロイされるようになり、ユーザーのAWSアカウントにはワーカーノードのみデプロイされます。これによって、ユーザーにはコントロールプレーンが隠蔽されてワーカーノードしか見えなくなる、というシンプルな構成になりました。

ROSA HCPは、コントロールプレーン/インフラノード/ワーカーノードが全てユーザーのAWSアカウントに作成される従来のROSA(ROSA Classicと定義しています)に比べると使い勝手がかなり向上しており、次のような特徴を持つため、Kubernetesインフラ観点ではAmazon EKSなどのManaged Kubernetesサービスに近いものとなっています。

  • 最小構成がワーカーノード2台構成 (SingleAZ/MultiAZ共通。デフォルトはm5.xlarge(4vCPU/RAM16GiB) x2)
  • クラスターデプロイ時間の短縮 (ROSA Classic: 40分~。ROSA HCP: 25分~)
  • ワーカーノードをAZ単位で1台から追加可能 (SingleAZ/MultiAZ共通)
  • ワーカーノード追加時のバージョン選択が可能
  • コントロールプレーンの更新時間の短縮 (ROSA Classic: 90分ほど。ROSA HCP: 15分ほど)
  • コントロールプレーンとワーカーノードの更新の分離
  • 一部のワーカーノードのみを更新するという部分更新の対応

これらのインフラ的な特徴に加えて、

  • コンテナアプリケーションの開発/運用を支援するための様々な機能
    • アプリケーションのトポロジー/モニタリング/ロギングを利用するためのWebコンソール
    • Visual Studio Code的なWeb IDE (AI搭載生産性向上ツールであるAmazon CodeWhispererプラグインも利用可能)
    • 様々なフォーマットの入力に対応した、アプリケーションビルド/デプロイの自動化
      • Gitリポジトリのソースコード/Dockerfile, コンテナイメージ, JARファイルなど
    • アプリケーションのベースOSとなるRHELのサポート
    • Red Hatのパートナーエコシステムによる、様々なミドルウェアのサポート (Kubernetes Operator含む)
  • 上記機能をマルチテナント的に利用するための、外部認証プロバイダーとの連携
  • エンタープライズシステムとして利用するための、Kubernetes基盤のセキュリティ強化 (コンテナアプリでのroot利用禁止など)

といったOpenShiftならではの特徴も備えているため、エンタープライズ用途にパッケージングされたManaged KubernetesサービスをAWS上で利用したい場合に、ROSA HCPが適したサービスであると言えます。

ROSA HCPの料金情報

ROSA HCPを利用する場合、次の3つの合計金額がAWSからユーザーに請求されます。Red Hatからの請求料金はありません。

  • ROSA HCPのクラスター料金 (1クラスター辺りの料金。0.25USD/cluster/時間)
  • ワーカーノードのサービス料金 (0.171USD/4vCPU/時間)
  • AWSリソースの利用料金 (ワーカーノードのEC2インスタンス, EBS, S3, NAT Gatewayなど)

デフォルトはm5.xlarge(4vCPU/RAM16GiB)インスタンスの2台構成となりますので、AWS料金情報に基づいて、オハイオリージョンでのSingleAZ2台構成の1時間辺りの利用料金を計算してみると、大体の目安は$1.3/時間~となります。主なAWSサービスの料金内訳は次のようになります。計算の簡単化のために、料金内訳からはS3やデータ転送などの利用料金を除いています。

  • クラスター料金
    • $0.25 (0.25(USD/cluster) x 1(cluster))
  • ワーカーノードのサービス料金
    • $0.342 (0.171(USD/4vCPU) x 2(4vCPU))
  • ワーカーノードのEC2/EBS(300GiB x2)の利用料金
    • $0.467 (0.192(USD) x 2 + 0.1(USD/GB/month) x 300(GB) / 720(時間/month) x 2)
  • NAT Gatewayの利用料金 (プライベートサブネット1つに付き1つ作成されます)
    • $0.045
  • NLBの利用料金
    • $0.0225

コントロールプレーンとインフラノードも料金請求の対象であった従来のROSA Classicと比較すると、かなりスリム化した料金となっています。なお、ROSA HCPでは、インフラノードとしてみなされるワーカーノードはありません。ルーター/レジストリ/モニタリングなどのコンポーネントは全てワーカーノード上で稼働し、全てのワーカーノードの利用料金が請求されることになります。

ROSA Hands-on Experience

本題です。ROSA Hands-on Experienceは、Red Hatのデモプラットフォームを利用して、ユーザーが無料でROSA HCPクラスターにアクセスして、ハンズオンができるサービスです。Red Hatアカウントでログインして「Request experience」をクリックすると、大体数十秒でデモプラットフォーム上のROSA HCPクラスターにアクセスできるようになっています。このサービスを利用する場合、AWSアカウントをご用意いただく必要はありません。

また、この画面からROSAコミュニテイのSlackチャネル(英語)に参加できるだけでなく、ハンズオン中に質問がある場合、画面右下のRed Hatロゴをクリックすることで、Red Hatのカスタマーサクセスチームと英語チャットができるようになっています。

デモプラットフォームにアクセスすると、次のような画面が表示されます。ユーザーは画面左半分のコンテンツに表示されるコマンドを、画面右半分のTerminalにコピペして、ROSA HCPクラスターを操作していく流れとなります。また、ROSA HCPクラスターの管理者アカウントで、Webコンソールにログインして利用できるようにもなっています。これらのコンテンツは全て英語となっているため、必要に応じてWebブラウザの機械翻訳機能を使ってください。

2023年12月時点での、ROSA Hands-on Experienceのコンテンツは下記の16項目です。ROSA特有の項目だけ学習したい場合は、1. Explore the ROSA environmentから6. Configure Red Hat SSO IDP for ROSAまでだけを実行してもいいでしょう。

・ROSA特有の内容を含むコンテンツ

  1. Explore the ROSA environment
  2. Upgrade your ROSA cluster
  3. Managing Worker Nodes
  4. Autoscale your ROSA Cluster
  5. Labeling your Worker Nodes
  6. Configure Red Hat SSO IDP for ROSA

・ROSAだけでなく、Self-Managed OpenShiftでも実行可能なコンテンツ

  1. Configure Red Hat OpenShift Logging with AWS Cloudwatch
  2. Deploy an Application with AWS Database
  3. Deploy an Application with Red Hat OpenShift GitOps
  4. Secure your applications with Network Policies
  5. Make your application resilient
  6. Service Mesh Introduction
  7. Install Service Mesh Operator
  8. Deploy Service Mesh Control Plane
  9. Deploy a Service Mesh example application
  10. Configure and observe Service Mesh traffic

なお、ROSA Hands-on Experienceについては、8時間/1回の利用を3回まで(延べ24時間)という制限があります。4回目以降の利用はできませんので、ご注意ください。

ROSA HCPワークショップ日本語コンテンツ

上記を翻訳したコンテンツではありませんが、主にROSA HCP特有の項目にフォーカスして、ROSA HCPクラスターでのアプリケーション開発/運用の基礎を体感していただくための日本語コンテンツ(下図の「ROSA Lab」と記載しているもの)も別途提供しています。この日本語コンテンツを参考にしながら、ROSA Hands-on Experienceで払い出されたROSA HCPクラスターでハンズオンを実施することもできます。ただし、その場合は次の制限がありますのでご注意ください。

  • この日本語コンテンツは、Red Hatのカスタマーサクセスチームの管理下にないため、チャットやSlackでの質問はできません。
  • ROSA HCPクラスターの作成手順は実行できません。
  • ROSA Hands-on ExperienceではAWS IAMユーザーを払い出さないため、この日本語コンテンツで紹介しているCloudWatchでのロギング設定/確認手順は実行できません。
  • ワーカーノードについては、既存のMachinepool(ROSAでワーカーノードを扱う単位)についてのみ編集(ワーカーノードの追加/削除/オートスケール化/更新など)できます。そのため、新規Machinepoolの追加や削除は実行できません。
  • 最新版のROSA HCPクラスターが払い出されている場合、ROSA HCPクラスターの更新手順は実行できません。

ROSA HCPワークショップ日本語コンテンツは、下記のリンクからご参照ください。

rh-open.github.io

このワークショップ日本語コンテンツについては、ご要望次第で個社向けにも開催しています。ご興味がありましたら、Red Hatの担当営業や下記の「購買専用のお問い合わせ」フォーム(「追加情報」記入欄に「赤帽ブログで見た個社向けROSA HCPワークショップについての詳細を希望」などをご記入ください)からお問い合わせください。

www.redhat.com

* 各記事は著者の見解によるものでありその所属組織を代表する公式なものではありません。その内容については非公式見解を含みます。