Parando ou terminando de executar trabalhos
Depois de chamar uma tarefa da área de trabalho, como um plan, um apply ou um destroy, você pode desejar parar a tarefa em execução ou parar o fornecimento de recursos Ao parar ou cancelar uma tarefa de longa
execução, é aconselhável primeiro verificar os logs da tarefa para determinar se a tarefa está realmente presa e precisa parar ou se está executando operações de longa execução que estão levando tempo para concluir.
Schematics oferece várias opções que permitem aos usuários “ (gracefully) stop ”, “ force-stop ” ou “ terminate ” a tarefa em execução, de acordo com a urgência e o impacto da operação de interrupção.
Parar tipos de tarefa
A tabela fornece a lista de tipos de tarefas de parada:
| Tipos | Descrição |
|---|---|
stop |
Envia um sinal de interrupção ao comando do Terraform em execução. Isso executa a mesma função que ao executar o Terraform independente, em que um interrupt é enviado usando cntl-C ou semelhante ao Terraform.
Os sinais de interrupção podem ser enviados várias vezes para notificar o Terraform para parar O Terraform tenta parar o comando em execução (planejar, aplicar, excluir) após qualquer operação de recurso em execução ser concluída e limpa.
Schematics aguarda a conclusão do comando.. Após o comando ser interrompido ou concluído, os arquivos de estado e de log são coletados e salvos. |
force-stop |
Envia um sinal de encerramento para o comando do Terraform em execução. Use isso no caso em que você deseja eliminar o comando Terraform depois de ver que o comando stop (interrupções) não está parando o comando. Um comando force-stop pode ser enviado quantas vezes forem necessárias até que o comando seja concluído e o trabalho seja interrompido. Se ele for capaz de responder ao sinal de kill, o Terraform interromperá as operações de comando e recurso em execução
imediatamente e limpará. Após o comando ser interrompido ou concluído, o arquivos de estado e de log são coletados e salvos. |
terminate |
Se as operações anteriores falharem, finalize imediatamente a tarefa Schematics. A tarefa é marcada como STOPPED e a área de trabalho desbloqueada. Quaisquer cópias salvas anteriormente dos logs e statefile são
preservadas. Quando um trabalho é encerrado, ele é encerrado sem que nenhum arquivo seja coletado separadamente no final. Essa opção pode resultar na perda de dados do arquivo de registro e nas atualizações mais recentes do statefile e deve ser usada com cuidado |
Até que a tarefa seja interrompida, é possível enviar qualquer número desses sinais de parada. Geralmente, não se deve enviar mais do que três sinais. Se o Terraform não responder às solicitações de stop (sinais de
interrupção), você sempre pode usar force-stop``. Se force-stop não responder devido a algum problema na tarefa, você poderá usar sempre terminate para a tarefa a ser bloqueada.
Cancelando um trabalho
Se o trabalho estiver no estado “ pending ”, qualquer tipo de solicitação de interrupção fará com que o trabalho seja cancelado. O botão “ Cancel ” aparece se a tarefa estiver no estado “ pending ”, quando
pode ser simplesmente cancelada. Cancelar remove a tarefa da fila pendente. Se a execução de plan, apply ou destroy for iniciada entretanto, que se torna um sinal de parada (interrupção) para o Terraform.
Parando uma tarefa em execução usando a IU
Você pode seguir estas etapas para interromper uma tarefa em execução no workspace usando o console.
-
No Painel de Áreas de Trabalho, selecione a área de trabalho relacionada à tarefa em execução
É possível parar ou cancelar a tarefa em execução durante uma execução de plano, aplicação ou destruição.
-
Clique na guia “Tarefa” para visualizar os botões “Parar ”, “Parar à força ”, “Encerrar ” e “Cancelar ”.
| Botão | Descrição |
|---|---|
| Parar | Remove a tarefa da fila pendente, se ela estiver em estado pendente. Caso contrário, envia um sinal de interrupção para o comando do Terraform. |
| Forçar parada | Envia um sinal de encerramento para o comando do Terraform em execução. |
| Finalizar | Encerra o trabalho “ Schematics ”, marca-o como PARADO e desbloqueia o espaço de trabalho. Este comando deve ser usado cuidadosamente, pois pode resultar em perda de dados. |
| Cancelar | O botão “ Cancel ” aparece se a tarefa estiver no estado “ pending ”, quando pode ser simplesmente cancelada. Cancelar remove a tarefa da fila pendente. Se a execução de plan, apply ou
destroy for iniciada nesse meio tempo, isso acabará se tornando um sinal de interrupção para a execução do Terraform. |
- Digite seu nome de
<option>na caixa de texto Digitar opção para confirmar. - Clique no botão Confirmar opção.
Parando uma tarefa em execução usando a CLI
Interrompe uma tarefa em execução no espaço de trabalho do IBM Cloud Schematics.
Sintaxe
ibmcloud schematics workspace job stop --id WORKSPACE_ID --job-id JOB_ID [--stop] [--force-stop] [--terminate] [--no-prompt]
Opções de comando
| Sinalize | Obrigatório / Opcional | Descrição |
|---|---|---|
--id ou -i |
Obrigatório | O ID da área de trabalho a ser atualizado. |
--job-id ou --jid |
Obrigatório | O ID da tarefa. |
--stop |
Opcional | Remove a tarefa da fila pendente, se ela estiver em estado pendente. Caso contrário, envia um sinal de interrupção para o comando do Terraform. |
--force-stop ou --fs |
Opcional | Envia um sinal de encerramento para a execução do Terraform no mecanismo na tentativa de parar imediatamente a execução. |
--terminate ou -t |
Opcional | Encerra bruscamente o mecanismo, marca a tarefa como interrompida e desbloqueia sua área de trabalho. Os dados não são salvos com essa opção ativada. |
--no-prompt |
Opcional | Configure esta sinalização para executar o comando sem um modo interativo. |
Exemplo
ibmcloud schematics workspace job stop --id <WORKSPACE_ID> --stop --job-id <JOB_ID>
ibmcloud schematics workspace job stop --id <WORKSPACE_ID> --force-stop --job-id <JOB_ID>
ibmcloud schematics workspace job stop --id <WORKSPACE_ID> --terminate --job-id <JOB_ID>
Parando um tarefa em execução por meio da API
É possível usar os comandos CURL a seguir para parar uma tarefa em execução para a área de trabalho do IBM Cloud Schematics.
Sintaxe para parar tarefas em execução
-
Configure seu cliente REST para executar a API do Schematics.
-
Use a sintaxe e o exemplo para interromper o trabalho em execução.
Sintaxe
curl -X DELETE https://schematics.cloud.ibm.com/v1/workspaces/<wks_id>/actions/{job_id}?signal=interrupt -H "Authorization: <iam_token>"Exemplo
curl -X DELETE https://schematics.cloud.ibm.com/v2/jobs/{job_id}?signal=interrupt -H "Authorization: <iam_token>" -
Use o exemplo para
force-stopa tarefa em execução.Exemplo
curl -X DELETE https://schematics.cloud.ibm.com/v1/workspaces/<wks_id>/actions/{job_id}?signal=force-stop -H "Authorization: <iam_token>" -
Use o exemplo para
terminatea tarefa em execução.Exemplo
curl -X DELETE https://schematics.cloud.ibm.com/v1/workspaces/<wks_id>/actions/{job_id}?signal=terminate -H "Authorization: <iam_token>"Para obter mais informações sobre como interromper uma tarefa em execução, consulte a API “Interromper e excluir a tarefa em execução ”.
Revisando os detalhes de tarefas do Schematics
Use a página de tarefa do Schematics no console para localiza o histórico de todas as atividades do Schematics, como fazer download de seu template, plan, apply e ver os logs das tarefas. As tarefas são
criadas quando você executa seus modelos. Também é possível ver a contagem dos recursos que estão nas tarefas plan ou apply no status incluído, modificado ou destruído.
Para obter mais informações sobre o processo da fila de tarefas, consulte o artigo “Processo de execução da fila de tarefas do Schematics ”.
No log de tarefas, é possível ver uma mensagem como:
-
Atividade acionada. Aguardando os logs. Isso significa que a tarefa está no status pendente e ainda para ser processada.
-
Sua tarefa foi enviada e está na fila, na posição x dentre y. Aqui
xé a posição da sua tarefa na fila pendente eyé um total de tarefas pendentes. Os recursos disponíveis no back-end do Schematics são igualmente distribuídos para as tarefas pendentes. Caso você esteja executando um número enorme de tarefas, é possível visualizar o aumento de posição juntamente com o total.