type
Post
status
Published
date
Feb 20, 2025
slug
summary
tags
DO285
Redhat
EX280
学習ノート
category
民間資格勉強
icon
password
ワークショップインストール後のタスクの完了
この演習では、OpenShift Container Platform クラスターのインストール後の基本機能をテストします。
成果物 次のことができるようになります:
  • 管理者ユーザーをクラスター管理者として設定する。
  • OpenShift クライアント(oc)を使用してクラスターのステータスを取得する。
  • OpenShift 上でシンプルなアプリケーションをビルドしてデプロイし、クラスターの機能をテストする。
始める前に 「インストール準備」と「Red Hat OpenShift Container Platform のインストール」のガイド付き演習を完了している必要があります。まだ完了していない場合は、masternode1node2 ホストをリセットし、次のコマンドをワークステーションホストで実行してください:
このガイド付き演習に必要なファイルをダウンロードし、masternode1node2 ホストが起動していることを確認するには、ターミナルを開き、次のコマンドを実行します:
  1. ワークステーションから、admin ユーザーとして OpenShift クラスターにログインします。 1.1. ワークステーションから oc コマンドを使用して、admin ユーザーとしてクラスターにログインします。
ログイン成功。
「プロジェクトがありません。新しいプロジェクトを作成するには、oc new-project <projectname> を実行してください。」
ようこそ! 'oc help' を参照して、始めましょう。
  • -insecure-skip-tls-verify=true オプションは、インストール時に生成された自己署名証明書を受け入れます。

1.2. OpenShift ノードのステータスを取得してみる

エラー発生:
このコマンドは失敗することが想定されています。理由は、admin ユーザーが cluster-admin ロールに関連付けられていないためです。

2. admin ユーザーに cluster-admin ロールを割り当てる

2.1. ワークステーションから master ホストに SSH でログインし、sudo を使って root ユーザーになります。

2.2. system:admin ユーザーが OpenShift API に認証されていることを確認します。

2.3. admin ユーザーに cluster-admin ロールを割り当てます。

2.4. master ホストからログアウトします。

これで、admin ユーザーを使用してワークステーションマシンからリモートでクラスター管理タスクを実行できるようになります。

3. oc get コマンドを使用して OpenShift クラスターの基本的な動作確認を行う

3.1. admin ユーザーとして OpenShift クラスターにログインします。(プロンプトが表示されたら、パスワードに redhat を入力)

これで、admin ユーザーとして OpenShift クラスターの管理操作ができるようになります。

3.2. oc get nodes コマンドを使用して、すべてのノードが Ready 状態であることを確認する

node1node2 のロールが compute になっていることから、インベントリファイルに定義されたノードのラベルが正しく適用されていることが確認できます。

3.3. oc get pods コマンドを使用して、内部レジストリとルーターポッドが Running 状態であることを確認する

すべての docker-registryregistry-consolerouter のポッドが Running になっていることを確認します。

4. クラスターの機能をテストするために、developer ユーザーとして S2I ビルドを実行する

4.1. developer ユーザーとして OpenShift クラスターにログインする

パスワードとして redhat を入力します。
これで、developer ユーザーとしてクラスターにログインできました。

4.2. smoke-test という名前の新しいプロジェクトを作成する

smoke-test プロジェクトが作成され、現在のプロジェクトとして設定されました。

4.3. S2Iビルドを実行し、PHP 5.6の php-helloworld アプリケーションをデプロイする

アプリケーションのソースコードは http://services.lab.example.com/php-helloworld にあります。
💡 --name hello オプションにより、アプリケーションのリソース名が phphelloworld ではなく hello に短縮され、デプロイ後のFQDN(完全修飾ドメイン名)も短くなります。

4.4. oc logs -f コマンドでビルドプロセスを監視する

このコマンドは即座に完了せず、ビルドプロセスが完了するまで数秒間実行されます。
出力の例:
💡 この出力から、OpenShift が以下の処理を正しく実行できていることがわかります:
  • ソースコードのクローン作成
  • アプリケーションのビルド
  • 内部レジストリへのイメージのプッシュ

4.5. hello サービスをルートとして公開する

💡 oc expose コマンドを使うと、外部アクセス用のルートが作成されます。

4.6. 公開された hello サービスのルートを確認する

💡 hello-smoke-test.apps.lab.example.com が、外部からアクセスできるアプリケーションのURLです。

まとめ

方法
OpenShift クラスター内部アクセス
クラスター外部(社内ネットワーク)アクセス
インターネットアクセス
ClusterIP
アクセス可能 (curl http://hello:8080)
アクセス不可
アクセス不可
Route
アクセス可能 (curl http://hello:8080)
アクセス可能 (curl http://hello-smoke-test.apps.lab.example.com)
🌐 OpenShift Router の設定による
LoadBalancer
アクセス可能
アクセス可能
🌐 パブリックIPの有無による (curl http://203.0.113.100:8080)
NodePort
アクセス可能
アクセス可能 (curl http://<node-ip>:30080)
通常、直接公開されない

結論

  • ClusterIP は OpenShift クラスター内部 でのみアクセス可能。
  • Route を使うとクラスター外部(社内ネットワークなど)からアクセスできるが、インターネットからアクセスできるかどうかは OpenShift Router の設定次第
  • NodePort は OpenShift の ノードが属するネットワーク(通常は社内ネットワーク)でアクセス可能 だが、通常インターネットには公開されない。
  • LoadBalancerパブリックIPが割り当てられればインターネットからアクセス可能
OpenShift Router を外部に公開する方法は 2 つ あります。
方法
適用環境
仕組み
適用ケース
1. LoadBalancer(推奨)
クラウド環境(AWS, GCP, Azure など)
OpenShift Router の Service タイプを LoadBalancer に変更し、クラウドプロバイダーが自動でパブリック IP を割り当てる
クラウド環境向け、運用が簡単
2. NodePort(手動設定)
オンプレミス環境(物理サーバー)や一部のクラウド環境
OpenShift Router の Service タイプを NodePort に変更し、手動でノードのポートを公開
非クラウド環境向け、ファイアウォール設定が必要
 

4.7. curl コマンドを使用して、アプリケーションが正しく応答することを確認する

アプリケーションが正しくデプロイされ、動作していることが確認できました!

これで、OpenShift の基本的なインストール確認およびデプロイ手順のガイド付き演習が完了です。

要約

この章では、以下の内容を学びました:
  • Ansible Playbook を使用して OpenShift Container Platform のインストール環境を準備する方法
  • 適切なホストグループ、グループ変数、およびホスト変数を設定した OpenShift の高度なインストール用インベントリファイルの構成方法
  • OpenShift の高度なインストール用 Ansible Playbook を使用して、マスターおよびノードサーバーを設定する方法
  • ソースコードからアプリケーションを作成し、OpenShift にデプロイすることで、動作中の OpenShift クラスターを検証する方法
 
27- 第7章:OpenShiftインストール-5:インストール後タスク実行の説明29- 第8章:OpenShift ネットワークの概念を説明・探索する-1:OpenShift-SDN実装の説明
Loading...
Catalog
0%
minami
minami
みなみの成長 🐝
Announcement

🎉 ブログへようこそ 🎉

名前: みなみ一人会社
性別:
国籍: China 🇨🇳
政治スタンス: 民主主義支持者
完全独学で基本情報技術者をはじめ、32個の資格を仕事をしながら取得。
現在はIT会社で技術担当として働きながら、ブログ執筆や学習支援にも取り組んでいます。
独学で合格できる学習法や勉強法、試験対策を発信中!

📚 発信内容

  • 💻 IT・システム開発
  • 🏠 不動産 × 宅建士
  • 🎓 MBA 学習記録

 
Catalog
0%