1.1. インスタンスのスケールアウト実施¶
1.1.1. 今回のシナリオで自動化する作業について¶
作業A インスタンスをスケールアウトする作業
リクエスト数が閾値を超過したとき。ただし、稼働するインスタンス数は3台まで
1台稼働の閾値である50リクエスト/minを超えたとき2台稼働の閾値である100リクエスト/minを超えたとき
1.1.2. 具体的な設定の検討¶
設定a 外部サービスからイベントを収集する設定
設定b 収集したイベントの中から、リクエスト数超過に関するイベントを特定する設定
設定c リクエスト数超過に関するイベントの中から自動化する作業Aの条件に合うイベントを検知する条件の設定
設定d 自動化する作業Aの登録
設定e 設定cで設定した振り分け条件と設定dで登録した作業を紐づける設定
イベント収集設定
ラベルの設定
OASEエージェントの設定
ルールの設定
1.1.3. イベント収集設定¶
Tip
1.1.3.1. イベント収集設定¶
イベント収集設定名 |
接続方式 |
リクエストメソッド |
接続先 |
認証情報 |
TTL |
|
---|---|---|---|---|---|---|
ユーザー名 |
パスワード |
|||||
リクエスト監視 |
IMAP パスワード認証 |
IMAP: Plaintext |
**.***.**.*** |
*****@**.*** |
** |
60 |
Tip
1.1.4. ラベルの設定¶
ラベルキー |
利用目的 |
---|---|
subject |
イベントの内容を特定できるようにするラベル |
requestcount |
基準となった閾値を把握するためのラベル |
instance |
作業Aの作業結果を示すためのラベル |
注釈
1.1.4.1. ラベルの作成¶
ラベルキー |
カラーコード |
---|---|
subject |
#FBFF00 |
requestcount |
#7F76F9 |
instance |
#00FF33 |
注釈
1.1.4.2. ラベルを付与する条件の設定¶
ラベリング設定名 |
イベント収集設定名 |
検索条件 |
ラベル |
||||
---|---|---|---|---|---|---|---|
キー |
値のデータ型 |
比較方法 |
比較する値 |
キー |
値 |
||
通知名 |
リクエスト監視 |
subject |
文字列 |
== |
[alert] Requests: Threshold reached |
subject |
リクエスト数超過 |
リクエスト数監視 |
リクエスト監視 |
body.plain |
その他 |
RegExp |
RequestCount . (\d{2,3}) |
requestcount |
\1 |
Tip
1.1.5. OASEエージェントの設定¶
注釈
1.1.5.1. .envの設定¶
exastro-docker-compose/ita_ag_oase/.env
に下記の内容を入力します。項目名 |
設定値 |
---|---|
AGENT_NAME |
ita-oase-agent-01 |
EXASTRO_URL |
http://******** |
EXASTRO_ORGANIZATION_ID |
******** |
EXASTRO_WORKSPACE_ID |
******** |
EXASTRO_USERNAME |
******** |
EXASTRO_PASSWORD |
******** |
EVENT_COLLECTION_SETTINGS_NAMES |
リクエスト監視 |
EXECUTE_INTERVAL |
5 |
LOG_LEVEL |
INFO |
Tip
1.1.5.2. エージェントの実行¶
警告
docker compose up -d --wait
docker-compose up -d --wait
docker compose logs -f
docker-compose logs -f
1.1.6. ルールの設定¶
注釈
通知内容 |
リクエスト数超過 |
---|---|
件名 |
[alert] Requests: Threshold reached |
本文 |
リクエスト数が、閾値を超えました。
RequestCount > 50
|
1.1.6.1. フィルターの設定¶
注釈
有効 |
フィルター名 |
フィルター条件 |
検索方法 |
---|---|---|---|
True |
request_limit |
[["subject", "==", "リクエスト数超過"], ["requestcount", "≠", "150"]] |
ユニーク |
Tip
注釈
警告
1.1.6.2. アクションの設定¶
アクション名 |
Conductor名称 |
オペレーション名 |
ホスト |
---|---|---|---|
イベント連携 |
|||
scale-out |
インスタンススケールアウト |
インスタンススケールアウト |
false |
Tip
警告
1.1.6.3. ルールの設定¶
注釈
有効 |
ルール名 |
ルールラベル名 |
優先順位 |
条件 |
アクション |
結論イベント |
|||
---|---|---|---|---|---|---|---|---|---|
フィルターA |
アクションID |
元イベントのラベル継承 |
結論ラベル設定 |
TTL |
|||||
アクション |
イベント |
||||||||
True |
スケールアウト |
スケールアウト |
1 |
request_limit |
scale-out |
True |
False |
["instance", "scale-out"] |
60 |
Tip
警告
1.1.6.4. 結果の確認¶
Tip
通知内容 |
リクエスト数超過 |
---|---|
件名 |
[alert] Requests: Threshold reached |
本文 |
リクエスト数が、閾値を超えました。
RequestCount > 50
|