k8s-单master集群部署笔记

部署环境:VMware虚拟机,2core,2.5G内存,CentOS Linux release 7.5.1804(最好是7.6或以上版本)
部署参考文章
以下是实际操作:

  1. 修改hostname
[root@k8s-master ~]# hostnamectl set-hostname 想要修改的主机名
[root@k8s-master ~]# exec bash
[root@k8s-master ~]# setenforce 0
  1. 设置selinux为disabled
[root@k8s-master ~]# sed -i --follow-symlinks 's/SELINUX=enforcing/SELINUX=disabled/g' /etc/sysconfig/selinux
  1. 将hostname配置到/etc/hosts文件中
[root@k8s-master ~]# echo "127.0.0.1 $(hostname)" >> /etc/hosts
  1. 设置防火墙(假如是学习部署不关心安全问题可直接关掉防火墙,如果不是就按上面文章的命令设置,这次部署直接关防火墙)
[root@k8s-master ~]# systemctl stop firewalld.service
[root@k8s-master ~]# systemctl status firewalld.service
● firewalld.service - firewalld - dynamic firewall daemon
   Loaded: loaded (/usr/lib/systemd/system/firewalld.service; enabled; vendor preset: enabled)
   Active: inactive (dead) since 五 2019-12-20 23:26:42 CST; 12h ago
     Docs: man:firewalld(1)
 Main PID: 707 (code=exited, status=0/SUCCESS)

12月 20 23:20:25 localhost.localdomain systemd[1]: Starting firewalld - dynamic firewall daemon...
12月 20 23:20:26 localhost.localdomain systemd[1]: Started firewalld - dynamic firewall daemon.
12月 20 23:26:41 k8s-master systemd[1]: Stopping firewalld - dynamic firewall daemon...
12月 20 23:26:42 k8s-master systemd[1]: Stopped firewalld - dynamic firewall daemon.
  1. 配置iptables(假如没关防火墙)
[root@k8s-master ~]# modprobe br_netfilter
[root@k8s-master ~]# echo '1' >> /proc/sys/net/bridge/bridge-nf-call-iptables
  1. 配置yum源
[root@k8s-master ~]# cat <<EOF > /etc/yum.repos.d/kubernetes.repo
[kubernetes]
name=Kubernetes
baseurl=http://mirrors.aliyun.com/kubernetes/yum/repos/kubernetes-el7-x86_64
enabled=1
gpgcheck=1
repo_gpgcheck=1
gpgkey=http://mirrors.aliyun.com/kubernetes/yum/doc/yum-key.gpg
        http://mirrors.aliyun.com/kubernetes/yum/doc/rpm-package-key.gpg
EOF

因为使用上面文章的repositories无法连接,所以改成阿里云的repositories

  1. 下载docker安装包(没有安装最新)、启动和设置开机启动
    配置阿里云Docker Yum源
[root@k8s-master ~]# yum remove docker \
                  docker-client \
                  docker-client-latest \
                  docker-common \
                  docker-latest \
                  docker-latest-logrotate \
                  docker-logrotate \
                  docker-selinux \
                  docker-engine-selinux \
                  docker-engine                    
[root@k8s-master ~]# yum install -y yum-utils device-mapper-persistent-data lvm2
[root@k8s-master ~]# yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

选择指定的版本下载

[root@k8s-master ~]# yum list docker-ce --showduplicates
[root@k8s-master ~]# yum -y install docker-ce-18.03.0.ce-1.el7.centos
[root@k8s-master ~]# systemctl restart docker && systemctl enable docker
  1. 下载kubeadm、kubectl、kubelet
[root@k8s-master ~]# yum list kubeadm kubect kubelet --showduplicates
[root@k8s-master ~]# yum -y install kubeadm-1.15.5-0  kubectl-1.15.5-0 kubelet-1.15.5-0
[root@k8s-master ~]# systemctl  restart kubelet && systemctl enable kubelet
  1. 手动下载k8s需要的相关镜像并更改对应的tag(重要的一步)
    在GitHub上获取需要使用的镜像以及下载的脚本(对应是images.properties和load_images.sh),放到服务器执行脚本
执行后的大概结果
  1. 初始化master节点
[root@k8s-master ~]# kubeam init --

备注一:在节点初始化时,kubeadm会检测镜像中的tag是否含有k8s.gcr.io,没有则默认到gcr.io下载镜像,但是国内无法连接到gcr.io,无法下载镜像,造成初始化失败。
备注二:k8s的镜像需要与kubeadm的版本相同,不然在初始化节点的时候,kubeadm检测不到符合自身版本的镜像,同上,默认到gcr.io下载镜像,但无法连接,造成初始化失败。
备注三:初始化时如果报 [ERROR Swap]: running with swap on is not supported. Please disable swap错误,可以使用 swapoff -a 命令进行解决。

成功的标志

  1. 配置kubectl认证信息
[root@k8s-master ~]# mkdir -p $HOME/.kube
[root@k8s-master ~]# cp -i /etc/kubernetes/admin.conf $HOME/.kube/config
[root@k8s-master ~]# chown $(id -u):$(id -g) $HOME/.kube/config
  1. 让集群的状态变成ready和kube-dns的状态变成running
[root@k8s-master ~]# export kubever=$(kubectl version | base64 | tr -d '\n')
[root@k8s-master ~]# kubectl apply -f "https://cloud.weave.works/k8s/net?k8s-version=$kubever"

结果

备注四:内存空间一定要足够,不然镜像会一直重启。
备注五:镜像启动需要一定时间,如果长时间还没成功再进行错误排查
备注六:如果status为ImagePullBackOff或ErrImagePull,有可能是镜像拉取失败

以上就是k8s-单master集群-master节点那部分的部署流程,下一篇是k8s-dashboard的部署

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 216,372评论 6 498
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 92,368评论 3 392
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 162,415评论 0 353
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 58,157评论 1 292
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 67,171评论 6 388
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 51,125评论 1 297
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 40,028评论 3 417
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 38,887评论 0 274
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 45,310评论 1 310
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,533评论 2 332
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,690评论 1 348
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,411评论 5 343
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 41,004评论 3 325
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,659评论 0 22
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,812评论 1 268
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 47,693评论 2 368
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,577评论 2 353