Powershell Kubernetes ACS引擎:容器(吊舱)不能访问internet

Powershell Kubernetes ACS引擎:容器(吊舱)不能访问internet,powershell,azure,unix,docker,kubernetes,Powershell,Azure,Unix,Docker,Kubernetes,我使用的是Kubernetes群集,使用部署在Azure上的。我的集群由5个节点组成 1个主机(unix虚拟机)(v1.6.2) 2 unix代理(v1.6.2) 2个windows代理(v1.6.0-alpha.1.2959+451473d43a2072) 我创建了一个由以下YAML定义的unix pod: Name: ping-with-unix Node: k8s-linuxpool1-25103419-0/10.240.0.5 Start Ti

我使用的是Kubernetes群集,使用部署在Azure上的。我的集群由5个节点组成

  • 1个主机(unix虚拟机)(v1.6.2)
  • 2 unix代理(v1.6.2)
  • 2个windows代理(v1.6.0-alpha.1.2959+451473d43a2072)
我创建了一个由以下YAML定义的unix pod

Name:           ping-with-unix
Node:           k8s-linuxpool1-25103419-0/10.240.0.5
Start Time:     Fri, 30 Jun 2017 14:27:28 +0200
Status:         Running
IP:             10.244.2.6
Controllers:    <none>
Containers:
  ping-with-unix-2:
    Container ID:       
    Image:              willfarrell/ping
    Port:
    State:              Running
      Started:          Fri, 30 Jun 2017 14:27:29 +0200
    Ready:              True
    Restart Count:      0
    Environment:
      HOSTNAME: google.com
    Mounts:
      /var/run/secrets/kubernetes.io/serviceaccount from default-token-1nrh5 (ro)
Conditions:
  Type          Status
  Initialized   True
  Ready         True
  PodScheduled  True
Volumes:
  default-token-1nrh5:
    Type:       Secret (a volume populated by a Secret)
    SecretName: default-token-1nrh5
    Optional:   false
QoS Class:      BestEffort
Node-Selectors: beta.kubernetes.io/os=linux
Tolerations:    <none>
Events:         <none>
我创建了第二个pod,目标是windows容器,带有自定义docker图像。此映像实例化HttpClient并请求端点。它也没有互联网接入。我可以访问容器以运行交互式PowerShell。我无法访问任何DNS(由于无法访问internet)

我必须配置什么才能允许我的容器访问internet?

备注:我尚未定义任何网络策略。

我已使用api版本“2017-07-01”和kubernetes版本“1.6.6”更新了我的群集。我的unix和windows播客都可以访问Internet

2017-06-30T12:27:29.512885000Z ping google.com every 300 sec
2017-06-30T12:27:29.521968000Z PING google.com (172.217.17.78): 56 data bytes
2017-06-30T12:27:39.698081000Z --- google.com ping statistics ---
2017-06-30T12:27:39.698305000Z 1 packets transmitted, 0 packets received, 100% packet loss
PS C:\app> ping github.com
Ping request could not find host github.com. Please check the name and try again.
PS C:\app> ping 192.30.253.112

Pinging 192.30.253.112 with 32 bytes of data:
Request timed out.
Request timed out.

Ping statistics for 192.30.253.112:
    Packets: Sent = 2, Received = 0, Lost = 2 (100% loss),
Control-C
注意,对于Windows播客:

  • pod启动2或3分钟后,互联网可用
  • 我无法将DnsPolicy设置为“Default”,只有“ClusterFirst”或“ClusterFirstWithHostNet”有效

您使用的群集定义是什么,以及ACS引擎的哪个版本?启用CNI的群集没有出站internet连接时出现问题。我已从自定义文件。我只覆盖了dnsPrefix、adminPassword、linuxProfile/ssh/publicKeys/keyData值和servicePrincipalProfile值。ACS引擎是在我的环境中使用git commit 449615c8cce1e43f00b9386b3d7f6f4327a54b77(来自Azure/issue template update的合并请求#712)从存储库编译的。我注意到中的“临时解决方案”部分,但我的资源组已经为创建的唯一子网定义了路由表。