Administração de uma frota
Siga estas etapas para executar uma frota com a CLI ou com o console. Observe que as frotas são executadas assim que são criadas, de modo que running uma frota e creating uma frota são a mesma operação.
Antes de Iniciar
Para administrar uma frota com sucesso, certifique-se de ter seguido as etapas em Preparação para administrar sua frota. Você também tem a opção de usar o site Code Engine para criar a imagem de referência ao criar sua frota.
Execução de uma frota usando a CLI
Use o comando de exemplo a seguir para executar uma frota. Esse comando permite opções adicionais. Para obter uma lista completa de todas as opções de comando disponíveis, consulte os documentos da CLI.
ibmcloud ce fleet run --name my-fleet --image icr.io/codeengine/helloworld --subnetpool-name my-pool --tasks-state-store mytaskstore --tasks 1
--name- O nome da frota. Esse valor deve ser exclusivo para todas as frotas do mesmo projeto. Se nenhum nome de frota for especificado, será gerado um nome aleatório.
--image- O nome da imagem do contêiner utilizada para processar as tarefas. Este valor é obrigatório.
--subnetpool-name- O nome do pool de sub-rede a ser usado para o posicionamento da rede da frota.
--tasks-state-store- Especifique o armazenamento de dados persistente que armazena o estado das tarefas da frota. Este valor é obrigatório.
--tasks- O número de tarefas a serem executadas.
Exemplo de saída.
Successfully created fleet with name 'my-fleet' and ID '1a1a1a1a-2b2b-3c3c-4d4d-5e5e5e5e5e5e'
Run 'ibmcloud ce fleet get --fleet-id 1a1a1a1a-2b2b-3c3c-4d4d-5e5e5e5e5e5e' to check the fleet status.
Run 'ibmcloud ce fleet worker list --fleet-id 1a1a1a1a-2b2b-3c3c-4d4d-5e5e5e5e5e5e' to retrieve a list of provisioned workers.
Run 'ibmcloud ce fleet task list --fleet-id 1a1a1a1a-2b2b-3c3c-4d4d-5e5e5e5e5e5e' to retrieve a list of tasks.
OK
Execução de uma frota usando o console
Siga estas etapas para executar um fleet no console Code Engine.
- Abra o Code Engine console.
- Clique em Iniciar a criação.
- Selecione um projeto na lista de projetos disponíveis. Também é possível criar um novo. Você deve ter um projeto selecionado para executar uma frota.
- Selecione a opção para criar uma frota.
- Especifique um nome para a frota. Certifique-se de que o nome seja exclusivo em todas as frotas do projeto.
- Especifique uma imagem de contêiner para sua frota, por exemplo,
icr.io/codeengine/helloworld. Se você tiver seu próprio código-fonte que deseja transformar em uma imagem de contêiner, consulte Planejamento da compilação. Para obter mais informações sobre o código utilizado neste exemplo, consulte helloworld. - Siga as instruções para configurar sua frota.
- Na seção Tasks (Tarefas), configure o método de especificação de tarefas para a frota. Para obter mais informações, consulte Especificação da tarefa.
- Na seção Recursos e dimensionamento, configure os recursos da instância e especifique como as instâncias são dimensionadas para cima ou para baixo.
- Na seção Network placement (Posicionamento de rede), clique em Select subnet pools (Selecionar pools de sub-rede ).
- Crie um novo pool de sub-rede para especificar o posicionamento de rede dos funcionários dessa frota. Consulte Trabalho com conectividade de pool de sub-rede em Code Engine para obter mais informações.
- Ou selecione um ou mais pools de sub-rede existentes para especificar o posicionamento de rede dos funcionários dessa frota.
- Clique em “Aplicar” para confirmar sua seleção.
- Nas seções Environment variables (Variáveis de ambiente ) e Volume mounts (Montagens de volume ), adicione pares de valores-chave opcionais, configmaps ou arquivos adicionais que possam ser usados pelo seu código em execução.
- Clique em criar.
Especificação da tarefa
As frotas sempre têm pelo menos uma tarefa, mas podem ter um número muito maior. Você pode especificar o número de tarefas a serem concluídas, o número de instâncias de tarefas a serem executadas por vez e a ordem em que as tarefas são concluídas. Quando você executa sua frota, os nós de trabalho aumentam automaticamente com base no número de tarefas a serem concluídas.
Você pode especificar tarefas das seguintes maneiras:
- Número de tarefas: Para executar um número específico de tarefas, você pode especificar qualquer número inteiro positivo. Na CLI, use a opção
--tasks. Na interface do usuário, selecione Number of tasks (Número de tarefas ) e digite o número que deseja executar. - Índice da tarefa: Para especificar um intervalo de tarefas, você pode especificar um índice de tarefas que inclua uma lista separada por vírgulas de intervalos e números inteiros positivos, como
2-5,7-8,10. Na CLI, use a opção--task-indexes. Na interface do usuário, selecione Task indexes (Índices de tarefas ) e insira o intervalo. - Arquivo de tarefa: Para que diferentes tarefas sejam executadas com diferentes comandos ou argumentos, você pode criar um arquivo de especificação de tarefa que substitui a definição de imagem. O campo opcional
idxpode ser usado para especificar um índice de tarefa personalizado. Este arquivo precisa estar no formato JSONL. Na CLI, especifique o arquivo com a opção--tasks-from-local-fileou--tasks-from-cos-object. Na interface do usuário, selecione Tasks from file (Tarefas do arquivo ) e especifique o nome do arquivo. Veja abaixo um exemplo de linhas que podem ser adicionadas a um arquivo de especificação de tarefa.
Exemplo de linhas em um arquivo de especificação de tarefa.
{ "cmds": ["my", "multipart", "command"], "args": ["arg1", "arg2"] }
{ "cmds": ["other", "cmd"], "args": ["arg"], "idx": "foo" }
{ "args": ["argA", "argB", "argC"], "idx": "bar" }
{ "cmds": ["just", "another", "command"], "idx": "1234" }
Exclusão de uma frota usando a CLI
Uma frota não é excluída automaticamente quando atinge seu estado final. Como há um limite de cota de 1.000 frotas por projeto (consulte Cotas de projeto ), exclua a frota usando a CLI quando não precisar mais dela.
Use o comando de exemplo a seguir para excluir uma frota. Esse comando permite opções adicionais. Para obter uma lista completa de todas as opções de comando disponíveis, consulte os documentos da CLI.
ibmcloud ce fleet delete --force --fleet-id 1a1a1a1a-2b2b-3c3c-4d4d-5e5e5e5e5e5e
Exclusão de uma frota usando o console
Uma frota não é excluída automaticamente quando atinge seu estado final. Como há um limite de cota de 1.000 frotas por projeto (consulte Cotas de projeto ), exclua a frota usando a CLI quando não precisar mais dela.
Siga estas etapas para excluir uma frota no console.
- Acesse a página “Frotas”:
- Selecione seu projeto na página Projects(Projetos)no console Code Engine.
- Clique em Fleets (Frotas ) para ver uma lista das frotas existentes.
- Vá para a linha com a frota que você deseja remover e clique no ícone de exclusão (lixeira).
- Confirme a exclusão quando solicitado.