olares-cluster について
olares-cluster は、Olares の Kubernetes ランタイムオブジェクトを確認・操作するスキルです。リソースやログの確認、ワークロード管理が必要なユーザー向けで、根本原因の診断は olares-doctor が担います。
主な機能
- 01Pod、ワークロード、アプリの確認
- 02YAML、イベント、ログの取得
- 03コンテナ内でのコマンド実行
- 04ワークロード、ジョブ、CronJob の管理
- 05リソースとログ状態のポーリング
活用シーン
- 01アプリの Pod の稼働状況を確認
- 02調査中にコンテナログを確認
- 03ワークロードの再起動やスケール変更
- 04CronJob の一時停止やジョブの再実行
インストール
コマンドをコピーしてターミナルで実行します。
npx skills add https:/ / github.com/ beclab/ olares --skill olares-clusterインストール後、Claude Code で/olares-clusterを入力して読み込まれたか確認します。
同梱ファイル
SKILL.md と一緒にインストールされる参考資料やスクリプト。
references/olares-cluster-application.mdolares-cluster-cronjob.mdolares-cluster-exec.mdolares-cluster-job.mdolares-cluster-middleware.mdolares-cluster-pod.mdolares-cluster-workload.md詳細
cluster(ユーザーごとの K8s ビュー)
共通の入口: スイート内のルーティング、アクティブなプロファイルの選択、プラットフォームのエントリーポイント、認証の続行/停止ゲートについては、
../olares-shared/SKILL.mdを読み込みます。ログイン、プロファイルの切り替え、トークンの保存、または認証の復旧が実際に必要な場合に限り、同ファイルの認証リファレンスを読み込みます。
アプリの名前空間、アプリケーションスペース、名前空間をまたぐ DNS、またはシステムミドルウェアがタスクに関係する場合は、共通のプラットフォームモデルを読み込みます。構文を確認するには olares-cli cluster <noun> <verb> --help を使用します。
使用する場面
- K8s のランタイムオブジェクト、YAML、イベント、ログ、または ID コンテキストを調査します。
- コンテナ内で単発のコマンドを実行します。
- ワークロードのスケール、再起動、停止、開始、削除を行います。cronjob の一時停止/再開や、ジョブの再実行も行います。
- Pod、ワークロード、アプリケーション、またはログの状態を監視します。
アプリが壊れている理由の診断(インストールの停止、クラッシュループ、
runningなのにアクセスできない、イメージをプルできない、リソース不足)は../olares-doctor/SKILL.mdが担当します。ここでは、これらのclusterコマンドを症状から根本原因へと導く形で組み合わせます。clusterは、生のランタイムビューであり、K8s オブジェクトを変更する場所です。
workload stop/start はコントローラーのレプリカ数を変更します。Market のライフサイクル行は更新しません。アプリレベルのライフサイクルには market stop/resume を使用します。
クイックガイド
| タスク | 読むもの | 最初のコマンド |
|---|---|---|
| アプリの Pod が起動しているか確認する | Pod 操作 | olares-cli cluster pod list -n <namespace> -o json を実行し、各 .status.phase を確認します |
| コンテナのログを読む | Pod 操作 | olares-cli cluster pod logs <pod> -n <namespace> |
| このプロファイルで何が見えるかを確認する | このファイル | olares-cli cluster context -o json |
| ワークロードを再起動する | ワークロード操作 | olares-cli cluster workload restart <name> -n <namespace> |
ID とサーバーの決定に関する原則(横断的な事項)
- ID はアクティブなプロファイルです。呼び出しごとにプロファイルを上書きすることはできません。
- 可視性と認可はサーバーが決定します。
cluster contextは ID の表示であり、権限の事前確認ではありません。 - 403 は確定した結果として扱います。例外は
execで、その名前空間の安全ゲートについてはリファレンスで説明しています。
動詞一覧
| 名詞 | 動詞 | 該当する場合に読むもの |
|---|---|---|
context | (単一の動詞) | アクティブなプロファイルの ControlHub 側の ID とスコープ。下記の名詞のいずれかが空の結果を返す前に、このツリー全体で何が見えるかを確認します |
pod | list、get、yaml、events、logs、delete、restart、exec | exec には Olares 1.12.7+ が必要です。Pod 操作、exec の安全性 |
container | list、env、logs、exec | exec には Olares 1.12.7+ が必要です。exec の安全性 |
workload(wl) | list、images、get、yaml、rollout-status、scale、restart、stop、start、delete | ワークロード操作 |
application(app) | list、get、workloads、pods、status | アプリケーションの集約 |
namespace(別名 ns) | list、get | アクティブなプロファイルのスコープに限定されるため、クラスターの名前空間ではなくユーザーの名前空間が対象です |
node(別名 nodes) | list、get | 他のツリーが要求するノード名です。files はこれらを使って cache/<node>/ と external/<node>/ を指定し、ファイルタスクはノードごとに保持されます |
job(jobs) | list、get、yaml、pods、events、rerun | ジョブ操作 |
cronjob(cronjobs、cj) | list、get、yaml、jobs、suspend、resume | cronjob 操作 |
middleware(mw) | list | ミドルウェアモデル |
監視と非同期処理のセマンティクス
- 監視とログの追跡ではポーリングを行います。ストリーミング API による監視ではありません。
- 一時的なネットワークエラーや 5xx エラーは、連続回数に上限を設けて再試行されます。終端的な 4xx レスポンスでは直ちに停止します。ただし、408 と 429 は再試行の対象です。
- Ctrl-C を押すと、ローカルのポーリングが正常に停止します。サーバーがすでに受け付けた変更は取り消されません。
- ロールアウト/ステータスの監視が終了しても、アプリケーションの入口が正常である証明にはなりません。実行時の問題が続く場合は
olares-doctorを使用してください。
安全性とエスカレーション
--yesを使用できる場合でも、破壊的な実行時変更を行う前に、必ずその内容を確認してください。execはリモートでコードを実行する境界です。名前空間、ポッド、コンテナ、コマンド、および書き込みが想定されているかを確認してください。単発の実行を優先し、対話型 TTY は人間が操作してください。- 診断で異常が見つかったというだけで、オブジェクトを削除したり再起動したりしないでください。まず、コントローラーによる所有関係とアプリケーションへの影響を確認してください。
- 404 は、プロファイルから参照できない名前空間を隠している場合があります。
cluster application listと照合してください。ユーザーの承認なしに対象範囲を広げたり、ID を切り替えたりしないでください。 - イメージ参照の完全な診断には、ページ分割されたワークロード一覧ではなく
doctor imagesを使用してください。 - 名前空間/リソースの識別が曖昧な場合、権限が不足している場合、または他のユーザーのコンテナへのアクセス要求があった場合は、作業を中止してください。