在允许列表中打开所需的端口和 IP 地址
经典集群
此允许列表信息仅适用于经典集群。 对于 VPC 群集,请参阅 在允许列表中为 VPC 群集打开所需的端口和 IP 地址。
查看这些情况,您可能需要在允许列表中为 IBM Cloud® Kubernetes Service 集群打开特定端口和 IP 地址。
- 企业允许列表:如果企业网络策略阻止通过代理或允许列表从本地系统访问公共端点,则必须允许从本地系统运行
ibmcloud
,ibmcloud ks
,ibmcloud cr
,kubectl
和calicoctl
命令。 - 网关设备允许列表:如果在 IBM Cloud 基础架构帐户(如 VRA)的公共或专用网络上设置了允许列表,则必须打开 IP 范围、端口和协议,以允许工作节点与主控设备、基础架构资源和其他 IBM Cloud 服务通信。 此外,还可以打开端口以允许入局流量流至公开集群中应用程序的服务。
- Calico 网络策略:如果使用 网络策略作为限制所有工作节点出口的允许列表,则必须允许工作节点访问群集运行所需的资源。Calico
- 其他服务或网络允许列表:要允许群集访问在 IBM Cloud 内部或外部或内部网络中运行并受允许列表保护的服务,必须在允许列表中添加工作节点的 IP 地址。
在企业允许列表中打开端口
如果企业网络策略阻止通过代理或允许列表从本地系统访问公共端点,则必须允许从本地系统运行 ibmcloud
, ibmcloud ks
, 和 ibmcloud cr
命令、kubectl
指令 和 calicoctl
指令。
从允许列表后面运行 ibmcloud
、ibmcloud ks
和 ibmcloud cr
命令
如果企业网络策略阻止本地系统通过代理或允许列表访问公共端点,要运行 ibmcloud
、ibmcloud ks
和 ibmcloud cr
命令,必须允许 IBM Cloud、IBM Cloud Kubernetes Service 和 IBM Cloud Container Registry 的 TCP 访问。
-
在允许列表中允许通过 443 端口访问
cloud.ibm.com
。 -
通过此 API 端点登录到 IBM Cloud 来验证连接。
ibmcloud login -a https://cloud.ibm.com/
-
在允许列表中允许通过 443 端口访问
containers.cloud.ibm.com
。 -
验证连接。 如果访问配置正确,则会在输出中显示区段。
curl https://containers.cloud.ibm.com/v1/zones
示例输出
[{"id":"mon01","metro":""},{"id":"tor01","metro":""},{"id":"wdc04","metro":"Washington D.C."},{"id":"wdc06","metro":"Washington D.C."},{"id":"wdc07","metro":"Washington D.C."}]
-
允许访问您计划在允许列表中的端口 443 上使用的 IBM Cloud Container Registry 区域。 全局注册表存储 IBM 提供的公共映像,区域注册表存储您自己的专用或公共映像。
-
通过 列出容器注册表名称空间来验证连接。
从允许列表后面运行 kubectl
命令
如果企业网络策略阻止本地系统通过代理或允许列表访问公共端点,要运行 kubectl
命令,必须允许群集访问 TCP。
创建群集时,服务端点 URL 中的端口会在 30000-32767 范围内随机分配。 您可以选择为任何可能创建的群集开放端口范围 30000-32767,也可以选择允许特定现有群集访问。
开始之前,允许访问以运行 ibmcloud ks
命令。
要允许访问特定集群:
-
登录到 IBM Cloud CLI。 根据提示,输入您的 IBM Cloud 凭证。 如果您有联合帐户,请包括
--sso
选项。ibmcloud login [--sso]
-
如果集群位于非
default
资源组中,请将该资源组设定为目标。 要查看每个集群所属的资源组,请运行ibmcloud ks cluster ls
。 注:对于该资源组,您必须至少具有查看者角色。ibmcloud target -g <resource_group_name>
-
获取集群的名称。
ibmcloud ks cluster ls
-
检索集群的服务端点 URL。
- 如果仅填充了公共服务端点 URL,请获取此 URL。 授权集群用户可以通过公用网络上的此端点来访问主节点。
- 如果仅填充了专用服务端点 URL,请获取此 URL。 授权集群用户可以通过专用网络上的此端点来访问主节点。
- 如果同时填充了公共服务端点 URL 和专用服务端点 URL,请获取这两个 URL。 授权集群用户可以通过公用网络上的公共端点或专用网络上的专用端点来访问主节点。
ibmcloud ks cluster get --cluster <cluster_name_or_ID>
示例输出
... Public Service Endpoint URL: https://c3.<region>.containers.cloud.ibm.com:30426 Private Service Endpoint URL: https://c3-private.<region>.containers.cloud.ibm.com:31140 ...
-
允许访问在上一步中获得的服务端点 URL 和端口。 如果允许列表是基于 IP 的,则可以通过查看 此表,了解允许访问服务端点 URL 时打开的 IP 地址。
-
验证连接。
-
如果公共云服务端点已启用:
curl --insecure <public_service_endpoint_URL>/version
示例命令:
curl --insecure https://c3.<region>.containers.cloud.ibm.com:31142/version
示例输出
{ "major": "1", "minor": "7+", "gitVersion": "v1.7.4-2+eb9172c211dc41", "gitCommit": "eb9172c211dc4108341c0fd5340ee5200f0ec534", "gitTreeState": "clean", "buildDate": "2017-11-16T08:13:08Z", "goVersion": "go1.8.3", "compiler": "gc", "platform": "linux/amd64" }
-
如果启用了私有云服务端点,您必须在 IBM Cloud 私有网络中或通过 VPN 连接到私有网络,以验证您与主站的连接。 注:您必须通过专用负载均衡器公开主节点端点,以便用户可以通过 VPN 或 IBM Cloud® Direct Link 连接访问主节点。
curl --insecure <private_service_endpoint_URL>/version
示例命令:
curl --insecure https://c3-private.<region>.containers.cloud.ibm.com:31142/version
示例输出
{ "major": "1", "minor": "7+", "gitVersion": "v1.7.4-2+eb9172c211dc41", "gitCommit": "eb9172c211dc4108341c0fd5340ee5200f0ec534", "gitTreeState": "clean", "buildDate": "2017-11-16T08:13:08Z", "goVersion": "go1.8.3", "compiler": "gc", "platform": "linux/amd64" }
-
-
可选:对您需要显示的每个集群重复上述步骤。
从允许列表后面运行 calicoctl
命令
如果企业网络策略阻止本地系统通过代理或允许列表访问公共端点,要运行 calicoctl
命令,就必须允许 TCP 访问 Calico 命令。
开始之前,允许访问以运行 ibmcloud
命令和 kubectl
命令。
-
从用于允许
kubectl
命令的主 URL 中检索 IP 地址。 -
获取 etcd 的端口。
kubectl get cm -n kube-system cluster-info -o yaml | grep etcd_host
-
允许通过主 URL IP 地址和 etcd 端口访问 Calico 策略。
在网关设备允许列表中打开端口
如果在 IBM Cloud 基础架构账户(如 Virtual Router Appliance (Vyatta))的 公共网络 或 专用网络 上设置了 allowlists,则必须打开 IP 范围、端口和协议,以便让工作节点与主控节点、基础架构资源和其他 IBM Cloud 服务通信。
在公共允许列表中打开所需的端口
如果在 IBM Cloud 基础架构账户(如 Virtual Router Appliance (Vyatta))中有一个公共网络允许列表,则必须在允许列表中打开 IP 范围、端口和协议,以允许工作节点与主控节点、基础架构资源和其他 IBM Cloud 服务通信。
开始之前,请注意群集中每个工作节点的公共 IP 地址。
ibmcloud ks worker ls --cluster <cluster_name_or_ID>
允许工作程序节点与集群主节点通信
要允许工作节点通过公共云服务端点与群集主控通信,请允许从源到目标 TCP/UDP 端口范围 30000-32767 和端口 443 以及以下 IP 地址和网络组的出站网络流量 <each_worker_node_publicIP> 到目的地的 TCP/UDP 端口范围 30000-32767 和端口 443,以及以下 IP 地址和网络组。
此表正在移动。 有关最新 IP 列表和持续更新,请参阅 IBM/kube-samples
存储库中的公用网络隔离文件夹。 您可以 监视 存储库中的拉取请求以获取更新。
TCP/UDP port range 30000-32767, port 443 FROM <each_worker_node_publicIP> TO <public_IPs>
- 将 <public_IPs> 替换为群集所在地区的公共 IP 地址。
区域 | 公共 IP 地址 |
---|---|
AP North (che01 , sng01 , tok02 , tok04 , tok05 ) |
119.81.194.90 , 119.81.222.210 , 128.168.106.194 , 128.168.71.117 , 128.168.75.194 , 128.168.85.154 , 135.90.69.66 , 135.90.69.82 , 161.202.126.210 ,
161.202.154.10 , 161.202.186.226 , 161.202.56.10 , 161.202.57.34 , 165.192.69.69 , 165.192.80.146 , 165.192.83.202 , 165.192.95.90 ,
169.38.68.178 , 169.38.70.10 , 169.38.79.170 , 169.56.1.162 , 169.56.132.234 , 169.56.48.114 , 169.56.69.242 , 169.56.96.42 , 104.94.220.124 ,
104.94.221.124 , 104.94.222.132 , 104.94.223.132 , 104.96.176.124 , 104.96.177.124 , 104.96.178.126 , 104.96.179.126 , 104.96.180.123 ,
104.96.181.123 |
AP 南部 (syd01 ,syd04 ,syd05 ) |
130.198.64.19 , 130.198.66.26 , 130.198.79.170 , 130.198.83.34 , 130.198.102.82 , 135.90.66.2 , 135.90.68.114 , 135.90.69.66 , 135.90.69.82 ,
135.90.89.234 , 168.1.6.106 , 168.1.8.195 , 168.1.12.98 , 168.1.39.34 , 168.1.58.66 , 104.94.220.125 , 104.94.221.125 , 104.94.222.133 ,
104.94.223.133 , 104.96.176.125 , 104.96.177.125 , 104.96.178.127 , 104.96.179.127 , 104.96.180.124 , 104.96.181.124 |
欧盟中心 (ams03 ,mil01 ,par01 ,fra02 ,fra04 ,fra05 ) |
149.81.103.98 , 149.81.104.122 , 149.81.113.154 , 149.81.123.18 , 149.81.142.90 , 149.81.180.114 , 149.81.180.122 , 149.81.68.2 , 149.81.78.114 ,
158.177.102.162 , 158.177.107.50 , 158.177.112.146 , 158.177.138.138 , 158.177.151.2 , 158.177.156.178 , 158.177.198.138 , 158.177.79.34 ,
159.122.141.69 , 159.122.150.2 , 159.8.79.250 , 159.8.86.149 , 159.8.95.34 , 161.156.115.138 , 161.156.120.74 , 161.156.12.82 , 161.156.183.218 ,
161.156.187.226 , 161.156.65.42 , 161.156.65.82 , 161.156.74.10 , 161.156.79.26 , 169.50.146.82 , 169.50.169.110 , 169.50.184.18 , 169.50.56.174 ,
169.51.197.18 , 104.94.220.127 , 104.94.221.127 , 104.94.222.135 , 104.94.223.135 , 104.96.176.127 , 104.96.177.127 , 104.96.178.129 ,
104.96.179.129 , 104.96.180.126 , 104.96.181.126 |
马德里 (mad02 ,mad04 ,mad05 ) |
13.120.65.98 , 13.120.127.250 , 13.121.64.178 , 13.121.64.186 , 13.122.65.10 , 13.122.65.34 , 2.18.48.89 , 2.18.49.89 , 2.18.50.89 ,
2.18.51.89 , 2.18.52.89 , 2.18.53.89 , 2.18.54.89 , 2.18.55.89 , 23.40.100.89 , 23.7.244.89 |
大坂 (osa21 ,osa22 ,osa23 ) |
163.68.69.114 , 163.68.69.122 , 163.69.65.114 , 163.69.65.122 , 163.73.64.250 , 163.73.65.194 , 104.94.220.131 , 104.94.221.131 , 104.94.222.139 ,
104.94.223.139 , 104.96.176.131 , 104.96.177.131 , 104.96.178.133 , 104.96.179.133 , 104.96.180.130 , 104.96.181.130 |
圣保罗 (sao01 ,sao04 ,sao05 ) |
163.107.65.194 , 163.107.65.202 , 163.109.65.154 , 163.109.65.242 , 169.57.159.130 , 169.57.254.50 , 104.94.220.129 , 104.94.221.129 ,
104.94.222.137 , 104.94.223.137 , 104.96.176.129 , 104.96.177.129 , 104.96.178.131 , 104.96.179.131 , 104.96.180.128 , 104.96.181.128 |
多伦多 (tor01 ,tor04 和 tor05 ) |
158.85.77.114 , 158.85.110.18 , 163.74.65.242 , 163.74.65.250 , 163.75.64.122 , 163.75.64.162 , 104.94.220.132 , 104.94.221.132 , 104.94.222.140 ,
104.94.223.140 , 104.96.176.132 , 104.96.177.132 , 104.96.178.134 , 104.96.179.134 , 104.96.180.131 , 104.96.181.131 |
英国南部 (lon02 ,lon04 ,lon05 ,lon06 ) |
141.125.102.106 , 141.125.66.26 , 141.125.67.34 , 141.125.77.58 , 141.125.91.138 , 158.175.111.42 , 158.175.125.194 , 158.175.139.130 ,
158.175.150.122 , 158.175.65.170 , 158.175.77.178 , 158.175.82.50 , 158.176.123.130 , 158.176.135.242 , 158.176.142.26 , 158.176.149.154 ,
158.176.71.242 , 158.176.94.26 , 158.176.95.146 , 159.122.224.242 , 159.122.242.78 , 104.94.220.126 , 104.94.221.126 , 104.94.222.134 ,
104.94.223.134 , 104.96.176.126 , 104.96.177.126 , 104.96.178.128 , 104.96.179.128 , 104.96.180.125 , 104.96.181.125 |
美国东部 (mon01 ,wdc04 ,wdc06 ,wdc07 ) |
158.85.97.34 , 169.47.162.130 , 169.47.174.106 , 169.53.167.50 , 169.53.171.210 , 169.54.126.219 , 169.54.80.106 , 169.54.94.26 , 169.60.100.242 ,
169.60.101.42 , 169.60.111.58 , 169.60.73.142 , 169.60.92.50 , 169.60.92.66 , 169.61.109.34 , 169.61.110.66 , 169.61.74.210 , 169.61.83.62 ,
169.62.10.162 , 169.62.9.250 , 169.63.106.50 , 169.63.111.82 , 169.63.149.122 , 169.63.158.82 , 169.63.160.130 , 169.63.66.226 , 169.63.75.82 ,
169.63.88.178 , 169.63.88.186 , 169.63.94.210 , 52.117.72.42 , 52.117.88.42 , 104.94.220.128 , 104.94.221.128 , 104.94.222.136 , 104.94.223.136 ,
104.96.176.128 , 104.96.177.128 , 104.96.178.130 , 104.96.179.130 , 104.96.180.127 , 104.96.181.127 |
美国南部 (sjc03 ,sjc04 ,dal10 ,dal12 ,dal13 ) |
50.22.129.34 , 52.116.231.210 , 52.116.254.234 , 52.116.54.122 , 52.117.197.210 , 52.117.212.34 , 52.117.215.162 , 52.117.232.194 , 52.117.240.106 ,
52.117.28.138 , 67.228.97.210 , 169.45.126.154 , 169.45.67.210 , 169.45.88.98 , 169.46.110.218 , 169.46.111.122 , 169.46.16.202 , 169.46.24.210 ,
169.46.27.234 , 169.46.63.250 , 169.46.68.234 , 169.46.7.238 , 169.46.89.50 , 169.47.109.34 , 169.47.115.18 , 169.47.201.194 , 169.47.209.66 ,
169.47.229.90 , 169.47.232.210 , 169.47.239.34 , 169.47.242.242 , 169.47.70.10 , 169.47.71.138 , 169.48.110.250 , 169.48.143.218 , 169.48.161.242 ,
169.48.226.2 , 169.48.230.146 , 169.48.244.66 , 169.57.100.18 , 169.57.13.10 , 169.57.147.58 , 169.57.151.10 , 169.57.154.98 , 169.59.219.90 ,
169.59.223.194 , 169.59.230.98 , 169.60.128.2 , 169.60.170.234 , 169.61.175.106 , 169.61.177.2 , 169.61.187.58 , 169.61.228.138 , 169.61.28.66 ,
169.61.29.194 , 169.61.60.130 , 169.62.166.98 , 169.62.189.26 , 169.62.206.234 , 169.62.230.114 , 169.62.82.197 , 169.62.87.170 , 169.62.97.218 ,
169.63.39.66 , 169.63.47.250 , 104.94.220.130 , 104.94.221.130 , 104.94.222.138 , 104.94.223.138 , 104.96.176.130 , 104.96.177.130 ,
104.96.178.132 , 104.96.179.132 , 104.96.180.129 , 104.96.181.129 |
允许工作程序节点与 IBM Cloud Container Registry 通信
允许从工作节点向 IBM Cloud Container Registry 发送网络流量。 有关更多信息,请参阅 通过防火墙访问 IBM Cloud Container Registry。
允许从工作程序节点到 IAM 的传出网络流量
允许出局网络流量从工作程序节点流至 IBM Cloud Identity and Access Management (IAM)。 您的 allowlist 必须是第 7 层,以允许 IAM 域名。 IAM 没有允许使用的特定 IP 地址。 如果允许列表不支持第 7 层,则可以允许端口 443 上的所有 HTTPS 网络流量。
TCP port 443 FROM <each_worker_node_publicIP> TO https://iam.bluemix.net
TCP port 443 FROM <each_worker_node_publicIP> TO https://iam.cloud.ibm.com
可选:允许从工作节点向 Monitoring 和 IBM Cloud Logs 服务发送网络流量
-
IBM Cloud Monitoring:
TCP port 443, port 6443 FROM <each_worker_node_public_IP> TO <monitoring_public_IP>
- 将 <monitoring_public_IP> 替换为 Monitoring IP 地址。
-
IBM Cloud Logs:
TCP port 443, port 80 FROM <each_worker_node_public_IP> TO <logging_public_IP>
- 将 <logging_public_IP> 替换为 IBM Cloud Logs IP 地址。
可选: 允许受管 Istio 附加组件的入局和出局网络流量
- 允许来自
istio-egressgateway
负载均衡器的传出网络流量通过以下端口:TCP port 80, port 15443 FROM <each_worker_node_publicIP>
- 允许通过以下端口传入到
istiod
控制平面和istio-ingressgateway
负载均衡器的网络流量:TCP port 443, port 853, port 15010, port 15012, port 15014 FROM <each_worker_node_publicIP>
后续步骤
如果使用负载均衡器服务,请确保在公共接口和专用接口上的工作程序节点之间允许使用 VRRP 协议的所有流量。IBM Cloud Kubernetes Service 使用 VRRP 协议来管理公共和专用负载均衡器的 IP 地址。
在私人允许列表中打开所需的端口
如果在 IBM Cloud 基础架构账户(如 Virtual Router Appliance (Vyatta))中的私有网络上有一个允许列表,则必须在允许列表中打开 IP 范围、端口和协议,以允许工作节点与主控节点、工作节点之间、工作节点与基础架构资源以及其他 IBM Cloud 服务进行通信。
准备工作
-
允许 IBM Cloud 基础架构专用 IP 范围,从而可在集群中创建工作程序节点。
- 允许相应的 IBM Cloud 基础架构专用 IP 范围。 请参阅后端(专用)网络。
- 允许 IBM Cloud 基础设施为您使用的所有 区域 提供专用 IP 范围。 注意:您必须添加
166.8.0.0/14
和161.26.0.0/16
IP 范围、dal10
和wdc04
区域的 IP 范围。 请参阅服务网络(在后端/专用网络上)。
-
记下集群中每个工作程序节点的专用 IP 地址。
ibmcloud ks worker ls --cluster <cluster_name_or_ID>
允许工作程序节点与集群主节点通信
要允许工人节点通过私有云服务端点与群集主控通信,请允许从源到目标 TCP/UDP 端口范围 30000-32767 和端口 443 以及以下 IP 地址和网络组的出站网络流量 <each_worker_node_privateIP> 到目的地的 TCP/UDP 端口范围 30000-32767 和端口 443,以及以下 IP 地址和网络组。
此表正在移动。 有关最新 IP 列表和持续更新,请参阅 IBM/kube-samples
存储库中的专用网络隔离文件夹。 您可以 监视 存储库中的拉取请求以获取更新。
TCP/UDP port range 30000-32767, port 443 FROM <each_worker_node_privateIP> TO <private_IPs>
- 将 <private_IPs> 替换为群集所在地区的专用 IP 地址。
区域 | 专用 IP 地址 |
---|---|
AP North (che01 , sng01 , tok02 , tok04 , tok05 ) |
166.9.40.102 , 166.9.40.21 , 166.9.40.36 , 166.9.40.39 , 166.9.40.6 , 166.9.40.7 , 166.9.40.8 , 166.9.40.88 , 166.9.42.23 ,
166.9.42.28 , 166.9.42.55 , 166.9.42.6 , 166.9.42.7 , 166.9.42.97 , 166.9.44.15 , 166.9.44.3 , 166.9.44.4 , 166.9.44.47 ,
166.9.44.5 , 166.9.44.88 , 166.9.46.4 , 166.9.60.2 , 166.9.60.4 , 166.9.249.106 , 166.9.249.136 , 166.9.249.170 |
AP 南部 (syd01 ,syd04 ,syd05 ) |
166.9.52.14 , 166.9.52.15 , 166.9.52.23 , 166.9.52.30 , 166.9.52.31 , 166.9.54.11 , 166.9.54.12 , 166.9.54.13 , 166.9.54.21 ,
166.9.54.32 , 166.9.54.33 , 166.9.56.10 , 166.9.56.11 , 166.9.56.16 , 166.9.56.24 , 166.9.56.36 , 166.9.244.107 , 166.9.244.137 ,
166.9.244.171 |
欧盟中心 (ams03 ,mil01 ,par01 ,fra02 ,fra04 ,fra05 ) |
166.9.28.107 , 166.9.28.17 , 166.9.28.19 , 166.9.28.20 , 166.9.28.203 , 166.9.28.22 , 166.9.28.23 , 166.9.28.235 , 166.9.28.24 ,
166.9.28.240 , 166.9.28.43 , 166.9.28.64 , 166.9.28.84 , 166.9.28.87 , 166.9.28.91 , 166.9.28.94 , 166.9.28.95 , 166.9.30.100 ,
166.9.30.11 , 166.9.30.116 , 166.9.30.12 , 166.9.30.13 , 166.9.30.22 , 166.9.30.41 , 166.9.30.54 , 166.9.30.56 , 166.9.30.9 ,
166.9.30.92 , 166.9.32.101 , 166.9.32.185 , 166.9.32.20 , 166.9.32.26 , 166.9.32.27 , 166.9.32.44 , 166.9.32.54 , 166.9.32.56 ,
166.9.32.84 , 166.9.32.88 , 166.9.32.9 , 166.9.248.77 , 166.9.248.106 , 166.9.248.137 |
马德里 (mad02 ,mad04 ,mad05 ) |
166.9.94.6 , 166.9.95.6 , 166.9.96.6 , 166.9.94.7 , 166.9.95.7 , 166.9.96.7 |
大坂 (osa21 ,osa22 ,osa23 ) |
166.9.70.6 , 166.9.70.8 , 166.9.71.8 , 166.9.71.10 , 166.9.72.9 , 166.9.72.10 , 166.9.247.41 , 166.9.247.75 , 166.9.247.107 |
英国南部 (lon02 ,lon04 ,lon05 ,lon06 ) |
166.9.34.17 , 166.9.34.41 , 166.9.34.45 , 166.9.34.5 , 166.9.34.50 , 166.9.34.6 , 166.9.34.77 , 166.9.36.10 , 166.9.36.11 ,
166.9.36.12 , 166.9.36.13 , 166.9.36.23 , 166.9.36.30 , 166.9.36.53 , 166.9.36.65 , 166.9.36.95 , 166.9.38.18 , 166.9.38.28 ,
166.9.38.46 , 166.9.38.54 , 166.9.38.6 , 166.9.38.7 , 166.9.38.75 , 166.9.244.12 , 166.9.244.48 , 166.9.244.75 |
美国东部 (mon01 ,tor01 ,wdc04 ,wdc06 ,wdc07 ) |
166.9.20.11 , 166.9.20.117 , 166.9.20.12 , 166.9.20.13 , 166.9.20.187 , 166.9.20.38 , 166.9.20.42 , 166.9.20.63 , 166.9.20.80 ,
166.9.22.10 , 166.9.22.109 , 166.9.22.211 , 166.9.22.215 , 166.9.22.26 , 166.9.22.43 , 166.9.22.51 , 166.9.22.52 , 166.9.22.8 ,
166.9.22.9 , 166.9.24.19 , 166.9.24.196 , 166.9.24.198 , 166.9.24.22 , 166.9.24.35 , 166.9.24.4 , 166.9.24.45 , 166.9.24.47 ,
166.9.24.5 , 166.9.24.90 , 166.9.68.130 , 166.9.68.134 , 166.9.68.34 , 166.9.68.47 , 166.9.231.217 , 166.9.232.15 , 166.9.251.118 |
美国南部 (sao01 ,sjc03 ,sjc04 ,dal10 ,dal12 ,dal13 ) |
166.9.12.140 , 166.9.12.141 , 166.9.12.142 , 166.9.12.143 , 166.9.12.144 , 166.9.12.151 , 166.9.12.193 , 166.9.12.196 , 166.9.12.26 ,
166.9.12.99 , 166.9.13.31 , 166.9.13.93 , 166.9.13.94 , 166.9.14.122 , 166.9.14.125 , 166.9.14.202 , 166.9.14.204 , 166.9.14.205 ,
166.9.14.95 , 166.9.15.130 , 166.9.15.69 , 166.9.15.70 , 166.9.15.71 , 166.9.15.72 , 166.9.15.73 , 166.9.15.74 , 166.9.15.75 ,
166.9.15.76 , 166.9.16.113 , 166.9.16.137 , 166.9.16.149 , 166.9.16.183 , 166.9.16.184 , 166.9.16.185 , 166.9.16.38 , 166.9.16.39 ,
166.9.16.5 , 166.9.17.2 , 166.9.17.35 , 166.9.17.37 , 166.9.17.39 , 166.9.48.124 , 166.9.48.171 , 166.9.48.175 , 166.9.48.240 ,
166.9.48.35 , 166.9.48.50 , 166.9.48.76 , 166.9.51.104 , 166.9.51.106 , 166.9.51.16 , 166.9.51.54 , 166.9.51.74 , 166.9.58.104 ,
166.9.58.11 , 166.9.58.16 , 166.9.58.170 , 166.9.58.210 , 166.9.58.64 , 166.9.58.65 , 166.9.59.125 , 166.9.59.147 , 166.9.61.15 ,
166.9.61.54 , 166.9.85.114 , 166.9.88.186 , 166.9.88.196 , 166.9.88.21 , 166.9.228.8 , 166.9.229.10 , 166.9.230.9 |
打开端口
在允许列表中打开以下端口,以使工作程序节点正常工作。 以下端口需要打开所有目标 IP。
- 允许从工作程序到端口 80 和 443 的出站 TCP 和 UDP 连接,从而允许工作程序节点更新和重新装入。
- 允许到端口 2049 的出站 TCP 和 UDP,从而允许作为卷安装文件存储器。
- 允许到端口 3260 的出站 TCP 和 UDP,以便与块存储器进行通信。
- 针对 Kubernetes 仪表板和命令,允许到端口 10250 的入站 TCP 和 UDP 连接,例如,
kubectl logs
和kubectl exec
。 - 允许到 TCP 和 UDP 端口 53 的入站和出站连接以用于 DNS 访问。
启用工作程序到工作程序通信
通过允许专用接口上的工作程序节点之间的所有 TCP,UDP,VRRP 和 IPEncap 流量来启用工作程序到工作程序的通信,还允许公共接口上的 VRRP。IBM Cloud Kubernetes Service 使用 VRRP 协议来管理负载均衡器和 IPEncap 协议的 IP 地址,以允许 pod 跨子网进行 pod 流量。
允许工作程序节点与 IBM Cloud Container Registry 通信
要允许工作者节点与 IBM Cloud Container Registry 通信,请允许工作者节点向 IBM Cloud Container Registry 区域 发送网络流量。
TCP port 443 FROM <each_worker_node_privateIP> TO <registry_ip>
- 将
<registry_ip>
替换为要允许流量的注册表 IP 地址。 全局注册表存储 IBM 提供的公共映像,区域注册表存储您自己的专用或公共映像。
在 2022 年 6 月 23 日,只有 br-sao
和 ca-tor
区域已更改。 其余区域在 2022 年 7 月 5 更改。 有关更多信息,请参阅 Container Registry 专用 IP 地址在 5 2022 年 7 月 更改。
IBM Cloud Kubernetes Service 区域 | 注册表地址 | 注册表专用 IP 地址,直到 5 2022 年 7 月 | 5 2022 年 7 月之后的注册表专用 IP 地址 |
---|---|---|---|
跨 IBM Cloud Kubernetes Service 区域的全局注册表 | private.icr.io cp.icr.io |
166.9.20.31, 166.9.22.22, 166.9.24.16 | 166.9.251.49, 166.9.251.82, 166.9.251.113 |
亚太地区北部 | private.jp.icr.io |
166.9.40.20, 166.9.42.21, 166.9.44.12 | 166.9.249.104, 166.9.249.157, 166.9.249.168 |
亚太地区南部 | private.au.icr.io |
166.9.52.20, 166.9.54.19, 166.9.56.13 | 166.9.244.106, 166.9.244.136, 166.9.244.170 |
欧洲中部 | private.de.icr.io |
166.9.28.35, 166.9.30.2, 166.9.32.2 | 166.9.248.76, 166.9.248.105, 166.9.248.136 |
马德里自治区 | private.es.icr.io |
不适用 | 166.9.248.76, 166.9.248.105, 166.9.248.136 |
大板 | private.jp2.icr.io |
166.9.70.4, 166.9.71.5, 166.9.72.6 | 166.9.247.39, 166.9.247.73, 166.9.247.105 |
圣保罗 | private.br.icr.io |
166.9.82.13, 166.9.83.13, 166.9.84.13 | 166.9.246.72, 166.9.246.104, 166.9.246.130 |
多伦多 | private.ca.icr.io |
166.9.76.12, 166.9.77.11, 166.9.78.11 | 166.9.247.143, 166.9.247.170, 166.9.247.207 |
英国南部 | private.uk.icr.io |
166.9.36.19, 166.9.38.14, 166.9.34.12 | 166.9.244.9, 166.9.244.45, 166.9.244.73 |
美国东部和美国南部 | private.us.icr.io |
166.9.12.227, 166.9.15.116, 166.9.16.244 | 166.9.250.214, 166.9.250.246, 166.9.251.21 |
创建持久卷声明
要在其中工作程序节点仅连接到专用 VLAN 的集群中创建持久卷声明,请确保集群设置为使用以下 Kubernetes 版本或 IBM Cloud 存储插件版本。 这些版本支持从集群到持久性存储器实例的专用网络通信。
存储器类型 | 必需版本 |
---|---|
文件存储器 | Kubernetes 版本,,,,或更高版本 1.13.4_1512 1.12.6_1544 1.11.8_1550 1.10.13_1551 |
块存储器 | IBM Cloud Block Storage V1.3.0 或更高版本插件 |
对象存储器 | IBM Cloud Object Storage 插件版本 1.0.3 或更高版本,IBM Cloud Object Storage 服务通过 HMAC 认证设置 |
如果您必须使用不支持通过专用网络进行网络通信的 Kubernetes 版本或 IBM Cloud 存储插件版本,或者如果您想在没有 HMAC 身份验证的情况下使用 IBM Cloud Object Storage,请通过您的允许列表允许出口访问 IBM Cloud 基础架构和 IBM Cloud Identity and Access Management:
可选:为 IBM Cloud Logs 和 IBM Cloud Monitoring 服务设置允许列表规则
要发送日志和度量数据,请为 IBM Cloud Logs 和 IBM Cloud Monitoring 服务设置 allowlist 规则。
在公共或专用允许列表中打开入站流量的端口
您可以允许入站访问 NodePort、LoadBalancer 和 Ingress 服务。
- NodePort 服务
- 将部署服务时配置的端口开放到所有工作节点的公共或私有 IP 地址上,以允许流量进入。 要查找该端口,请运行
kubectl get svc
。 端口在 20000-32000 范围内。 - LoadBalancer 服务
- 打开将服务部署到 LoadBalancer 服务的公共或专用 IP 地址时所配置的端口。
- Ingress
- 将 HTTP 的 80 端口和 HTTPS 的 443 端口开放到 Ingress 应用程序负载平衡器的公共或专用 IP 地址。
- 路由
- 将 HTTP 的 80 端口和 HTTPS 的 443 端口开放到路由器的公共 IP 地址。
允许集群通过 Calico 网络策略访问资源
您可以选择使用 Calico 网络策略 作为公共或专用网络上的群集允许列表,而不是设置网关允许列表设备。 有关更多信息,请参阅以下主题。
在其他服务的允许列表或本地允许列表中允许来自集群的流量
如果您想访问在 IBM Cloud 内部或外部运行的服务,或者访问受允许列表保护的服务,您可以在允许列表中添加工作节点的 IP 地址,以允许向群集的出站网络流量。 例如,您可能希望从 IBM Cloud 数据库读取受允许列表保护的数据,或者在内部允许列表中指定您的工作节点子网,以允许来自群集的网络流量。
-
获取工作程序节点子网或工作程序节点 IP 地址。
-
工作节点子网:如果您预计会频繁更改群集中的工作节点数量,例如启用 群集自动分压器,您可能不希望为每个新的工作节点更新允许列表。 相反,您可以添加群集使用的 VLAN 子网。 请记住,VLAN 子网可能由其他集群中的工作程序节点共享。 请注意,IBM Cloud Kubernetes Service 为群集提供的主公用子网有 14 个可用 IP 地址,可由同一 VLAN 上的其他群集共享。 当工作节点超过 14 个时,会订购另一个子网,因此需要允许的子网可能会发生变化。 为了减少更改频率,请创建具有较高 CPU 和内存资源的工作程序节点类型模板的工作程序池,这样就不需要经常添加工作程序节点。
-
列出集群中的工作程序节点。
ibmcloud ks worker ls --cluster <cluster_name_or_ID>
-
从上一步的输出中,记下集群中工作程序节点的 Public IP 的所有唯一网络标识(前 3 个八位元)。 如果要允许来自专用群集的流量,请记下专用 IP。 在以下输出中,唯一网络标识为
169.xx.178
和169.xx.210
。ID Public IP Private IP Machine Type State Status Zone Version kube-dal10-crb2f60e9735254ac8b20b9c1e38b649a5-w31 169.xx.178.101 10.xxx.xx.xxx b3c.4x16.encrypted normal Ready dal10 1.32 kube-dal10-crb2f60e9735254ac8b20b9c1e38b649a5-w34 169.xx.178.102 10.xxx.xx.xxx b3c.4x16.encrypted normal Ready dal10 1.32 kube-dal12-crb2f60e9735254ac8b20b9c1e38b649a5-w32 169.xx.210.101 10.xxx.xx.xxx b3c.4x16.encrypted normal Ready dal12 1.32 kube-dal12-crb2f60e9735254ac8b20b9c1e38b649a5-w33 169.xx.210.102 10.xxx.xx.xxx b3c.4x16.encrypted normal Ready dal12 1.32
-
列出每个唯一网络标识的 VLAN 子网。
ibmcloud sl subnet list | grep -e <networkID1> -e <networkID2>
示例输出
ID identifier type network_space datacenter vlan_id IPs hardware virtual_servers 1234567 169.xx.210.xxx ADDITIONAL_PRIMARY PUBLIC dal12 1122334 16 0 5 7654321 169.xx.178.xxx ADDITIONAL_PRIMARY PUBLIC dal10 4332211 16 0 6
-
检索子网地址。 在输出中,找到 IPs 的数量。 然后,使
2
的n
次幂等于 IP 数。 例如,如果 IP 数为16
,那么2
的4
(n
) 次幂等于16
。 现在,从n
位中减去值32
可得到子网 CIDR。 例如,n
等于4
时,CIDR 为28
(公式为32 - 4 = 28
)。 将 identifier 掩码与 CIDR 值组合在一起,即可获得完整的子网地址。 在先前的输出中,子网地址为:169.xx.210.xxx/28
169.xx.178.xxx/28
-
-
单个工作节点 IP 地址:如果有少量工作节点只运行一个应用程序且不需要扩展,或者只想添加一个工作节点,请列出集群中的所有工作节点并注明公共 IP 地址。 如果您的工人节点只连接到私有网络,并且您想通过使用私有云服务端点连接到 IBM Cloud 服务,请注意私有 IP 地址。 只添加这些工作节点。 如果删除工作节点或向群集添加工作节点,则必须相应更新允许列表。
ibmcloud ks worker ls --cluster <cluster_name_or_ID>
-
-
将子网 CIDR 或 IP 地址添加到服务的出站流量允许列表或内部部署的入站流量允许列表中。
-
对要允许流量进出的每个集群重复这些步骤。
更新 Kubernetes Service 网络区域的 IAM 允许列表
缺省情况下,所有 IP 地址都可用于登录到 IBM Cloud 控制台,并执行操作来管理集群,例如创建,更新,删除或查看凭证。 在 IBM Cloud Identity and Access Management (IAM) 控制台中,可以 创建允许列表,指定哪些 IP 地址可以访问,其他所有 IP 地址都受到限制。
在 allowlist 中,您还必须为群集所在区域配置 IBM Cloud Kubernetes Service 控制平面中的网络区域,以便 IBM Cloud Kubernetes Service 可以创建或访问 Ingress ALB 等组件
在开始之前,以下步骤要求您更改用户的 IAM 允许列表,该用户的凭据用于群集的区域和资源组基础结构权限。 如果您是凭证所有者,则可以更改自己的 IAM 允许列表设置。 如果您不是凭证所有者,但为 用户管理服务 分配了编辑器或管理员 IBM Cloud IAM 平台访问角色,则可以更新凭证所有者的网络。
-
确定用于集群的区域和资源组基础架构许可权的用户凭证。
-
检查集群的区域和资源组的 API 密钥。
ibmcloud ks api-key info --cluster <cluster_name_or_ID>
示例输出
Getting information about the API key owner for cluster <cluster_name>... OK Name Email <user_name> <name@email.com>
-
检查区域和资源组的基础架构帐户是否已手动设置为使用其他 IBM Cloud 基础架构帐户。
ibmcloud ks credential get --region <us-south>
凭证设置为使用其他帐户时的输出示例。 在这种情况下,用户的基础架构凭证将用于目标区域和资源组,即使在上一步中检索到的 API 密钥中存储了其他用户的凭证也是如此。
OK Infrastructure credentials for user name <1234567_name@email.com> set for resource group <resource_group_name>.
凭证未设置为使用其他帐户时的输出示例。 在这种情况下,在上一步中检索到的 API 密钥所有者具有用于区域和资源组的基础架构凭证。
FAILED No credentials set for resource group <resource_group_name>.: The user credentials could not be found. (E0051)
-
-
登录到 IBM Cloud 控制台。
-
创建网络区域,其中包括所有区域或仅有群集的区域的 Kubernetes Service IP。
-
在群集所在的账户中,从菜单栏单击 Manage > 基于上下文的限制。
-
单击 Network zones > 创建。
-
在 Name 中,为网络区域输入一个描述性名称,如
us-south-kubernetes-service-network-zone
。 -
不要为 Allowed IP addresses 和 Allowed VPCs 部分输入任何值。
-
在 引用服务部分,选择 Kubernetes Service,然后单击 +。
-
对于 位置,您可以将该字段留空,以便使用所有位置(适用于其他区域的群集),也可以指定单个区域。
-
单击“下一步”并查看选择。
-
单击创建。
-
对其他区重复此操作。
-
-
将网络区域名称添加到 IAM 允许列表中。
-
从菜单栏中,单击管理 > 访问 (IAM),然后选择设置。
-
在 “限制IP地址访问”下,选择 “启用”,并提供上一步骤中获取的网络区域名称。
-
单击应用。
-
获取 Kubernetes Service 子网 IP 地址
执行以下步骤以获取要添加到 IAM 允许列表的正确子网 IP 地址。
在控制台中获取子网 IP 地址
- 从 IBM Cloud 控制台 资源列表中,点击您的集群。
- 单击工人节点。
- 请注意集群中的工作程序节点所使用的每个 公用 VLAN。 多个工作程序节点可能使用相同的公用 VLAN。
- 从 IBM Cloud 控制台菜单中,
,点击基础设施 > 经典基础设施 > IP管理 > VLAN。
- 单击每个公共 VLAN,检查集群中的工作节点是否正在使用它。
- 对于集群中的工作程序节点所使用的每个公用 VLAN,请找到 子网 部分,并记下表中包含的每个 IP 地址。 这些是必须包含在允许列表中的 IP 地址。
在 CLI 中获取子网 IP 地址
-
列出工作程序节点使用的公用 VLAN。 输出的格式为
publicVLAN=<vlan_id>
。kubectl describe nodes | grep publicVLAN | sort | uniq
-
对于每个公用 VLAN,查找关联的公用子网。 在输出中,记下 identifier 列中的子网 IP 地址。
ibmcloud sl subnet list | grep <vlan-id>
与标识为
2761690
的公用 VLAN 关联的子网的输出示例。ID identifier type network_space datacenter vlan_id IPs hardware virtual_servers 1962263 169.62.46.56 SECONDARY_ON_VLAN PUBLIC wdc07 2761690 8 0 0 2008207 169.62.39.248 SECONDARY_ON_VLAN PUBLIC wdc07 2761690 8 0 0 2342562 169.62.2.128 ADDITIONAL_PRIMARY PUBLIC wdc07 2761690 16 0 5
-
列出工作程序节点并获取其公共 IP。 在输出中,公共 IP 列示在 External-IP 列中。 请注意,这些 IP 地址中的哪些包含在先前列示的子网中,并记下这些子网标识。
-
对于每个子网标识,运行命令以获取子网详细信息。 在每个输出中,记下 identifier 列中的 IP 地址。 这是必须添加到 IAM 允许列表的 IP 地址。
ibmcloud sl subnet detail <subnet_id>
示例输出
Name Value ID 2342562 identifier 169.62.2.128/28 subnet type ADDITIONAL_PRIMARY network space PUBLIC gateway 169.62.2.129 broadcast 169.62.2.143 datacenter wdc07 usable ips 13 IP address ID IP address 186531376 169.62.2.128 186531378 169.62.2.129 186531380 169.62.2.130 186531382 169.62.2.131 186531384 169.62.2.132 186531386 169.62.2.133 186531388 169.62.2.134 186531390 169.62.2.135 186531392 169.62.2.136 186531394 169.62.2.137 186531396 169.62.2.138 186531398 169.62.2.139 186531400 169.62.2.140 186531402 169.62.2.141 186531404 169.62.2.142 186531406 169.62.2.143 virtual guests hostname domain public_ip private_ip kube-c8ofi5pw077drsbovf90-roks47class-default-00000187 iks.ibm 169.62.2.130 10.191.55.109 kube-c8ofi5pw077drsbovf90-roks47class-default-000002a2 iks.ibm 169.62.2.133 10.191.55.108 kube-c8ofi5pw077drsbovf90-roks47class-default-00000372 iks.ibm 169.62.2.135 10.191.55.121 kube-c8ofh6kw0jj8l6jovf8g-iks22classi-default-00000219 iks.ibm 169.62.2.132 10.191.55.105 kube-c8ofh6kw0jj8l6jovf8g-iks22classi-default-0000012f iks.ibm 169.62.2.134 10.191.55.107