手机版
你好,游客 登录 注册 搜索
背景:
阅读新闻

Kubernetes集群搭建过程中遇到的问题及解决

[日期:2015-12-01] 来源:Linux社区  作者:Linux [字体: ]

1. 创建Nginx Pod过程中报如下错误:

#kubectlcreate -f nginx-pod.yaml

Error from server: error when creating "nginx-pod.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

解决方法:

1> 修改/etc/kubernetes/apiserver文件中KUBE_ADMISSION_CONTROL参数。

修改前:

KUBE_ADMISSION_CONTROL="--admission_control=NamespaceLifecycle,NamespaceExists,LimitRanger,SecurityContextDeny,ServiceAccount,ResourceQuota"

去掉“ServiceAccount”选项。

2> 重启kube-apiserver服务

# systemctl restart kube-apiserver。

2. 创建Pod过程中,显示异常,通过查看日志/var/log/messages,有以下报错信息:

Nov 26 21:52:06 localhost kube-apiserver: E1126 21:52:06.697708    1963 server.go:454] Unable to generate self signed cert: open /var/run/kubernetes/apiserver.crt: permission denied

Nov 26 21:52:06 localhost kube-apiserver: E1126 21:52:06.697818    1963 server.go:464] Unable to listen for secure (open /var/run/kubernetes/apiserver.crt: no such file or directory); will try again.

解决方法有两种:

第一种方法:

# vim /usr/lib/systemd/system/kube-apiserver.service

[Service]

PermissionsStartOnly=true

ExecStartPre=-/usr/bin/mkdir /var/run/kubernetes

ExecStartPre=/usr/bin/chown -R kube:kube /var/run/kubernetes/

# systemctl daemon-reload

# systemctl restart kube-apiserver

第二种方法:

# vim /etc/kubernetes/apiserver

KUBE_API_ARGS="--secure-port=0"

在KUBE_API_ARGS加上--secure-port=0参数。

原因如下:

--secure-port=6443: The port on which to serve HTTPS with authentication and authorization. If 0, don't serve HTTPS at all.

3. 在利用yaml文件创建Pod过程中,报“Error from server:the server could not find the requested resource”

这个问题最坑,原因是Kubernetes版本太低,虽然node节点的状态显示是Ready,但无法创建Pod。

伴随现象:在描述节点状态时,显示如下,正常的是没有红色方框部分。

而且显示的版本信息如下:

注意:该版本信息却与Kubernetes官方提供的yum源中的版本信息吻合:http://cbs.centos.org/repos/virt7-testing/x86_64/os/Packages/

而最新的版本信息为:

Kubelet Version: v1.0.3.34+b9a88a7d0e357b

问题原因:

用了CentOS自带光盘作为本地yum源,而删除了CentOS自带的网络yum源的配置文件

解决方法:

使用CentOS自带的网络yum源的配置文件。

PS: 关于Kubernetes集群如何搭建,可参考官方的搭建指南

https://github.com/kubernetes/kubernetes/blob/release-1.0/docs/getting-started-guides/centos/centos_manual_config.md

OpenStack, Kubernetes, Mesos 谁主沉浮  http://www.linuxidc.com/Linux/2015-09/122696.htm

Kubernetes 的详细介绍请点这里
Kubernetes 的下载地址请点这里

本文永久更新链接地址http://www.linuxidc.com/Linux/2015-12/125735.htm

linux
相关资讯       Kubernetes集群 
本文评论   查看全部评论 (0)
表情: 表情 姓名: 字数

       

评论声明
  • 尊重网上道德,遵守中华人民共和国的各项有关法律法规
  • 承担一切因您的行为而直接或间接导致的民事或刑事法律责任
  • 本站管理人员有权保留或删除其管辖留言中的任意内容
  • 本站有权在网站内转载或引用您的评论
  • 参与本评论即表明您已经阅读并接受上述条款