本文介绍容器服务Swarm集群相关的网络配置类标签。
Swarm标签名 | Swarm标签含义 | 对应 Kubernetes配置方案 | Swarm配置示例 | Kubernetes配置示例 | 如何迁移 |
---|---|---|---|---|---|
net | V1 版compose文件格式,设置网络模式,同docker命令行参数--net;参见net。 | 部分值,可以直接转换,部分值在 Kubernetes不支持定制,其中:net: host可直接转换为hostNetwork: true,其余值在Kubernetes里面不支持。参见Host namespaces。 | 请参见net的Swarm配置示例。 | 请参见net的Kubernetes配置示例。 |
手动迁移: kompose转换后,需要手动修改不支持的资源配置。 |
aliyun.routing.port_ |
|
对应Kubernetes ingress,但 kompose工具支持部分转换,但转换过程只支持转换第一个域名,后续域名规则需人工添加,且针对测试域名需要人工替换。参见Ingress 支持。 | 请参见aliyun.routing.port_的Swarm配置示例。 | 请参见aliyun.routing.port_的Kubernetes配置示例。 |
kompose自动迁移或手动修复。 手动修复:
|
aliyun.routing.session_sticky | 设置routing在做请求路由的时候,是否保持session sticky,即会话保持。
说明 此标签必须和
routing 配合使用,单独使用无效。
|
Kubernetes不支持,迁移忽略。 | 略 | 略 | 无法迁移。 |
hostname | 可用作跨Node容器间访问(基于DNS+LB),常用于跨服务访问。 | 转换成service的方式,实现跨容器访问;参见创建服务。 | 请参见hostname的Swarm配置示例。 | 请参见hostname的Kubernetes配置示例。 |
手动迁移:
说明 由于Kubernetes Service名只支持小写和中划线-。如果hostname、links、external_links等带有其它字符如.local这类带
. 字符的,迁移Kubernetes时,只能修改应用代码适配。
|
links |
|
|
请参见links的Swarm配置示例。 | 请参见links的Kubernetes配置示例。 | |
external_links | 将两个服务链接起来,使之可以通信;其相对links标签来说,支持链接到其它编排文件或其它方式创建的容器。 |
Kubernetes只支持通过service方式来实现跨容器访问;且 service对应的后端容器必须由Kubernetes管理。 迁移方案:
|
请参见external_links的Swarm配置示例。 | 请参见external_links的Kubernetes配置示例。 | |
|
设置该服务直接链接到外部地址。
|
对应Kubernetes的headless service,参见Headless services。 | 请参见external:***的Swarm配置示例。 | 请参见external:***的Kubernetes配置示例。 |
手动迁移:
|
aliyun.lb.port_* | 通过自定义阿里云负载均衡 na映射的方式来暴露服务端口到公网或者到内网。参见负载均衡路由。 | 通过LoadBalancer(类似于Swarm集群的负载均衡)访问服务。参见通过负载均衡(Server Load Balancer)访问服务。 | 请参见aliyun.lb.port_*的Swarm配置示例。 | 请参见aliyun.lb.port_*的Kubernetes配置示例。 |
手动迁移: 部署后,通过Kubernetes LoadBalancer(类似于Swarm集群的负载均衡)访问服务。参见通过负载均衡(Server Load Balancer)访问服务。
说明
|
dns | 指定容器上游DNS服务器 | 对应Kubernetes的Pod级别的DNS配置,详细参见Pod’s DNS Config。
说明 如果指定了 DNS,则对应的Service名称的解析可能会失效。
|
请参见dns的Swarm配置示例。 | 请参见dns的Kubernetes配置示例。 |
手动迁移: kompose转换后,修改该应用对应资源文件*-deployment.yaml,添加 dnsConfig配置。 |
net
Swarm配置示例 | Kubernetes配置示例 |
---|---|
![]() |
![]() 详细配置,请参见logtail2-daemonset.yaml 。 |
aliyun.routing.port_
Swarm配置示例 | Kubernetes配置示例 |
---|---|
![]() |
![]() 详细配置,请参见 gateway-ingress.yaml。 |
hostname
Swarm配置示例 | Kubernetes配置示例 |
---|---|
![]() |
![]() 说明 通过控制台创建一个同名(标注1)的service用于服务访问,服务端口为容器端口。
|
links
Swarm配置示例 | Kubernetes配置示例 |
---|---|
![]() |
![]() 说明 通过控制台分别创建一个同名的service用于服务访问。
|
external_links
Swarm配置示例 | Kubernetes配置示例 |
---|---|
![]() |
![]() 说明 通过控制台创建一个同名的service用于服务访问。
|
external:***
external:***标签的全部显示如下。
external:
host: $RDS_URL
ports:
- 3306
Swarm配置示例 | Kubernetes配置示例 |
---|---|
![]() |
![]() 详细配置,请参见account-db-service.yaml。 |
aliyun.lb.port_*
Swarm配置示例 | Kubernetes配置示例 |
---|---|
![]() |
![]() |
dns
Swarm配置示例 | Kubernetes配置示例 |
---|---|
![]() |
![]() 详细配置,请参见logtail2-daemonset.yaml 。 |
在文档使用中是否遇到以下问题
更多建议
匿名提交