kubenetes无法创建pod/创建RC时无法自动创建pod的问题(转载)

转自http://www.voidcn.com/blog/jinzhencs/article/p-5975011.html

问题1: 虽然每次通过yaml创建rc都显示成功了,但是 kubectl get pod却没显示任何的pod.
问题2: 直接通过yaml创建pod提示apixxx
问题3: 通过.json文件创建pod 未验证

原因是身份认证 解决方法有两种,我用的第一种:

Error from server: error when creating "nginx.yaml": Pod "nginx" is forbidden: no API token found for service account default/default, retry after the token is automatically created and added to the service account

解决办法:
编辑/etc/kubernetes/apiserver
去除 KUBE_ADMISSION_CONTROL中的SecurityContextDeny,ServiceAccount,并重启kube-apiserver服务:

vim /etc/kubernetes
/apiserverKUBE_ADMISSION_CONTROL="--admission_control=NamespaceLifecycle,NamespaceExists,LimitRanger,ResourceQuota"
ystemctl restart kube-apiserver

之后重新创建pod:

 kubectl create -f nginx.yamlpods/nginx

To get your setup working, you can do the same thing local-up-cluster.sh is doing:
Generate a signing key: openssl genrsa -out /tmp/serviceaccount.key 2048
Update /etc/kubernetes/apiserver: KUBE_API_ARGS=”–service_account_key_file=/tmp/serviceaccount.key”
Update /etc/kubernetes/controller-manager: KUBE_CONTROLLER_MANAGER_ARGS=”–service_account_private_key_file=/tmp/serviceaccount.key”
From https://github.com/kubernetes/kubernetes/issues/11355#issuecomment-127378691

完了之后可以看到pod了,但是发现是挂起状态,pending,于是查了下发现是因为无法从gcr.io拉取pause0.8.0的镜像。那么很简单 就找个可用的镜像拉取即可。 docker pull docker.io/kubernetes/pause

现在再来看看pod:
pod

OK了!。至此,问题解决。
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 安装k8s Master高可用集群 主机 角色 组件 172.18.6.101 K8S Master Kubele...
    jony456123阅读 8,159评论 0 9
  • 环境规划 手里的环境是四台安装了CentOS 7的主机。环境规划如下: Kubernetes Master 节点:...
    负二贷阅读 3,385评论 6 26
  • docker实现了更便捷的单机容器虚拟化的管理, docker的位置处于操作系统层与应用层之间; 相对传统虚拟化(...
    Harvey_L阅读 20,127评论 3 44
  • 1.Pod Pod是k8s的最基本的操作单元,包含一个或多个紧密相关的容器,类似于豌豆荚的概念。一个Pod可以被一...
    jony456123阅读 7,647评论 0 5
  • 我把几乎所有闲暇都用来等待 等待来自于被谁惦念的消息 时间总是一分一秒过去 心总是在诚惶诚恐中加重孤独 就这样,消...
    善良之心阅读 342评论 0 0

友情链接更多精彩内容