kubernetes ServiceAccount 配置
来源:互联网 发布:免费网店推广软件 编辑:程序博客网 时间:2024/06/01 08:08
开始配置Kubernetes集群的时候为了少出问题,都是在apiserver配置中去掉ServiceAccount采用非安全连接的方式,但在后面配置FEK日志的过程中,很多时候绕不开这个安全机制,但因为开始在centos上安装是通过yum的方式,所以那些ca.crt,server.crt,kubecfg.key等文件都是没有的。自己手工去建了好几次最后都有一些问题。
本文是基于git-hub中make-ca-cert方式自己建立,方法如下:
先把github中kubernetes代码都下栽到master本地。
# git clone https://github.com/kubernetes/kubernetes
修改make-ca-cert.sh,将第30行修改为kube(基于kube的组进行启动)
# update the below line with the group that exists on Kubernetes Master.
/* Use the user group with which you are planning to run kubernetes services */
cert_group=${CERT_GROUP:-kube}
运行make-ca-cert.sh
# cd kubernetes/cluster/saltbase/salt/generate-cert/bash make-ca-cert.sh "192.168.0.105" "IP:192.168.0.105,IP:10.254.0.1,DNS:kubernetes,DNS:kubernetes.default,DNS:kubernetes.default.svc,DNS:kubernetes.default.svc.cluster.local"
这里192.168.0.105是master节点的ip,这种方式有个问题是master的ip变化的化证书可能有问题。不知道是否支持主机名设置。
运行完后发现在/srv/kubernetes目录下已经把相关的key都生成了,把这些key考到所有的minion节点的相同目录。
然后配置/etc/kubernetes/apiserver
KUBE_API_ARGS=
"--secure-port=443 --client-ca-file=/srv/kubernetes/ca.crt --tls-cert-file=/srv/kubernetes/server.cert --tls-private-key-file=/srv/kubernetes/server.key"
配置/etc/kubernetes/controller-manager
KUBE_CONTROLLER_MANAGER_ARGS=
"--root-ca-file=/srv/kubernetes/ca.crt --service-account-private-key-file=/srv/kubernetes/server.key"
启动master和minion完成
On Master:
systemctl enable kube-apiserver
systemctl start kube-apiserver
systemctl enable kube-controller-manager
systemctl start kube-controller-manager
systemctl start kube-scheduler
systemctl start kube-scheduler
systemctl enable flanneld
systemctl start flanneld
Minions:
systemctl enable kube-proxy
systemctl start kube-proxy
systemctl enable kubelet
systemctl start kubelet
systemctl enable flanneld
systemctl start flanneld
systemctl enable docker
systemctl start docker
启动kube-apiserver的时候,如果是通过systemctl来启动的,可以在/etc/log/messages中看到启动日志
我对这个Failed to list *api.Secret的错误查了半天网上的材料想要消除,但后来看起来应该没有太大影响.
如果通过systemctl 启动不成功,可能尝试命令行启动.
APIServer和Controller Manager的命令行启动方式
/usr/bin/kube-apiserver --logtostderr=true --v=0 --etcd-servers=http://k8s-master:2379 --address=192.168.0.105 --port=8080 --kubelet-port=10250 --allow-privileged=true --service-cluster-ip-range=10.254.0.0/16 --admission-control=ServiceAccount --insecure-bind-address=192.168.0.105 --client-ca-file=/srv/kubernetes/ca.crt --tls-cert-file=/srv/kubernetes/server.cert --tls-private-key-file=/srv/kubernetes/server.key --secure-port=443
/usr/bin/kube-controller-manager --logtostderr=true --v=0 --master=http://k8s-master:8080 --root-ca-file=/srv/kubernetes/ca.crt --service-account-private-key-file=/srv/kubernetes/server.key
阅读全文
0 0
- kubernetes ServiceAccount 配置
- Kubernetes网络配置方案
- Kubernetes DNS服务配置
- Kubernetes集群安全配置
- kubernetes安装与配置
- centos7安装配置Kubernetes
- kubernetes配置dns插件
- 安装kubernetes和配置
- kubernetes证书配置相关
- Kubernetes最小集群配置
- Ubuntu下kubernetes集群配置
- Kubernetes集群配置高可用
- kubernetes 安装配置 kube-ui
- Kubernetes双向TLS配置-Centos7
- kubernetes集群配置https证书
- kubernetes及Dashboard实战配置
- Kubernetes集群的安全配置
- Kubernetes Service配置信息详解
- 微信二次分享
- Django-part1-编写应用程序
- placeholder字体颜色修改和 jquery 下拉框选择应用
- django查看某个group中的所有user
- Python算法编写
- kubernetes ServiceAccount 配置
- 给程序媛妹子的4个贴心建议
- 查看数据库对象间的依赖关系
- 第三章 扩展你的博客应用
- Linux数据包路由原理、Iptables/netfilter
- oracle 创建用户、创建表等
- UVA 1152 --4 Values whose Sum is 0(枚举--中途相遇法)
- ESP8266的TCP通信
- PHP安全编程:跨站请求伪造CSRF的防御