部署带有 Ingress 的工作负载

先决条件

你已有一个正在运行的集群,且该集群中有至少一个节点。

1. 部署工作负载

你可以开始创建你的第一个 Kubernetes 工作负载。工作负载是一个对象,其中包含 pod 以及部署应用所需的其他文件和信息。

在本文的工作负载中,你将部署一个 Rancher Hello-World 应用。

  1. 点击 ☰ > 集群管理

  2. 选择你创建的集群,并点击 Explore

  3. 点击工作负载

  4. 单击创建

  5. 点击 Deployment

  6. 为工作负载设置名称

  7. 容器镜像字段中,输入 rancher/hello-world。注意区分大小写。

  8. Service Type 点击 Add PortCluster IP,并在 Private Container Port 字段中输入80。你可以将 Name 留空或指定名称。通过添加端口,你可以访问集群内外的应用。有关详细信息,请参阅 Service

  9. 单击创建

结果

  • 工作负载已部署。此过程可能需要几分钟。

  • 当工作负载完成部署后,它的状态会变为 Active。你可以从项目的工作负载页面查看其状态。

2. 通过 Ingress 暴露应用

现在应用已启动并运行,你需要暴露应用以让其他服务连接到它。

  1. 点击 ☰ > 集群管理

  2. 选择你创建的集群,并点击 Explore

  3. 点击服务发现  Ingresses

  4. 点击创建

  5. 在选择命名空间时,你需要选择在创建 deployment 时使用的命名空间。否则,在步骤8中选择目标服务时,你的 deployment 会不可用。

  6. 输入名称,例如 hello

  7. 指定路径,例如 /hello

  8. 目标服务字段的下拉菜单中,选择你为服务设置的名称。

  9. 端口字段中的下拉菜单中,选择 80

  10. 点击右下角的创建

结果:应用分配到了一个 sslip.io 地址并暴露。这可能需要一两分钟。

查看应用

Deployments 页面中,找到你 deployment 的 endpoint 列,然后单击一个 endpoint。可用的 endpoint 取决于你添加到 deployment 中的端口配置。如果你看不到随机分配端口的 endpoint,请将你在创建 Ingress 时指定的路径尾附到 IP 地址上。例如,如果你的 endpoint 是 xxx.xxx.xxx.xxxhttps://xxx.xxx.xxx.xxx,把它修改为 xxx.xxx.xxx.xxx/hellohttps://xxx.xxx.xxx.xxx/hello

应用将在另一个窗口中打开。

已完成!

恭喜!你已成功通过 Ingress 部署工作负载。

后续操作

使用完沙盒后,你需要清理 Rancher Server 和集群。