Azure ACS Kubernetes Windows Containers延迟了对Internet的访问

时间:2017-04-20 18:16:08

标签: azure kubernetes azure-acs windows-server-container

我在昨天4/19/17使用Azure门户为Windows容器创建了一个Azure ACS。我发现每当我部署它时,容器就无法上网2-3分钟。我登录到其中一个节点,手动从同一个图像创建了一个容器,它可以立即访问互联网。

我看到的一个区别是kubernetes拥有的容器包含一个额外的transparentNet,其中普通的docker容器只有一个nat网络。

这是我正在运行的测试代码

 static void Main(string[] args)
    {
        var connectedStopWatch = new Stopwatch();
        var disconnectedStopWatch = new Stopwatch();
        while (true)
        {
            try
            {
                using (var wc = new WebClient())
                {
                    wc.DownloadString("http://google.com");
                    connectedStopWatch.Start();
                }
                Console.WriteLine($"Connected for {connectedStopWatch.ElapsedMilliseconds} ms");
            }
            catch (WebException e)
            {
                connectedStopWatch.Stop();
                disconnectedStopWatch.Start();
                Console.WriteLine($"Disconnected for {disconnectedStopWatch.ElapsedMilliseconds} ms");
            }
            Thread.Sleep(5000);
        }
    }

Dockerfile

FROM microsoft/windowsservercore
COPY ConnectionTest.exe /
ENTRYPOINT ConnectionTest.exe

有谁知道可能导致从容器访问互联网的延迟?

1 个答案:

答案 0 :(得分:0)

这是此处跟踪的已知问题:https://github.com/Azure/acs-engine/issues/519。我们正在测试此问题的修复程序,但很快就会集成到acs-engine中:https://github.com/JiangtianLi/acs-engine/commits/jiangtli-winnat