あられ - クラウドでオンライン

これは、Ubuntu Online、Fedora Online、Windows オンライン エミュレーター、または MAC OS オンライン エミュレーターなどの複数の無料オンライン ワークステーションの XNUMX つを使用して、OnWorks 無料ホスティング プロバイダーで実行できるコマンド hail です。

プログラム:

NAME


あられ - Ganeti IAllocator プラグイン

SYNOPSIS


[ -t file | -シミュレート スペック ] [オプション...] 入力ファイル

- バージョン

DESCRIPTION


hail は、インスタンスの配置と移動を実装する Ganeti IAllocator プラグインです。
と同じアルゴリズムを使用する ハブルとします。

プログラムは、現在のクラスターの状態とリクエストを含む JSON ファイルを介して入力を受け取ります。
詳細を確認し、JSON 形式の応答を (標準出力に) 出力します。 重大な障害が発生した場合、
エラー メッセージは標準エラー出力に出力され、終了コードは失敗を示すように変更されます。

入力ファイル名が - (単一のマイナス記号) の場合、リクエスト データは次から読み取られます。
stdin.

入力データとは別に、hail は --mond を使用してすべての MonD からネットワーク経由でデータを収集します。
オプション。 現在、CPUload コレクターによって生成されたデータのみが使用されます。

アルゴリズム
通常のノード グループでは、プログラムは hbal アルゴリズムの簡易バージョンを使用します。 ために
排他的ストレージを備えたノード グループへの割り当てについては、以下を参照してください。

単一ノードの割り当て (ミラーリングされていないインスタンス) の場合も、次の場合にノードを選択します。
プライマリ ノードとして選択された場合、最高のスコアが得られます。

デュアルノード割り当て (ミラーリングされたインスタンス) の場合、最適なペアを選択しました。 これが唯一の
クラスター サイズに関してアルゴリズムが自明ではない場合の選択。

再配置の場合、インスタンスのセカンダリ ノードをすべて有効なノードに変更しようとします。
他のノード。 最良のクラスタースコアをもたらすノードが選択されます。

ノード変更の場合 (ノード変更 モード)、現在は DRBD インスタンスのみをサポートしており、すべてのインスタンスをサポートしています。
XNUMX つのモード (一次変更、二次変更、および全ノード変更)。

グループ移動の場合(変更グループ モード)、やはり DRBD のみがサポートされており、
正しい順序でグループが変更される。 ジョブが途中で失敗すると、
分割インスタンス。 ターゲット グループ上のノードの選択は、グループ スコアに基づいて行われます。
グループの選択は、割り当てと同じアルゴリズムに基づいています (最も低いグループ)
配置後のスコア)。

廃止された 複数で避難する モードはサポートされなくなりました。

すべての場合において、クラスター (またはグループ) のスコアリングは hbal アルゴリズムと同一です。

排他的ストレージを備えたノードグループへの割り当てには、割り当て喪失メトリックが使用されます。
代わりに、どのノードにインスタンスを割り当てるかを決定します。 ノードの割り当て
ベクトルは、各インスタンスのポリシー間隔の降順のベクトルです。
その間隔に最低限準拠しており、そのノード上に配置できるインスタンスの数。
ノード上のインスタンスの割り当て損失ベクトルは、割り当ての差分です。
そのノードにインスタンスを配置する前後のそのノードのベクトル。 の
損失割り当てメトリクスは、損失割り当てベクトルの後に残りのディスクが続くものです。
選択したノード上のスペース。すべて辞書順に比較されます。

OPTIONS


プログラムに渡すことができるオプションは次のとおりです。

-NS、 --print-nodes
ユーザーが実行できるように設計された形式で、前後のノードのステータスを出力します。
ノードの最も重要なパラメータを理解します。 マニュアルページを参照してください htools(1)
このオプションの詳細については、こちらをご覧ください。

-t データファイル, --text-data=*データファイル*
JSON 内のデータをオーバーライドするための、クラスター情報を保持するファイルの名前
それ自体を要求します。 これは主にデバッグに使用されます。 ファイルの形式は次のとおりです。
マニュアルページに記載されている htoolsとします。

--mond=*はい|いいえ*
指定された場合、プログラムはすべての MonD をクエリして、サポートされているデータからデータを取得します。
ネットワーク上のコレクター。

-- モンドデータ データファイル
MonD のクエリをオーバーライドするために、MonD によって提供されるデータを保持するファイルの名前
ネットワーク経由で。 これは主にデバッグに使用されます。 ファイルは JSON である必要があります
XNUMX つのメンバーを持つ JSON オブジェクトの配列を、各ノードに XNUMX つずつフォーマットして表示します。
ノードという名前の最初のメンバーはノードの名前であり、XNUMX 番目のメンバーは という名前です。
reports はレポート オブジェクトの配列です。 レポートオブジェクトは同じ場所にある必要があります
監視エージェントによって生成された形式。

--無視-dynu
指定した場合、すべての動的使用率情報は、次のようにみなされて無視されます。
0. このオプションは、MonD によって渡されるデータよりも優先されます。
--mond および --mond-data オプション。

--ignore-ソフトエラー
指定すると、可能性のあるものを検索するときにソフト エラーのチェックがすべて省略されます。
割り当て。 このようにして、過負荷状態でも有益な決定を下すことができます。
クラスター。

-シミュレート 説明
バックエンド仕様: と同様 -t オプションを使用すると、クラスターをオーバーライドできます。
シミュレートされたクラスターを含むデータ。 説明の詳細については、マニュアルページを参照してください。
htoolsとします。

-S ファイル名, --save-cluster=*ファイル名*
指定した場合、iallocator の実行前のクラスターの状態がファイルに保存されます。
命名 filename.pre-alloc、それぞれ ファイル名.post-ialloc。 これが可能に
-t オプションを使用して、クラスターの状態を htools ユーティリティのいずれかに再フィードします。

-v このオプションは冗長性を高め、次の目的でデバッグに使用できます。
IAllocator リクエストがどのように解析されるかを理解する。 何度も渡せる
詳細については、引き続きご覧ください。

CONFIGURATION


タグ除外設定の場合 (詳細については hbal のマンページを参照)、リスト
どのインスタンス タグを除外タグとして考慮するかはクラスター タグから読み取られます。
次のように構成されています。

· で始まるすべてのクラスタ タグを取得します htools:iextags:

· それらのサフィックスを除外タグのプレフィックスとして使用する

たとえば、次のようなクラスタータグがあるとします。 htools:iextags:サービス、のすべてのインスタンス タグ
フォーム 意志 be 見なさ as 除外 タグ、 意味 それ (例えば) 2 インスタンス
which 両言語で 持ってる a タグ同じプライマリ ノードには配置されません。

OPTIONS


プログラムに渡すことができるオプションは次のとおりです。

EXIT ステータス


何らかの理由でアルゴリズムが致命的になる場合を除き、コマンドの存在ステータスはゼロになります。
失敗しました (例: 間違ったノードまたはインスタンス データ)。

onworks.net サービスを使用してオンラインで Hail を使用する



最新のLinuxおよびWindowsオンラインプログラム