问题标签 [azure-container-service]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
azure - 增加 Azure 容器服务中代理/工作节点的磁盘空间
我一直在使用 Azure 容器服务,并且能够成功创建一个使用 Kubernetes 编排的 ACS 集群。我还创建了另一个使用 Docker-Swarm 编排的 ACS 集群。
我的问题与 ACS 创建的代理 VM 的操作系统磁盘有关。默认情况下,所有 OS 磁盘都有 30GB,似乎所有容器映像和容器都存储在 OS 磁盘上。我用大约 15 个容器和大约 10-15 个图像达到了 30 GB 的限制。我在这里做错了吗?
我可以创建具有更多磁盘空间的虚拟机,但该磁盘似乎是另一个挂载。我是否应该进行一些更改以允许编排引擎和 docker 使用非默认驱动器?如果是这样,任何有关这方面的帮助将不胜感激。
同时,我确实设置了一个 Ubuntu VM,默认情况下操作系统驱动器有 30 GB,辅助有 100 GB。我更改了 docker-engine 以使用辅助驱动器安装来存储容器和图像。这涉及到我通过 SSH 连接到机器并更改一些 docker 设置。我不认为我们应该在 ACS 上做类似的事情,因为它是一个 PaaS 产品?
azure-container-service - 在 azure 容器服务中共享数据磁盘/将持久存储添加到 swarm 集群
我想与 swarm 集群中的每个工作人员共享一些数据。有哪些可能的方法可以做到这一点。swarm 是从 docker cloud 与 azure 集成创建的。
我可以将单个数据磁盘附加到 azure swarm 群集中的所有工作虚拟机吗?
azure - 从 ACS Engine Kubernetes 集群中提取映像并连接到该集群
对于我当前的环境,我创建了一个母校和几个代理(windows 容器)。问题来了:
当 ssh 进入 master 时,我尝试拉取图像,但结果失败,出现这种现象。我可以知道如何成功提取图像吗?
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 节点需要哪些步骤?
azure - 使用 ACS-Engine 将现有 Azure VNET 集成到 Kubernetes 集群
由于在 Azure 门户中部署 k8s 集群不允许我将现有的 Azure VENT 附加到它,因此我选择了 ACS-Engine。默认k8s组网环境如下:
我想要实现的是这样的:
为此,我首先创建了一个地址空间为 10.25.0.0/24 的 Azure VNET (acs-vnet)。我一起创建了两个子网“msubnet”和“asubnet”10.25.0.32/27 和 10.25.0.64/27。另外,我修改了模板json如下:
但是,由于未分配 POD CIDR,结果主机尚未准备好:
当我运行“kubectl describe node”时,它显示
有了这个结果,我怀疑这可能是由于分配给 POD CIDR 的子网大小。所以我又尝试了两个案例。
案例一
案例二
对于案例 I,它失败了,因为 10.25.2.0/24 仅分配给主服务器,但没有分配给代理。此外,出现以下消息。我验证这不是服务主体的问题,并在 Azure 中检查了创建的 Azure 路由没有定义路由。
对于案例 II,在这个阶段一切正常。
有了这个结果,我的问题是:
是否有应分配给 POD CIDR 的最小子网大小?
如果我想将一个 VNET 说 20.0.0.0/8 附加到集群,而不是原来的 10.0.0.0/8 ,那么要执行哪些步骤?会在生成的 azuredeploy.json 文件帮助中更改“$env:VIP_CIDR=\"10.0.0.0/8\"\n\n” 的值吗?
如果我添加 vnetSubnetId 以将我现有的 VNET 集成到我的 k8s 集群中,比如 20.0.0.0/16,会不会与预分配的 10.0.0.0/8 有任何冲突?(据我了解,Azure SDN 不知道这个私有 VNET?)
我在现有的 VNET 环境中有一个 VM,并且想使用 VIP(Azure SDN 未知的服务 CIDR)连接到 Azure 中的服务。对此有什么建议吗?
任何见解将不胜感激。
azure - 从 Kubernetes 动态创建的卷不会在 Azure 上自动删除
我对 kubernetes 和动态配置卷的默认回收行为有疑问。对于 Azure 中动态创建的卷,回收策略是“删除”,但是在使用 kubectl 删除持久卷声明和持久卷之后,vhd 上的页面 blob 仍然存在并且不会消失。
这是一个问题,因为每次重新启动集群时,我都会得到一个新的 1 Gib 页面 blob,我现在必须为此付费,而未使用的旧页面无法使用。它们在门户中显示为未租用,我可以在存储帐户中手动删除它们。但是,不会删除自己。根据“kubectl get pv”和“kubectl get pvc”,它们不存在。
根据我能找到的所有文档,它们应该在使用“kubectl”删除时消失:
- http://blog.kubernetes.io/2016/10/dynamic-provisioning-and-storage-in-kubernetes.html
- https://kubernetes.io/docs/concepts/storage/persistent-volumes/#reclaiming
对此问题的任何帮助将不胜感激。
编辑:我发现只有在删除持久卷声明之前删除持久卷时才会出现此问题。我知道这不是预期的行为,但应该修复或引发错误。
azure-container-service - 无法使用 docker login 登录到我的 azure 容器注册表
几天前我创建了一个 Azure Container Registre,现在无法使用 docker login 命令登录到该注册表。我总是收到此错误消息:
来自守护进程的错误响应:获取https://XXXXXXXXX.azurecr.io/v2/:拨打 tcp:在 [::1]:53 上查找 XXXXXXXXX.azurecr.io:读取 udp [::1]:52627->[: :1]:53: 读取: 连接被拒绝
azure - 无法从运行 Windows 的 Azure 容器访问 Internet
我在 Azure 容器服务中使用 Windows 容器。当我开始使用它时,我在容器中的应用程序能够访问 Internet。但是最近发现新建的容器不能上网,即使是最简单的iis容器也是按照https://docs.microsoft.com/en-us/azure/container-service/kubernetes/container上的说明创建的-服务-kubernetes-windows-演练
我在容器中得到的路由表:
Kubernetes 版本:
我应该如何从容器中获取 Internet 访问权限?
谢谢
sql-server - 无法从 Management Studio 连接到 Azure 上 Kubernetes (ACS) 上的 SQL Server 容器
我创建了一个自定义 SQL Server 数据库容器映像。我可以在我的本地机器上将它作为容器运行(Windows 10 和 Docker for Windows)。运行该容器后,我可以使用服务器名称作为 127.0.0.1:1433 从 SQL Server Management Studio 成功连接到它。
我正在尝试在 Azure 的 Kubernetes 中运行与 StatefulSet 相同的容器。
以下是 Kubernetes 资源。
机密(用于 SQL Server SA 密码)
存储类(StatefulSet - 外部存储)
外部服务(也尝试过无头服务,但我还需要从 pod 外部连接)
最后是 StatefulSet。
我运行此命令以从我的本地计算机预配这些资源(上下文指向 Azure 集群)。
我的所有资源都已成功配置。Kubernetes 仪表板 ( kubctl proxy
) 中全是绿色,没有红色。
我还为端口 1433 设置了 Azure 负载均衡器的运行状况探测和负载均衡规则。
但是,当我在 SQL Server Management Studio 中输入 LB 的公共 IP 地址:1433 作为服务器名称时,出现以下错误。
我错过了什么?
kubernetes - 无法在我的 Kubernetes Windows 设置中解析另一个服务的主机名
我最近关注了如何将 Kubernetes 与 Windows pod 一起使用的教程(https://docs.microsoft.com/en-us/azure/container-service/kubernetes/container-service-kubernetes-windows-walkthrough)。我决定将示例扩展到两个服务,一个在前面调用一个在后面。简化:
https://gist.github.com/sebug/f478f1cfd0a793e8d556c6001bbbe142
但是现在当我连接到前端节点之一时:
我无法 ping 其他服务:
我听说这可能是因为两个网络接口和选择了错误的 DNS 服务器,但我还没有找到在部署中指定任何内容的方法。
azure - 设置不同的 Kubernetes 集群
我通过“az acs create”创建了一个 azure kubernetes 集群。我执行现有的 POD
并制作一个 curl http://myexternlip.com/raw 我得到的 IP 是 k8s-agents 的公共 IP 地址......到目前为止一切都很好。
现在我通过“acs-engine”创建了一个 azure kubernetes 集群。制作与上述相同的“exec”......现在我在任何 azure 组件中都找不到 IP。既不在代理中,也不在负载均衡器中。这个IP是在哪里配置的?
问候, 萨伦巴