繁体   English   中英

从ACS引擎Kubernetes群集中提取图像并连接到它

[英]Pull image from and connect to the ACS Engine Kubernetes Cluster

对于当前环境,我已经创建了一个物料和多个代理(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节点需要执行哪些步骤?

我可以知道如何成功拉出图像吗?

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

根据您的描述,您已经在具有Windows节点的Azure上部署了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容器的更多信息,请参考此链接

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

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

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

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM