このトピックでは、アプリケーション管理機能を使用して、アプリケーション (ジョブグループ) の作成、ワーカーの接続性のテスト、RAM ユーザーへの権限付与を行う方法について説明します。
アプリケーションの作成
スケジューリングジョブを作成する前に、アプリケーションを作成する必要があります。
ステップ 1:基本設定
-
一般アプリケーション:Kubernetes にデプロイされていない、または Kubernetes ジョブを必要としないアプリケーションには、このオプションを選択します。
-
Kubernetes アプリケーション:Kubernetes にデプロイされており、Kubernetes ジョブを必要とするアプリケーションには、このオプションを選択します。
-
このパラメーターは、一般アプリケーションの Basic Edition では使用できません。
-
ログサービスに対して 1 年以上書き込み操作が実行されない場合、サービスは自動的に無効になります。手動で再度有効にする必要があります。
-
金融取引日:金融サービスの取引日。
-
営業日:標準的な業務またはビジネス運用の日。
-
MSE SchedulerX コンソールにログインします。
-
上部のナビゲーションバーで、リージョンを選択します。
-
左側のナビゲーションウィンドウで、[アプリケーション管理] をクリックします。
-
左側のナビゲーションウィンドウで、[タスクスケジューリング] を選択し、[アプリケーション管理] をクリックします。
-
[アプリケーション管理] ページで、対象の名前空間を選択し、Create Application をクリックします。
-
[基本設定] ステップで、[アプリケーション名] と [アプリケーション ID] を入力し、[アプリケーションタイプ] を選択し、必要に応じて詳細設定を行い、Next をクリックします。
|
カテゴリ |
パラメーター |
説明 |
デフォルト |
|
基本情報 |
アプリケーション名 |
アプリケーションのカスタム名を指定します。 |
なし |
|
アプリケーション ID |
アプリケーション ID は、アプリケーションアクセスに使用される GroupID です。この ID は同じ名前空間内で一意である必要があります。一意でない場合、作成は失敗します。アプリケーション名と同じ値を使用できます。 |
なし |
|
|
Description |
アプリケーションの説明を指定します。 |
なし |
|
|
アプリケーションタイプ |
|
汎用アプリケーション |
|
|
Version |
要件に基づいてエディションを選択します。 |
Professional Edition |
|
|
Simple Log Service |
この機能を有効にし、Log4j または Logback を設定すると、コンソールで各ジョブ実行のビジネスログを表示して問題をトラブルシューティングできます。 説明
|
有効 |
|
|
ワーカービジー設定 |
load5 |
過去 5 分間のシステムの平均負荷。負荷がこの値を超えると、ワーカーはビジーと見なされます。値が 0 の場合、しきい値はワーカーの CPU コア数に設定されます。 |
0 |
|
メモリ使用量 |
過去 5 分間のプロセスの平均メモリ使用量がこのしきい値を超えると、ワーカーはビジーと見なされます。 |
90% |
|
|
ディスク使用量 |
ディスク使用量がこのしきい値を超えると、ワーカーは不健康と見なされ、ステータスがビジーに設定されます。 |
95% |
|
|
ビジーマシンをトリガーするかどうか |
ワーカーがビジー状態のときにジョブをディスパッチするかどうかを指定します。 |
有効 |
|
|
詳細設定 |
最大ジョブ数 |
ジョブグループで許可されるジョブの最大数。 |
1000 |
|
Auto scaling |
auto scaling を有効にするかどうかを指定します。有効にした場合は、グローバルジョブ数も設定する必要があります。 |
無効 |
|
|
フロー制御 |
フロー制御を有効にするかどうかを指定します。有効にした場合は、同時ジョブインスタンス数も設定する必要があります。 |
無効 |
|
|
同時ジョブインスタンス数 |
このアプリケーションで同時に実行できるジョブインスタンスの最大数。この制限を超えたジョブインスタンスは破棄されず、後で実行するためにキューに入れられます。 |
0 |
|
|
カレンダー |
ドロップダウンリストから、金融取引日または営業日にアプリケーションをスケジュールできます。 |
0 |
ステップ 2:通知設定
-
[通知設定] ステップで、設定を行い、[通知チャネル] を選択し、[連絡先] を設定します。
-
サポートされている通知チャネルには、SMS、E メール、Webhook、電話があります。
Webhook の設定に関する詳細については、「Webhook 設定」をご参照ください。
-
連絡先グループまたは個別の連絡先に通知できます。
-
連絡先グループ
指定されたグループ内のすべての連絡先が通知を受け取ります。連絡先グループの作成方法の詳細については、「通知の連絡先」をご参照ください。
-
連絡先
1. 通知を受け取る連絡先を 1 つ以上追加します。[連絡先の追加] をクリックした後、[連絡先の作成] をクリックします。
2. 表示されたページで、[新しい連絡先] をクリックし、連絡先情報を入力します。
連絡先情報には、名前 (必須)、携帯電話番号、E メール、Webhook、連絡先グループが含まれます。
-
-
-
[完了] をクリックします。
アプリケーションを作成すると、アプリケーション一覧が自動的に更新されます。
重要-
アプリケーション ID:この ID はクライアントの初期化に必要で、ジョブグループの一意の識別子として機能します。
-
アプリケーションキー:このキーは SDK リクエスト認証に必要です。このキーは機密情報として扱ってください。
-
Webhook 設定
Webhook URL を取得するには、DingTalk、WeCom、Lark の公式ドキュメントをご参照ください。
-
MSE SchedulerX は、WeCom、Lark、DingTalk の Webhook をサポートしています。カンマ (,) で区切ることで、複数の Webhook URL を指定できます。
-
DingTalk ボットのアラートを受信するには、大文字と小文字を区別するカスタムキーワードとして
SchedulerXを追加する必要があります。DingTalk カスタムボットのセキュリティ設定で、[カスタムキーワード] を選択し、キーワードMonitoring alertsとSchedulerXを追加します。 -
連絡先用の Webhook を使用する場合は、次のフォーマットのリクエストを正しく解析して処理できることを確認してください。以下の cURL コマンドの例は、連絡先の Webhook にメッセージを送信します。
curl 'https://oapi.xxxxxxx \ -H 'Content-Type: application/json' \ -d ' { "msgtype": "text", "text": { "content": "SchedulerX alert details" }, "at": { "isAtAll": false } }'
インスタンスの表示
アプリケーションを MSE SchedulerX に接続した後、実行中のインスタンスを表示して接続を確認します。
-
[アプリケーション管理] ページで、[合計インスタンス数] 列の値を確認します。
説明[合計インスタンス数] 列の値が 0 の場合、アプリケーションの接続に失敗しています。
-
アプリケーションの Actions 列で、[インスタンスの表示] をクリックします。
-
[インスタンスの表示] ページで、アプリケーションのワーカーのリストと各ワーカーのステータスを表示します。
-
通常、ワーカーにはクライアントが 1 つしかありませんが、複数のクライアントもサポートされています。
-
ワーカーのステータスは、ヘルシーまたはビジーのいずれかです。デフォルトでは、ビジー状態のワーカーにはジョブはディスパッチされません。接続されているすべてのワーカーがビジーであるなど、極端な場合には、ジョブのディスパッチが失敗することがあります。ビジー状態のワーカーに強制的にジョブをディスパッチするには、Edit > [ワーカービジー設定] セクションで、[ビジーマシンをトリガーするかどうか] スイッチをオフにします。
アプリケーション一覧でアプリケーションを見つけ、[操作] 列の [編集] をクリックします。
-
権限付与
アプリケーションレベルの権限を付与できます。Alibaba Cloud アカウント (root ユーザー) と RAM ユーザーの両方が、同じアカウント内の他の RAM ユーザーにアクセス権を付与できます。
[権限管理] ページで、左側の [未承認] リストから対象の RAM ユーザーを選択し、[>>] ボタンをクリックしてユーザーを [承認済み] リストに移動します。
Grant をクリックしたときに 必要な権限がありません というメッセージが表示された場合は、Alibaba Cloud アカウントを使用して、次のカスタムポリシーを RAM ユーザーにアタッチする必要があります。
{
"Version": "1",
"Statement": [
{
"Action": "ram:ListUsers",
"Resource": "*",
"Effect": "Allow"
}
]
}
アプリケーションの削除
ジョブを作成する必要がなくなったアプリケーションは削除できます。アプリケーションを削除すると、それに関連付けられているすべてのジョブはトリガーされなくなります。
-
[アプリケーション管理] ページで、削除するアプリケーションを見つけ、Actions 列の Delete をクリックします。
-
[アプリケーションの削除] ダイアログボックスで、詳細を確認し、検証のためにアプリケーション名を入力して、OK をクリックします。
-
アプリケーションを削除すると、関連付けられているジョブはトリガーされなくなり、アプリケーション一覧から削除されます。
-
誤ってアプリケーションを削除してしまい、復元する必要がある場合は、DingTalk グループ (ID: 23103656) に参加して、SchedulerX のテクニカルサポートにお問い合わせください。