首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >Kubernetes中获取"containers with unready:[]“错误

Kubernetes中获取"containers with unready:[]“错误
EN

Stack Overflow用户
提问于 2019-02-07 17:39:46
回答 2查看 18.8K关注 0票数 0

我正在尝试在AKS中部署Kubernetes Pod (我是Kubernetes的新手,所以在这个阶段,我只想创建一个容器,部署到Kubernetes并连接到它)。

我的Yaml文件如下:

代码语言:javascript
运行
AI代码解释
复制
apiVersion: v1
kind: Pod
spec: 
  containers:
    - name: dockertest20190205080020
      image: dockertest20190205080020.azurecr.io    
      ports:
      - containerPort: 443
metadata: 
  name: my-test

我已经在Azure Container Registry中创建了镜像,并根据CLI成功地将其部署到Kubernetes。

在部署之后,我使用了以下命令:

代码语言:javascript
运行
AI代码解释
复制
kubectl get service

它告诉我没有外部IP可以连接。然后我试着:

代码语言:javascript
运行
AI代码解释
复制
kubectl describe pod my-test

这给出了以下错误:

代码语言:javascript
运行
AI代码解释
复制
 Events:
   Warning  Failed   4m (x2221 over 8h)  kubelet, aks-nodepool1-27401563-2  Error: ImagePullBackOff
   Normal   BackOff  0s (x2242 over 8h)  kubelet, aks-nodepool1-27401563-2  Back-off pulling image "dockertest20190205080020.azurecr.io"

然后,我尝试编辑展开:

代码语言:javascript
运行
AI代码解释
复制
kubectl edit pods my-test

哪个游戏让我犯错:

代码语言:javascript
运行
AI代码解释
复制
message: 'containers with unready status: [dockertest20190205080020]'

我一点也不确定我的下一个诊断步骤是什么。我得到的印象是容器或容器注册表有问题,但我不确定如何确定可能的问题。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2019-02-07 17:51:51

这里发生了什么(最有可能的)-你的AKS没有权限从你的ACR中拉出图像(这是默认行为)。您需要授予这些权限(link):

代码语言:javascript
运行
AI代码解释
复制
#!/bin/bash

AKS_RESOURCE_GROUP=myAKSResourceGroup
AKS_CLUSTER_NAME=myAKSCluster
ACR_RESOURCE_GROUP=myACRResourceGroup
ACR_NAME=myACRRegistry

# Get the id of the service principal configured for AKS
CLIENT_ID=$(az aks show --resource-group $AKS_RESOURCE_GROUP --name $AKS_CLUSTER_NAME --query "servicePrincipalProfile.clientId" --output tsv)

# Get the ACR registry resource id
ACR_ID=$(az acr show --name $ACR_NAME --resource-group $ACR_RESOURCE_GROUP --query "id" --output tsv)

# Create role assignment
az role assignment create --assignee $CLIENT_ID --role acrpull --scope $ACR_ID

另一种选择是只使用docker登录密码(该文章也提到了这一点)。

ACR格式的示例图像:

图像名称将为

Clrtacr.azurecr.io/dns:标签(如果是最新的,则不带标签)

票数 1
EN

Stack Overflow用户

发布于 2019-02-13 03:11:17

我不确定您是否知道您的yaml文件中有错误,或者它只是显示了您想要的安全性。但我会在这里向你展示:

代码语言:javascript
运行
AI代码解释
复制
apiVersion: v1
kind: Pod
spec: 
  containers:
    - name: dockertest20190205080020
      image: dockertest20190205080020.azurecr.io/image_name_and_version   
      ports:
      - containerPort: 443
metadata: 
  name: my-test

此外,正如您得到的错误所示,您没有从ACR中提取图像的权限。

在我这方面,我最好使用一个秘密来从ACR中提取所有图像。您可以创建一个服务主体来实现它。步骤如下所示:

代码语言:javascript
运行
AI代码解释
复制
#!/bin/bash

ACR_NAME=myacrinstance
SERVICE_PRINCIPAL_NAME=acr-service-principal

# Populate the ACR login server and resource id.
ACR_LOGIN_SERVER=$(az acr show --name $ACR_NAME --query loginServer --output tsv)
ACR_REGISTRY_ID=$(az acr show --name $ACR_NAME --query id --output tsv)

# Create acrpull role assignment with a scope of the ACR resource.
SP_PASSWD=$(az ad sp create-for-rbac --name $SERVICE_PRINCIPAL_NAME --role acrpull --scopes $ACR_REGISTRY_ID --query password --output tsv)

# Get the service principal client id.
CLIENT_ID=$(az ad sp show --id http://$SERVICE_PRINCIPAL_NAME --query appId --output tsv)

# Output used when creating Kubernetes secret.
echo "Service principal ID: $CLIENT_ID"
echo "Service principal password: $SP_PASSWD"

# Create the secret 
kubectl create secret docker-registry acr-auth --docker-server <acr-login-server> --docker-username <service-principal-ID> --docker-password <service-principal-password> 

然后,您可以像这样更改yaml文件:

代码语言:javascript
运行
AI代码解释
复制
apiVersion: v1
kind: Pod
spec: 
  containers:
    - name: dockertest20190205080020
      image: dockertest20190205080020.azurecr.io/image_name_and_version   
      ports:
      - containerPort: 443
  imagePullSecrets:
  - name: acr-auth
metadata: 
  name: my-test
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/54579188

复制
相关文章
Rasa NLU 实践
learn from https://github.com/Chinese-NLP-book/rasa_chinese_book_code
Michael阿明
2022/11/18
1.4K0
Rasa NLU 实践
使用Botkit和Rasa NLU构建智能聊天机器人
我们每天都会听到关于有能力涉及旅游、社交、法律​​、支持、销售等领域的新型机器人推出的新闻。根据我最后一次查阅的数据,单单Facebook Messenger就拥有超过11000个机器人,然而到我写这篇文章的时候,估计又已经增加了几千台。第一代的机器人由于它们只能根据对话中的关键字来分析有限的一些问题,因此显得十分的愚笨。但是随着像Wit.ai, API.ai, Luis.ai, Amazon Lex, IBM Watson等机器学习服务和NLP自然语言处理(Natural Language Processing)的商品化,促进了像donotpay 和 chatShopper这样的智能机器人的发展 。
花落花飞去
2018/01/29
5.8K0
使用Botkit和Rasa NLU构建智能聊天机器人
什么是Rasa智能机器人?如何与LLM结合?
之前写过一篇介绍用Rasa结合类似于GPT这种LLM应用的项目:RasaGpt——一款基于Rasa和LLM的聊天机器人平台
山行AI
2023/06/14
6.3K0
什么是Rasa智能机器人?如何与LLM结合?
rasa 介绍文档
1. Rasa介绍 1.1 架构 Rasa Open Source: NLU (理解语义) + Core (决定对话中每一步执行的actions) Rasa SDK: Action Server (调用自定义的 actions) Rasa NLU 理解用户的对话,提取出感兴趣的信息 (如意图分类、实体提取等),以pipeline的方式处理用户对话,在config.yml中配置。 Rasa Core 根据NLU输出的信息、以及Tracker记录的历史信息,得到上下文的语境:预测用户当前最可能表达的
小爷毛毛_卓寿杰
2022/05/10
2.5K0
rasa 介绍文档
Rasa 聊天机器人专栏(二):命令行界面
rasa init命令将询问你是否要使用此数据训练初始模型。如果你回答否,则models目录将为空。
磐创AI
2019/12/12
3.9K0
Rasa 聊天机器人专栏(二):命令行界面
Rasa 聊天机器人专栏(一):基本原理介绍
本页面解释了用Rasa构建助手的基本原理,并展示了Rasa项目的结构。你可以在这里测试它,而不需要安装任何东西。你也可以安装Rasa并在命令行中执行。
磐创AI
2019/12/10
3.3K0
Rasa 聊天机器人专栏(一):基本原理介绍
Rasa Core实践 报时机器人
learn from https://github.com/Chinese-NLP-book/rasa_chinese_book_code
Michael阿明
2022/12/01
1.2K0
用 TensorFlow_text(3) 构建 Rasa 中文分词 tokenizer
前一段时间简单了解 tensorflow_text 简单中文分词使用[1],再结合 Rasa 的学习,就萌生出模仿 Rasa 的结巴分词 tokenizer,造一个 Tensorflow_text_tokenizer。
coding01
2021/02/24
1.5K0
Rasa 聊天机器人专栏(五):模型评估
机器学习中的标准技术是将一些数据作为测试集分开。你可以使用以下方法将NLU训练数据拆分为训练集和测试集:
磐创AI
2019/12/23
2.3K0
Rasa 聊天机器人专栏(五):模型评估
Rasa Stack:创建支持上下文的人工智能助理和聊天机器人教程
Rasa Stack 是一组开放源码机器学习工具,供开发人员创建支持上下文的人工智能助理和聊天机器人:
磐创AI
2019/05/15
1.9K0
基于RASA的task-orient对话系统解析(一)
由于换工作以及家里的事,很久没有写东西了。最近因为工作内容,需要做任务型对话系统的相关研究和开发。趁此机会,总结一下rasa框架的基本内容,包括基本架构,代码级别的分析,以及使用上的一些tips。需要注意,本文不会详细描述如何简单构建一个小demo的流程,这个在rasa的doc和一些博客上都有很好的例子,我这里就不重复引用了。贴一些链接,有兴趣的同学可以去这些地方看看。
AINLP
2019/08/28
3.2K0
基于RASA的task-orient对话系统解析(一)
Rasa 聊天机器人专栏开篇
Rasa 是最火的聊天机器人框架,是基于机器学习和自然语言处理技术开发的系统。Rasa 中文官方文档包括聊天机器人,上下文管理,多伦对话,意图识别,填槽,中文聊天机器人开发必备手册。
磐创AI
2019/12/06
2.8K0
Rasa 聊天机器人专栏(六):验证数据
要验证域文件,NLU数据或故事数据中是否存在任何错误,请运行验证脚本。你可以使用以下命令运行它:
磐创AI
2020/03/04
7350
北邮张庆恒:如何基于 rasa 搭建一个中文对话系统 (有源码视频)| 分享总结
对话系统是自然语言处理的一个热门话题,而自然语言理解则是对话系统的关键组成部分,现有的很多自然语言理解工具往往以服务的方式获取(Google 的 API.ai, Facebook 的 Wit.ai 等),使用这些服务往往需要向服务提供商提供自己的数据,并且根据自己业务调试模型很不方便。本文为大家介绍了一种新方法,即如何基于 rasa 搭建一个中文对话系统。 在近期 AI 研习社举办的线上免费公开课上,来自北京邮电大学网络技术研究院的张庆恒分享了基于 rasa nlu 构建自己的自然语言理解工具,并结合 r
AI研习社
2018/03/16
4.7K0
北邮张庆恒:如何基于 rasa 搭建一个中文对话系统 (有源码视频)| 分享总结
RasaGpt——一款基于Rasa和LLM的聊天机器人平台
在ChatGpt引领的AI浪潮下,一大批优秀的AI应用应运而生,其中不泛一些在某些行业或领域中探索AI技术或应用落地的案例。不得不说,AI正在重塑各个行业。众所周知,Rasa是一个非常优秀的,用于构建开源AI助手的框架,它允许开发人员创建自然语言对话系统,包括聊天机器人、语音助手和智能助手。本文介绍的是一个基于Rasa和Langchain之上,通过将LLM的能力赋予Rasa建立的聊天机器人平台。
山行AI
2023/06/14
4.5K0
RasaGpt——一款基于Rasa和LLM的聊天机器人平台
Rasa 基于规则的对话管理: 天气预报机器人
learn from https://github.com/Chinese-NLP-book/rasa_chinese_book_code
Michael阿明
2022/12/13
2.1K0
Rasa 基于规则的对话管理: 天气预报机器人
Rasa 基于知识库的问答 音乐百科机器人
learn from https://github.com/Chinese-NLP-book/rasa_chinese_book_code
Michael阿明
2022/12/25
1.4K0
Rasa 基于知识库的问答 音乐百科机器人
Rasa 使用ResponseSelector实现FAQ和闲聊
learn from https://github.com/Chinese-NLP-book/rasa_chinese_book_code
Michael阿明
2022/12/01
8970
Rasa 使用ResponseSelector实现FAQ和闲聊
Awesome-Chinese-NLP:中文自然语言处理相关资料
推荐Github上一个很棒的中文自然语言处理相关资料的Awesome资源:Awesome-Chinese-NLP ,Github链接地址,点击文末"阅读原文"可直达:
AINLP
2019/10/10
5.7K1
Awesome-Chinese-NLP:中文自然语言处理相关资料
Rasa 聊天机器人专栏(八):在Docker上运行Rasa
这是如何使用Docker构建Rasa助手的指南。如果你之前没有使用过Rasa,我们建议你先Rasa教程开始。
磐创AI
2020/03/04
5.8K0

相似问题

Rasa NLU模型

11

Rasa nlu服务器故障

369

数据隐私Rasa NLU

168

Rasa核与Rasa nlu的区别

510

Rasa NLU安装问题

41
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档