管理车队

按照以下步骤使用 CLI 或控制台运行机群。 请注意,舰队创建后会立即运行,因此 running 舰队和 creating 舰队是相同的操作。

准备工作

要成功运行车队,请确保您已按照《 准备运行车队 》中的步骤进行了操作。 在创建车队时,您还可以选择使用 Code Engine 来 建像 您的参考资料。

使用 CLI 运行机群

使用以下示例命令运行舰队。 该命令允许其他选项。 有关所有可用命令选项的完整列表,请参阅 CLI 文档

ibmcloud ce fleet run --name my-fleet --image icr.io/codeengine/helloworld --subnetpool-name my-pool --tasks-state-store mytaskstore --tasks 1
--name
资源组的名称。 在同一项目的所有车队中,该值必须是唯一的。 如果没有指定舰队名称,则会随机生成一个。
--image
用于处理任务的容器镜像的名称。 此字段为_必填项_。
--subnetpool-name
用于机群网络部署的子网池名称。
--tasks-state-store
指定存储车队任务状态的持久数据存储。 此字段为_必填项_。
--tasks
要运行的任务数。

示例输出。

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

使用控制台运行舰队

请按照以下步骤在 Code Engine 控制台运行舰队。

  1. 打开 Code Engine 控制台。
  2. 单击开始创建
  3. 从可用项目列表中选择一个项目。 你也可以 创建一个新的。 您必须有一个选定的项目才能运行车队。
  4. 选择创建车队的选项。
  5. 请为车队指定一个名称。 确保项目中所有车队的名称都是唯一的。
  6. 为舰队指定一个容器映像,例如 icr.io/codeengine/helloworld。 如果您想将自己的源代码转化为容器镜像,请参阅规划您的构建。 有关本示例所用代码的更多信息,请参阅 helloworld。
  7. 按照提示配置机群。
  8. 在“任务”部分,配置车队的任务规范方法。 更多信息,请参阅 任务规范
  9. 在“资源和缩放”部分,配置实例资源并指定实例的缩放方式。
  10. 在“网络布局”部分,单击“选择子网池”。
    1. 创建一个新的子网池,以指定该机群工人的网络位置。 更多信息,请参阅 Code Engine 中的 "使用子网池连接 "。
    2. 或选择一个或多个现有子网池,指定该机群工人的网络位置。
    3. 点击 “应用” 以确认您的选择。
  11. 在“环境变量”和 “卷挂载”部分,添加运行代码可使用的可选键值对、配置映射或附加文件。
  12. 单击"Create",

任务规格

舰队总是至少有一项任务,但也可以有更多的任务。 您可以指定要完成的任务数量、每次运行的任务实例数量以及完成任务的顺序。 运行机群时,工人节点会根据需要完成的任务数量自动扩展。

您可以通过以下方式指定任务:

  • 任务数:要运行特定数量的任务,可以指定任何正整数。 在 CLI 中,使用 --tasks 选项。 在用户界面中,选择 任务数量 并输入要运行的号码。
  • 任务索引:要指定任务范围,可以指定任务索引,其中包括以逗号分隔的范围列表和正整数,如 2-5,7-8,10。 在 CLI 中,使用 --task-indexes 选项。 在用户界面中,选择任务索引并输入范围。
  • 任务文件:要使用不同的命令或参数运行不同的任务,可以创建一个任务规范文件来覆盖映像定义。 可选的 idx 字段可用于指定自定义任务索引。 该文件需要使用 JSONL 格式。 在 CLI 中,使用 --tasks-from-local-file--tasks-from-cos-object 选项指定文件。 在用户界面中,选择文件中的任务并指定文件名。 请参阅下面的示例,了解可添加到任务规范文件中的行数。

任务说明文件中的示例行。

{ "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" }

使用 CLI 删除机群

舰队达到最终状态时不会自动删除。 由于每个项目有 1000 个机群的配额限制(请参阅 项目配额 ),因此当您不再需要机群时,请使用 CLI 将其删除。

使用以下示例命令删除舰队。 该命令允许其他选项。 有关所有可用命令选项的完整列表,请参阅 CLI 文档

ibmcloud ce fleet delete --force --fleet-id 1a1a1a1a-2b2b-3c3c-4d4d-5e5e5e5e5e5e

使用控制台删除舰队

舰队达到最终状态时不会自动删除。 由于每个项目有 1000 个机群的配额限制(请参阅 项目配额 ),因此当您不再需要机群时,请使用 CLI 将其删除。

按照以下步骤在控制台中删除机群。

  1. 转到“舰队”页面:
    1. Code Engine 控制台的项目页面选择项目。
    2. 单击车队,查看现有车队列表。
  2. 转到要删除的车队所在行,点击删除(垃圾桶)图标。
  3. 出现提示时确认删除。