セッション管理機能を使用してセッションを作成します。 このAPIを呼び出すと、ECS (Elastic Compute Service) インスタンスのIDをリクエストに含めて、インスタンスへのWebSocketセッションを作成できます。 The URL of the WebSocket session returned by the operation can be used to connect to the instance.
説明
セッション管理機能は招待プレビュー中です。 この機能を使用するには、チケットを起票してください。
カスタムコードを使用してクライアントとして機能するECSインスタンスに接続する場合、この操作を呼び出して、インスタンスへの接続に使用されるWebSocket URLを取得できます。 この操作を呼び出してECSインスタンスへのセッションを作成するときは、次の項目に注意してください。
- ECSインスタンスは実行中 (実行中) 状態である必要があります。
- ECSインスタンスにCloud Assistantクライアントをインストールする必要があります。 DescribeCloudAssistantStatusを呼び出して、Cloud AssistantクライアントがECSインスタンスにインストールされているかどうかを確認し、インストールされているCloud Assistantクライアントのバージョン番号を照会できます。
- Cloud AssistantクライアントがECSインスタンスにインストールされていない場合は、InstallCloudAssistant操作を呼び出してクライアントをインストールします。
- セッション管理機能をサポートしているのは、次のバージョンよりも後のバージョンのCloud Assistantクライアントのみです。 Cloud Assistantクライアントをアップグレードできます。
Cloud Assistantクライアントをアップグレードする方法については、「Cloud Assistantクライアントの更新または無効化」をご参照ください。
- Linuxオペレーティングシステムの場合: 2.2.3.256
- Windowsオペレーティングシステムの場合: 2.1.3.256
- StartTerminalSession操作によって返される各WebSocket URLは、10分間有効なままです。
- リージョンごとに最大1,000のセッションを作成して利用できます。 各ECSインスタンスは、接続状態で最大10セッションを持つことができます。
デバッグ
リクエストパラメーター
パラメーター | データ型 | 必須/任意 | 例 | 説明 |
---|---|---|---|---|
操作 | String | 必須 | StartTerminalSession |
実行する操作です。 値をStartTerminalSessionに設定します。 |
RegionId | String | 必須 | cn-hangzhou |
ECSインスタンスのリージョンID。 DescribeRegions を呼び出して、最新のリージョンリストをクエリできます。 |
PortNumber | Integer | 任意 | 22 |
データの転送に使用されるECSインスタンスのポート番号。 このパラメーターを指定すると、Cloud Assistantクライアントは指定されたポートにデータを転送してポート転送します。 例: 22。 このパラメーターはデフォルトで空です。これは、データを転送するポート番号が設定されていないことを示します。 |
<td class="en-UStry align-left colsep-1 rowsep-1"> InstanceId.N </td> | String | 必須 | i-bp1eifrtpxa9tb **** |
ECSインスタンスNのID。このパラメーターを使用して、最大10個のECSインスタンスを指定できます。 Nの有効値: 1〜10。 |
レスポンスパラメーター
パラメーター | データ型 | 例 | 説明 |
---|---|---|---|
RequestId | String | EB5173B0-8E80-564E-AAD1-31354123DCF4 |
リクエストの ID です。 |
SessionId | String | s-hz023od0x9 **** |
セッションの ID |
SecurityToken | String | d86c2df2-d19c-4bd8-b817-a19ef123 **** |
WebSocketリクエストヘッダーに含まれるセキュリティトークン。 The system uses this token to authenticate the request. |
WebSocketUrl | String | wss:// cn-hangzhou.axt.aliyuncs.com/session?sessionId=s-hz023od0x9****&token=d86c2df2-d19c-4bd8-b817-a19ef123**** |
インスタンスに接続するためのWebSocketセッションのURL。 URLには、セッションID ( |
例
リクエストの例
https://ecs.aliyuncs.com/?Action=StartTerminalSession
&RegionId=cn-hangzhou
&InstanceId.1=i-bp1eifrtpxa9tb ****
&<共通リクエストパラメーター>
正常に処理された場合のレスポンス例
XML
形式
HTTP/1.1 200 OK
Content-Type:application/xml
<StartTerminalSessionResponse>
<SecurityToken>d86c2df2-d19c-4bd8-b817-a19ef123 ****</SecurityToken>
<RequestId>EB5173B0-8E80-564E-AAD1-31354123DCF4</RequestId>
<WebSocketUrl>wss:// cn-hangzhou.axt.aliyuncs.com/session?sessionId=s-hz023od0x9****&token=d86c2df2-d19c-4bd8-b817-a19ef123****</WebSocketUrl>
<SessionId>s-hz023od0x9 ****</SessionId>
</StartTerminalSessionResponse>
JSON
形式
HTTP/1.1 200 OK
Content-Type:application/json
{
"SecurityToken" : "d86c2df2-d19c-4bd8-b817-a19ef123 ****" 、
"RequestId" : "EB5173B0-8E80-564E-AAD1-31354123DCF4" 、
"WebSocketUrl" : "wss:// cn-hangzhou.axt.aliyuncs.com/session?sessionId=s-hz023od0x9****&token=d86c2df2-d19c-4bd8-b817-a19ef123****" 、
"SessionId" : "s-hz023od0x9 ****"
}
エラーコード
HttpCode | エラーコード | エラーメッセージ | 説明 |
---|---|---|---|
400 | RegionId.ApiNotSupported | このリージョンではapiはサポートされていません。 | 指定されたリージョンでAPI操作を呼び出すことができない場合に返されるエラーメッセージ。 RegionIdパラメーターが有効かどうかを確認します。 |
403 | InstanceIds.ExceedLimit | インスタンスIDの数が上限を超えています。 | 指定されたインスタンスIDの数が上限を超えた場合に返されるエラーメッセージ。 |
403 | SessionCount.ExceedLimit | セッション数が上限を超えています。 | 接続状態のセッション数が上限を超えた場合に返されるエラーメッセージ。 |
403 | 操作禁止 | 操作は許可されていません。 | 操作がサポートされていない場合に返されるエラーメッセージ。 |
404 | InvalidInstance.NotFound | 指定されたインスタンスが見つかりません。 | 指定された InstanceId パラメーターが存在しない場合に返されるエラーメッセージ。 |
500 | InternalError.Dispatch | リクエストの送信時にエラーが発生しました。 | リクエストの送信時にエラーが発生した場合に返されるエラーメッセージ。 しばらくしてから再試行します。 |
エラーコードリストについては、「API エラーセンター」をご参照ください。