从ACS Engine Kubernetes Cluster中提取图像并连接到ACS Engine Kubernetes Cluster

时间:2017-07-17 07:42:29

标签: azure kubernetes azure-container-service

对于我目前的环境,我创建了一个mater和几个代理(windows容器)。 问题出现了:

  1. 当ssh进入主人时,我试图拉动图像,但结果却出现了这种现象。我可以知道如何成功拉出图像? azureuser@k8s-master-0000000-0:~$ docker pull microsoft/iis Using default tag: latest latest: Pulling from microsoft/iis 3889bb8d808b: Retrying in 1 second e29afd68a947: Downloading 4c670d580638: Download complete d9f92ede2908: Download complete ad1e133a7ea1: Download complete e0a8179d5f31: Download complete unknown blob

  2. 连接到Windows节点需要哪些步骤?

1 个答案:

答案 0 :(得分:0)

  

我可以知道如何成功提取图像吗?

您正在Linux命令行上使用docker来拉取窗口图像。众所周知,关于Linux和Windows的容器不同。问题是您没有以windows / amd身份运行服务器,因此系统将返回unknown blob

根据您的描述,您已在Azure上使用Windows节点部署ACS。 Kubernetes是一个用于管理容器的工具,因此我们可以使用k8s将IIS部署到Windows节点 1.创建iis.json文件,如下所示:

{
 "apiVersion": "v1",
 "kind": "Pod",
 "metadata": {
   "name": "iis",
   "labels": {
     "name": "iis"
   }
 },
 "spec": {
   "containers": [
     {
       "name": "iis",
       "image": "nanoserver/iis",
       "ports": [
         {
         "containerPort": 80
         }
       ]
     }
   ],
   "nodeSelector": {
    "beta.kubernetes.io/os": "windows"
    }
  }
}

2.使用kubctl apply命令创建pod,如下所示:

kubectl apply -f iis.json

有关如何使用k8s部署Windows IIS容器的更多信息,请参阅此link

  

连接到Windows节点需要哪些步骤??

默认情况下,我们要登录这些节点,我们应该通过kubernetes管理容器,因此Azure创建没有公共IP地址的节点。

如果要连接k8s节点并在其上部署IIS容器,我们可以在本地PC和Azure vnet之间部署点对站VPN 。但我不推荐它,因为这样,我们只使用k8s集群工作作为单个VM,容器工作将没有HA,如果容器关闭,k8s集群将不会创建另一个以保持可用。