Crie sessões por meio do Session Manager. Ao chamar esta operação, inclua o ID de uma instância do Elastic Compute Service (ECS) na solicitação para estabelecer uma sessão WebSocket com a instância. A URL da sessão WebSocket retornada pela operação permite conectar-se à instância.
Observações de uso
Ao utilizar código personalizado para se conectar a uma instância ECS que atua como cliente, chame esta operação para obter a URL WebSocket necessária para a conexão. Observe os seguintes pontos:
A instância ECS deve estar no estado Running (Running).
-
O Cloud Assistant Agent precisa estar instalado na instância ECS. Para verificar a instalação e consultar a versão do agente, chame a operação DescribeCloudAssistantStatus.
Caso o Cloud Assistant Agent não esteja instalado, execute a operação InstallCloudAssistant para instalá-lo.
-
Para oferecer suporte ao Session Manager, a versão do Cloud Assistant Agent instalada deve ser superior às listadas abaixo. Se necessário, atualize o agente. Para mais detalhes sobre o processo de atualização, consulte Update or disable updates for Cloud Assistant Agent.
Sistemas operacionais Linux: V2.2.3.256
Sistemas operacionais Windows: V2.1.3.256
Cada URL WebSocket gerada pela operação StartTerminalSession permanece válida por 10 minutos.
É possível criar e manter até 1.000 sessões ativas por região. Além disso, cada instância ECS aceita no máximo 20 sessões simultâneas no estado conectado.
Depuração
Parâmetros da solicitação
| Parameter | Type | Required | Example | Description |
| Action | String | Yes | StartTerminalSession | A operação a ser executada. Defina o valor como StartTerminalSession. |
| RegionId | String | Yes | cn-hangzhou | O ID da região da instância ECS. Chame a operação DescribeRegions para obter a lista de regiões mais recente. |
| InstanceId.N | String | Yes | i-bp1eifrtpxa9tb**** | O ID da instância ECS N. É possível especificar os IDs de até 10 instâncias ECS em uma única solicitação. Valores válidos para N: 1 a 10. |
| PortNumber | Integer | No | 22 | Número da porta da instância ECS usado para encaminhamento de dados. Ao definir este parâmetro, o Cloud Assistant Agent encaminha os dados para a porta indicada. Exemplo: 22. Por padrão, este parâmetro está vazio, indicando que nenhuma porta foi configurada para o encaminhamento de dados. |
| CommandLine | String | No | ssh root@192.168.0.246 | Comando a ser executado após o início da sessão. O comprimento máximo permitido é de 512 caracteres. Nota Se você especificar CommandLine, não será necessário definir PortNumber ou TargetServer. |
| TargetServer | String | No | 192.168.0.246 | Endereço IP da instância. Nota Ao definir este parâmetro com o endereço IP de uma instância, o parâmetro PortNumber indicará a porta dessa instância específica. |
Parâmetros de resposta
|
Parameter |
Type |
Example |
Description |
|
RequestId |
String |
EB5173B0-8E80-564E-AAD1-3135412* |
O ID da solicitação. |
|
SessionId |
String |
s-hz023od0x9**** |
O ID da sessão. |
|
SecurityToken |
String |
d86c2df2-d19c-4bd8-b817-a19ef123**** |
Token de segurança incluído no cabeçalho da solicitação WebSocket. O sistema utiliza este token para autenticar a requisição. |
|
WebSocketUrl |
String |
wss://cn-hangzhou.axt.aliyuncs.com/session?sessionId=s-hz023od0x9**&token=d86c2df2-d19c-4bd8-b817-a19ef123** |
URL da sessão WebSocket estabelecida com a instância. Esta URL contém o ID da sessão ( |
Exemplos
Exemplos de solicitações
https://ecs.aliyuncs.com/?Action=StartTerminalSession
&RegionId=cn-hangzhou
&InstanceId.1=i-bp1eifrtpxa9tb****
&<Common request parameters>
Exemplos de respostas de sucesso
Formato XML
HTTP/1.1 200 OK
Content-Type:application/xml
<StartTerminalSessionResponse>
<RequestId>EB5173B0-8E80-564E-AAD1-3135412*****</RequestId>
<SessionId>s-hz023od0x9****</SessionId>
<SecurityToken>d86c2df2-d19c-4bd8-b817-a19ef123****</SecurityToken>
<WebSocketUrl>wss://cn-hangzhou.axt.aliyuncs.com/session?sessionId=s-hz023od0x9****&token=d86c2df2-d19c-4bd8-b817-a19ef123****</WebSocketUrl>
</StartTerminalSessionResponse>
Formato JSON
HTTP/1.1 200 OK
Content-Type:application/json
{
"RequestId" : "EB5173B0-8E80-564E-AAD1-3135412*****",
"SessionId" : "s-hz023od0x9****",
"SecurityToken" : "d86c2df2-d19c-4bd8-b817-a19ef123****",
"WebSocketUrl" : "wss://cn-hangzhou.axt.aliyuncs.com/session?sessionId=s-hz023od0x9****&token=d86c2df2-d19c-4bd8-b817-a19ef123****"
}
Códigos de erro
|
HTTP status code |
Error code |
Error message |
Description |
|
400 |
RegionId.ApiNotSupported |
The api is not supported in this region. |
Esta operação não pode ser executada na região especificada. Verifique se o valor do parâmetro RegionId é válido. |
|
400 |
PortNumber.Invalid |
The port number is invalid. |
Valor inválido para PortNumber. |
|
403 |
InstanceIds.ExceedLimit |
The number of instance IDs exceeds the upper limit. |
O número máximo de IDs de instância foi excedido. |
|
403 |
SessionCount.ExceedLimit |
The number of sessions exceeds the upper limit. |
O limite máximo de sessões no estado conectado foi atingido. |
|
403 |
Operation.Forbidden |
The operation is not permitted. |
Operação não suportada. |
|
403 |
PortForwarding.NotSupported |
Port forwarding is not supported currently. |
O recurso de encaminhamento de porta não está disponível. |
|
403 |
UserBehavior.SessionManagerDisabled |
The api is disabled by user behavior. |
O Session Manager está desativado. Recomendamos ativar o Session Manager para todas as regiões da sua conta. |
|
403 |
InvalidCommandLine.Conflict |
The parameter PortNumber or TargetServer cannot be specified with parameter CommandLine. |
Os parâmetros PortNumber ou TargetServer são mutuamente exclusivos com o parâmetro CommandLine. |
|
403 |
InvalidTargetServer.MissingPortNumber |
The parameter PortNumber must be specified with parameter TargetServer. |
O parâmetro PortNumber deve ser especificado juntamente com o parâmetro TargetServer. |
|
403 |
InvalidCommandLine.LengthLimitExceeded |
The length of the parameter CommandLine exceeded the limit of 512 characters. |
Valor inválido para CommandLine. O comando especificado ultrapassa o limite de 512 caracteres. |
|
403 |
InvalidInstanceIds.CountLimitExceeded |
The count of Instances exceeded the maximum limit of 1 when TargetServer or CommandLine parameter was specified. |
Limite de instâncias excedido. Quando os parâmetros TargetServer ou CommandLine forem definidos, apenas uma instância poderá ser especificada. |
|
404 |
InvalidInstance.NotFound |
The specified instances not found. |
O ID da instância especificado não foi encontrado. |
|
500 |
InternalError.Dispatch |
An error occurred when you dispatched the request. |
Ocorreu um erro durante o envio da solicitação. Tente novamente mais tarde. |
Para obter uma lista completa de códigos de erro, consulte Códigos de erro do serviço.