问题标签 [azure-aks]

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.

0 投票
1 回答
6533 浏览

kubernetes-helm - kubernetes 在 azure blob 存储上创建持久卷

背景

我是 kubernetes 的新手,我正在尝试stable/prometheus在 AKS 集群上使用 helm 图表进行安装,并希望设置一个持久卷供它使用。

创建 AKS 群集时,它会将所有实际资源保留在资源组 MC_XXX_XXXX

  • 我通过 azure via azure portal 手动创建了 ABC-BLOB-STORAGE
  • 使用创建持久卷kubectl
  • 尝试使用值文件通过 helm 安装 prometheus

持久卷

Values.YAML(与存储相关的片段看起来像)

错误

当我使用 helm 安装 prometheus 时:

helm install stable/prometheus --name d02 -f values.yaml

错误:发布 d02 失败:persistentvolumeclaims “d02-prometheus-alertmanager”被禁止

  • 感觉 kubernetes 需要访问 blob 存储。我可以传入访问令牌,但不确定如何
0 投票
1 回答
2376 浏览

azure - Ingress IP with Azure AKS

I'm implementing this example with az aks. I want to use ingress in order to use easily the reverse proxy as in the example with a container redirected to /tea and the other to /coffee based on the ingress simple rules.

I follow the steps, however, azure wont give an ip address to my ingress as you can see.

I think azure only give addresses to the loadbalancers. Is there any workaround or solution for this? Can I somehow say azure to give an IP to my ingress?

As some additional info, I also tried `helm:

However I'm a complete novice and it seems to do nothing.

0 投票
1 回答
1736 浏览

azure - Azure Kubernetes (AKS) 不发布公共 IP

我们在 Azure (AKS) 中使用托管 Kubernetes,公共 IP 地址已用完。我们只需要一个,但 AKS 每次部署服务时都会创建一个新的公共 IP,并且在删除服务时它不会删除它。例如:

每次部署时 ( kubectl create -f svc.yml) 都会创建一个新的公共 IP。当它被删除 ( kubectl delete -f svc.yml) 时,IP 仍然存在。尝试在上面的注释中使用 loadBalanceIP 重用现有 IP 之一失败,“公共 ip 地址......被资源中的多个 ipconfigs 引用......”。

我们已经创建了一个服务请求,但它需要很长时间,所以我希望这会更快。我不敢只删除 AKS 托管资源中的公共 IP,因为这可能会导致问题。

有没有办法安全地释放或重用公共 IP?我们使用的是 Kubernetes 版本 1.7.12。我们也删除了服务引用的部署,没有区别。

0 投票
1 回答
1686 浏览

c# - 无法在 Azure 上将 MSI 与 AKS 一起使用

我在 Azure 中有一个使用 AKS 预览版的 k8s 集群。

我还在虚拟机上启用了 MSI。如果我 ssh 到虚拟机,我可以看到 MSI 服务正在运行:

根据文档,我得到了您所期望的回复。

但是,我无法弄清楚如何让我的 aspnet 核心应用程序AzureServiceTokenProvider根据需要使用。在本地它可以工作,一旦部署在 kubernetes 的 pod 中,它就找不到所需的授权。

我得到的错误是:

Microsoft.Azure.Services.AppAuthentication.AzureServiceTokenProviderException:参数:Connectionstring:[未指定连接字符串],资源:https ://vault.azure.net ,授权:https ://login.windows.net/9d93c307-6856-4bab -8fa9-99690e0fabaf。异常消息:尝试了以下 3 种方法来获取访问令牌,但都没有奏效。参数:连接字符串:[未指定连接字符串],资源:https ://vault.azure.net ,权限:https ://login.windows.net/9d93c307-6856-4bab-8fa9-99690e0fabaf. 异常消息:尝试使用托管服务标识获取令牌。无法连接到托管服务标识 (MSI) 端点。请检查您是否在具有 MSI 设置的 Azure 资源上运行。参数:连接字符串:[未指定连接字符串],资源:https ://vault.azure.net ,权限:https ://login.windows.net/9d93c307-6856-4bab-8fa9-99690e0fabaf 。异常消息:尝试使用 Visual Studio 获取令牌。无法获取访问令牌。未设置环境变量 LOCALAPPDATA。参数:连接字符串:[未指定连接字符串],资源:https ://vault.azure.net ,权限:https ://login.windows.net/9d93c307-6856-4bab-8fa9-99690e0fabaf. 异常消息:尝试使用 Azure CLI 获取令牌。无法获取访问令牌。/bin/bash: az: 没有这样的文件或目录 ```

有没有人能够使用类似代码从 pod 中的 KeyVault 读取?

0 投票
2 回答
3502 浏览

azure - 如何在 Azure AKS 的一个入口控制器上创建多个负载均衡器 IP 地址

我正在尝试在一个 k8s 集群上设置多个服务,前面有一个 Ingress 控制器,它为所有服务执行 tls 终止。这是一个很好的例子:https ://github.com/kubernetes/contrib/blob/master/ingress/controllers/nginx/examples/multi-tls/multi-tls.yaml

我最初遵循此示例:https ://github.com/brunoterkaly/ingress ,然后将其扩展为具有多个 tls 服务。

通过在 Azure 上公开我的 nginx 复制控制器 AKS 会自动创建一个负载均衡器和一个公共 IP 地址,我可以向其应用 A 记录: kubectl expose rc nginx-ingress-rc --port="80,443" --type="LoadBalancer"

但是,我还想要第二条 A 记录,它指向同一个 IP 地址(我猜?),这样我就可以从不同的域访问我的入口控制器。我不知道如何让 AKS 为此创建第二个?

0 投票
1 回答
607 浏览

azure - ACS 还是 AKS 混合 kubernetes 集群?

从 2017 年末开始,我已经看到很多关于在 ACS 上的 Azure 中的 k8s 上运行混合 Windows 和 linux 节点的博客文章。

https://anthonychu.ca/post/hybrid-kubernetes-linux-windows-cluster-easy-steps/

https://github.com/dunnock/kubernetes-hybrid-in-azure

https://chrisdennig.me/2017/10/25/deploy-a-hybrid-kubernetes-cluster-on-azure-container-service/

有几个。他们都说 AKS 上还没有混合容器集群。大多数帖子已经过去了 3 个月。他们现在可以在 AKS 上使用吗?

0 投票
1 回答
2226 浏览

azure - Azure - az aks cli azure 广告错误

我有两个不同的 Azure 广告租户

第一个是foo

第二个是bar

和一份订阅

名字是baz

帐户管理员似乎  foo在管理和计费概览服务部分。 

当我从门户将目录更改为栏时,我可以baz从  Other subscriptionsCost Management & Billing. 

当我在 's shell 执行下面的命令时bar,我可以看到订阅的所有者是foo

当我执行下面的命令时,出现错误“当前用户需要目录权限才能注册应用程序” 

所以我想利用一切来foo创建我的 Azure Kubernetes 服务。我该怎么办。有任何想法吗? 

0 投票
1 回答
42 浏览

kubernetes - kubernetes:我应该使用什么样的端口来在入口后面公开服务?

在入口后面公开服务的正确方法是什么。我应该使用 nodePort 吗?集群IP?别的东西?因为大多数教程都忽略了这一点。有些人使用 nodePort 显示服务,然后添加诸如“对于这个演示就足够了”之类的东西,这不是很让人放心。

0 投票
0 回答
69 浏览

azure - Azure 中用于基于 Kubernetes 的 VM 的来宾指标

我们有一个应用程序,它通过收集指标并运行一些分析来监控 VM 的性能。

我们从 Azure 存储帐户“WADMetrics”表中获取内存指标。

最近我们添加了一些基于Kubernetes的虚拟机并启用了“基本指标”和“启动诊断”

但即使启用指标后,我们也看不到任何访客指标。只有主机指标可用。

有谁知道原因。我们必须为基于 Kubernetes 的虚拟机做些什么来报告访客指标吗?

提前致谢。

在此处输入图像描述

0 投票
2 回答
268 浏览

kubernetes - 在 Kubernetes 中发现其他服务的端口,而不使用 FOO_SERVICE_PORT 环境变量

根据 Kubernetes 文档,每个容器都有一组环境变量,可以访问其他服务

例如,如果存在名为 foo 的服务,则所有容器将在其初始环境中获取以下变量:

但是,似乎在我的集群中我没有得到这些变量的预期值:

我宁愿期待看到类似的东西

我知道文档也说

如果您正在编写与服务对话的代码,请不要使用这些环境变量;请改用服务的 DNS 名称。

但这只会给我服务的主机名,而不是端口。因此,我想在我的部署模板中设置SEARCH_HOSTsearch并依赖SEARCH_PORT来获取端口,但是当我将现有环境变量中的服务 url 放在一起时,它变成了http://search:tcp://10.0.110.126:80显然不起作用。

如果我不能依靠FOO_SERVICE_PORT变量给我端口号,我应该怎么做?