kubernetes 源码分析之kubeadm(一)

在进行源码分析之前,我想在第一篇介绍一下这个东西怎么用的,对于不太熟悉这个工具的人可能不太了解。好了,我们先实战一下。

yum install -y kubelet kubectl kubernetes-cni kubeadm

先安装基本组件,国内有阿里yum源还有下面这个源也可以

tee /etc/yum.repos.d/mritd.repo << EOF
[mritdrepo]
name=Mritd Repositorybaseurl=https://rpm.mritd.me/centos/7/x86_64
enabled=1
gpgcheck=1
gpgkey=https://cdn.mritd.me/keys/rpm.public.key
EOF

启动kubelet

systemctl enable kubelet
systemctl start kubelet

启动master

kubeadm init --apiserver-advertise-address 10.39.0.45

加入node,这个token是执行init命令后生成的,请保存!

kubeadm join --token 65195b.d2e09d8ffe3c2a98 10.39.0.45:6443

ok,整个集群搭建完成,是不是很简单。但有几点需要注意,
1.镜像需要提前下载:在国内无法下载gcr的镜像
可以先从https://dev.aliyun.com/list.html?namePrefix=kube查询并下载镜像后,tag成目标镜像
所需镜像主要包括:

gcr.io/google_containers/kube-proxy-amd64
gcr.io/google_containers/kube-controller-manager-amd64
gcr.io/google_containers/kube-apiserver-amd64  
gcr.io/google_containers/kube-scheduler-amd64      
gcr.io/google_containers/pause-amd64                 
gcr.io/google_containers/kube-discovery-amd64 
gcr.io/google_containers/etcd-amd64                    

2.kubeadm部署1.6有个bug,导致kubelet无法启动:

kubelet cgroup driver: "cgroupfs" is different from docker cgroup driver: "systemd"

需要修改/etc/systemd/system/kubelet.service.d/10-kubeadm.conf

Environment="KUBELET_KUBECONFIG_ARGS=--kubeconfig=/etc/kubernetes/kubelet.conf --require-kubeconfig=true  --cgroup-driver=systemd"

3.init启动时候回监测/etc/kubernetes等目的是否为空,如果你修改了配置需要将以存在的目录删除,如果没有修改,可以跳过: –skip-preflight-checks
当部署完整个系统过后就可以使用命令查看了:

kubectl --kubeconfig admin.conf  get node
NAME         STATUS    AGE       VERSION
i-zq8y5vs8   Ready     2h        v1.6.1

由于默认是https,所以这里需要引入kubeconfig,这个文件也是kubeadm生成的,放在/etc/kubernetes目录下面。实战过后就开始源码分析了。待续。。。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

柳清风09

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值