type
status
date
slug
summary
tags
category
icon
password
书籍
リソース使用制限
このラボでは、プロジェクトでリソースの使用を制限するためにクォータを使用します。また、リソースにクォータを設定しないことがポッドのスケジューリングに与える影響も確認します。

到達目標

  • プロジェクトのリソースクォータとリソース制限を定義できるようになります。
  • クォータ違反エラーのトラブルシューティングができるようになります。
  • リソースリクエストにクォータが設定されていないことによるスケジューリングの問題をトラブルシュートできるようになります。

事前準備

  • 第7章「OpenShift Container Platformのインストール」に関するすべてのラボが完了しており、OpenShift Container Platformクラスタがマスターと2つのノードで稼働していることを確認してください。もし、まだであれば、マスター、node1、およびnode2ホストをリセットし、以下のコマンドをワークステーションホストで実行して環境が正しく設定されていることを確認します:
ワークステーションVMでターミナルウィンドウを開き、この演習で使用するファイルをダウンロードするために以下のコマンドを実行します:

手順

  1. クラスタ管理者として、リソースリクエストがデフォルトで設定されていない新しいポッドが作成されることを確認するためにプロジェクトを作成します。 このステップのコマンドは、/home/student/DO285/labs/monitor-limit フォルダー内の create-project.sh スクリプトにまとめられています。スクリプトからコマンドをコピーして貼り付けて実行できます。
1.1. ワークステーションホストで、管理者ユーザーとしてOpenShiftにログインします:
1.2. OpenShiftクラスタの2つのノードに割り当てられているリソースを表示します:
表示される値は異なる場合がありますが、この演習では値がどのように変化するかに焦点を当てています。CPU Requests 列の値をメモしておいてください。
1.3. 新しいプロジェクト「resources」を作成します:
1.4. hello-openshift イメージからポッドを作成します:
1.5. hello ポッドが準備完了し、実行中になったら、ポッドが実行されているノードを取得します:
ポッドが準備完了し、実行中になるまで前のコマンドを何度か繰り返す必要があるかもしれません。コマンドで報告されたノード名をメモしておいてください。この情報は次のステップで必要です。
1.6. ポッドが実行されているノードについて、リソースが変更されていないことを確認します。前のステップで取得したノードのみに対して確認を行います:
※ポッドとそのデプロイメント設定に対して oc describe コマンドを使用し、リソースリクエストが設定されていないことを確認することもできます。
1.7. 次のステップに進む前に、「resources」プロジェクトからすべてのリソース(デプロイメント設定、イメージストリーム、ポッド、サービスなど)を削除します。
  1. クラスタ管理者として、プロジェクトにクォータとリソース制限(LimitRange)を追加して、プロジェクト内のポッドにデフォルトのリソースリクエストを設定します。 このステップのコマンドは、/home/student/DO285/labs/monitor-limit フォルダー内の add-quota.sh スクリプトにまとめられています。
2.1. リソース制限(LimitRange)の定義を確認します。この設定は、CPUに対するデフォルトのリソースリクエストのみを指定しています:
Red Hat OpenShift Container Platform 3.9 のドキュメントでは、ファイルを最初から作成するためのサンプルファイルが提供されています。詳しくは、「Limit Rangesの設定」セクションを参照してください。
2.2. プロジェクトにリソース制限(LimitRange)を追加します:
2.3. プロジェクトにデフォルトのCPUリソースリクエストが設定されていることを確認します:
デフォルトのリソースリクエストを設定すると、そのコンピュートリソースに対するデフォルトのリソース制限も設定されることに注意してください。
2.4. 提供されたクォータの定義を確認します。この設定は、最大CPU使用量を設定します:
Red Hat OpenShift Container Platform 3.9 のドキュメントでは、ファイルを最初から作成するためのサンプルファイルが提供されています。詳しくは、「クォータの設定」セクションを参照してください。
2.5. プロジェクトにクォータを追加します:
2.6. プロジェクトにCPUクォータが設定されていることを確認します:
2.7. 次のステップに進む前に、開発者ユーザーにプロジェクト内でデプロイメントを作成する権限を付与します:
  1. 開発者ユーザーとして、プロジェクト内にポッドを作成し、ポッドがプロジェクトのクォータからリソースを消費することを確認します。 このステップのコマンドは、/home/student/DO285/labs/monitor-limit フォルダー内の add-pod.sh スクリプトにまとめられています。
3.1. 開発者ユーザーとしてOpenShiftにログインします:
3.2. 「resources」プロジェクトに切り替えます:
3.3. 開発者ユーザーがプロジェクトのリソース制限とクォータを確認できるが、変更はできないことを確認します:
もし、oc delete コマンドでエラーが発生しなかった場合、管理者ユーザーとしてログインしている可能性があります。その場合、ステップ2に戻って、プロジェクトのリソース制限(LimitRange)とリソースクォータを再作成する必要があります。
oc get limitranges コマンドを使用することでも、同様の出力を得ることができます。
3.4. hello-openshift イメージからポッドを作成します:
もしエラーが発生した場合は、この演習の最初に作成されたポッドとその関連リソースを削除したか確認してください。
3.5. hello ポッドが準備できて実行されているのを待ちます:
注意:ポッドが準備完了し、実行されるまでに、前のコマンドを何回か繰り返す必要がある場合があります。
3.6. hello ポッドがプロジェクトのクォータを消費していることを確認します:
この出力は、ステップ2.6で得られた出力と比較してください。
ポッドがアイドル状態で、HTTPリクエストを処理していないため実際にはCPUを使用していませんが、そのリソースリクエストがプロジェクトのリソースクォータから消費されていることがわかります。
  1. オプション:ノードのリソースが少なくなっているか確認します。 このステップのコマンドは、/home/student/DO285/labs/monitor-limit フォルダー内の check-nodes.sh スクリプトにまとめられています。
4.1. 管理者ユーザーとしてOpenShiftにログインします:
4.2. hello ポッドが実行されているノードを取得します:
ノード名をメモして、次のステップで使用します。
4.3. hello ポッドが実行されているノードにおいて、割り当てられたCPUリクエストがポッドのリソースリクエストと同じ量だけ増加したことを確認します。前のステップで取得したノード名を使用して、実行中のノードのみを確認します:
4.4. ポッドにCPUリソースリクエストが指定されているかを確認するために、oc describe コマンドを使用します:
4.5. 次のステップに進む前に、開発者ユーザーとして再度ログインします:
  1. hello デプロイメント設定をスケールして、プロジェクトのポッドからのリソース使用量を増加させ、それがプロジェクトのクォータから消費されることを確認します。 このステップのコマンドは、/home/student/DO285/labs/monitor-limit フォルダー内の increase-bounded.sh スクリプトにまとめられています。
5.1. hello デプロイメント設定を2レプリカにスケールします:
5.2. 新しいポッドが準備できて実行されるまで待ちます:
ポッドが準備完了し、実行されるまでに、前のコマンドを何回か繰り返す必要がある場合があります。
5.3. 新しいポッドがプロジェクトのクォータに適合していることを確認します:
5.4. hello デプロイメント設定を4レプリカにスケールします。これはプロジェクトのクォータを超えることになります:
5.5. 数分待って、新しいhelloポッドが3つ作成されたことを確認しますが、4番目のポッドは作成されません。4番目のポッドはプロジェクトのクォータを超えてしまうためです:CPUリソースリクエストの合計は1000ミリコアになりますが、クォータはこれを900ミリコアに制限しています:
エラーは表示されません。デプロイメント設定は、4番目のポッドを作成するために必要な設定変更を待っています:
5.6. プロジェクトのイベントリストを取得します。これにより、レプリケーションコントローラーがクォータ違反のために4番目のポッドを作成できなかったことが確認できます:
5.7. 次のステップに進む前に、hello デプロイメント設定を1レプリカにスケールバックします:
5.8. 数秒待って、1つの hello ポッドのみが実行中であることを確認します:
  1. プロジェクトのクォータで制限されないリソースリクエストを hello ポッドに追加します。 このステップのコマンドは、/home/student/DO285/labs/monitor-limit フォルダー内の increase-unbounded.sh スクリプトにまとめられています。
6.1. hello デプロイメント設定に256Miのメモリリクエストを追加します:
6.2. 新しいポッドが準備完了して実行され、古いポッドが削除されるのを待ちます:
新しいポッドが準備完了し、古いポッドが消えるまで前のコマンドを何回か繰り返す必要があるかもしれません。
6.3. 新しいポッドにCPUリクエストに加えてメモリリクエストが追加されていることを確認します:
6.4. メモリリクエストがプロジェクトのクォータにカウントされていないことを確認します:
プロジェクトのクォータの観点では、何も変更されていないことがわかります。
  1. メモリリソースリクエストをクラスタ内のどのノードの容量をも超える値に増やします。 このステップのコマンドは、/home/student/DO285/labs/monitor-limit フォルダー内の increase-toomuch.sh スクリプトにまとめられています。
7.1. hello デプロイメント設定のメモリリクエストを8GiBに変更します。もっとも容量の大きいノードでも4GiBしかメモリがありません:
7.2. 新しいデプロイポッドが作成されますが、新しいポッドを作成できず、ポッドは保留状態になります:
デプロイポッドは新しいポッドが準備完了するための設定変更を長時間待ち続けます。その間、前回のデプロイメントからの hello ポッドは削除されず、アプリケーションユーザーへのサービスの中断を避けるようになっています。
次のエラーが表示されるまで待たないでください。エクササイズを続けてください:
7.3. プロジェクトのイベントリストを取得します。これにより、ポッドをいずれのノードにもスケジュールできなかったという警告が表示されます。メモリ不足が原因です:
クリーンアップ
管理者ユーザーとしてログインし、このエクササイズのために作成したプロジェクトを削除します:
これで、ガイド付きエクササイズは終了です。
 
相关文章
RedHat EX200 本番近い試験問題集
Lazy loaded image
RedHat EX200 本番試験問題集(有料版)
Lazy loaded image
82- 第17章:導入総復習-3:OpenShiftにマルチコンテナデプロイのラボ
Lazy loaded image
81- 第17章:導入総復習-2:docker,KubernetesおよびOpenShiftのラボ
Lazy loaded image
80- 第17章:導入総復習-1:総合レビュー
Lazy loaded image
79- 第16章:OpenShiftの管理と監視-8:ラボ
Lazy loaded image
73- 第16章:OpenShiftの管理と監視-3:OpenShiftアップグレードの説明71- 第16章:OpenShiftの管理と監視-1:リソース要求と制限の説明
Loading...
みなみ
みなみ
一个普通的干饭人🍚
最新发布
35条書面-64問-1
2025年6月13日
TOKYO自習島
2025年6月10日
平成26年秋期 午後問1
2025年6月6日
令和5年秋期 午後問1
2025年6月6日
令和2年秋期 午後問1
2025年6月6日
業務上の規制-87問-1
2025年6月4日
公告

🎉 欢迎访问我的博客 🎉

🙏 感谢您的支持 🙏

📅 本站自 2024年9月1日 建立,致力于分享在 IT・MBA・不动产中介 等领域的学习与实践,并推动 学习会 的自主开展。
📖 博客语言使用比例
🇯🇵 日语 90% 🇨🇳 中文 8% 🇬🇧 英语 2%

📚 主要内容

💻 IT・系统与开发

  • 系统管理:Red Hat 等
  • 容器与编排:Kubernetes、OpenShift
  • 云计算:AWS、IBM Cloud
  • AI 入门:人工智能基础与实践
  • 技术笔记与考证经验

🏠 不动产 × 宅建士

  • 宅建士考试笔记

🎓 MBA 学习笔记

  • 管理学、经济学、财务分析等

🔍 快速查找内容(标签分类)

由于网站目前没有专门的设计,可能会导致查找信息不便。为了更快找到你感兴趣的内容,推荐使用以下标签功能 进行搜索!
📌 定期更新,欢迎常来看看!
📬 有任何建议或想法,也欢迎留言交流!