[英]Pull image from and connect to the ACS Engine Kubernetes Cluster
对于当前环境,我已经创建了一个物料和多个代理(Windows容器)。 问题来了:
当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
连接到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.