安装Kubernetes集群

在fedora32/centos8上安装Kubernetes集群

Repository: Author: GitHub

Introduction:

Author:杭州电子科技大学 唐涛

CreateTime:2020-6-21 09:11:19

UpdateTime:2020-6-21 17:39:16

Copyright: 唐涛 HOME | 首页 © 2020 tangtao github

Email: tangtao2099@outlook.com

Link: 知乎 GitHub 语雀

Kubernetes是Google基于Borg开源的容器编排调度引擎,作为CNCF(Cloud Native Computing Foundation)最重要的组件之一,它的目标不仅仅是一个编排系统,而是提供一个规范,可以让你来描述集群的架构,定义服务的最终状态,kubernetes可以帮你将系统自动得达到和维持在这个状态。

更直白的说,Kubernetes用户可以通过编写一个yaml或者json格式的配置文件,也可以通过工具/代码生成或直接请求kubernetes API创建应用,该配置文件中包含了用户想要应用程序保持的状态,不论整个kubernetes集群中的个别主机发生什么问题,都不会影响应用程序的状态,你还可以通过改变该配置文件或请求kubernetes API来改变应用程序的状态。

运行环境

[root@localhost ~]# cat /etc/redhat-release 
Fedora release 32 (Thirty Two)
[root@localhost ~]# cat /proc/version
Linux version 5.6.19-300.fc32.x86_64 (mockbuild@bkernel01.iad2.fedoraproject.org) (gcc version 10.1.1 20200507 (Red Hat 10.1.1-1) (GCC)) #1 SMP Wed Jun 17 16:10:48 UTC 2020

kubernetes版本 v1.18.4

[root@localhost ~]# kubectl version
Client Version: version.Info{
   Major:"1", Minor:"18", GitVersion:"v1.18.4", GitCommit:"c96aede7b5205121079932896c4ad89bb93260af", GitTreeState:"clean", BuildDate:"2020-06-17T11:41:22Z", GoVersion:"go1.13.9", Compiler:"gc", Platform:"linux/amd64"}
Server Version: version.Info{
   Major:"1", Minor:"18", GitVersion:"v1.18.4", GitCommit:"c96aede7b5205121079932896c4ad89bb93260af", GitTreeState:"clean", BuildDate:"2020-06-17T11:33:59Z", GoVersion:"go1.13.9", Compiler:"gc", Platform:"linux/amd64"}

开始搭建集群环境

在安装新组件之前,先升级系统

dnf -y upgrade

禁用SELinux

setenforce 0
sed -i --follow-symlinks 's/SELINUX=enforcing/SELINUX=disabled/g' /etc/sysconfig/selinux

启用透明伪装并促进虚拟可扩展LAN(VxLAN)通信,以在整个集群中的Kubernetes Pod之间进行通信。

modprobe br_netfilter

防火墙上启用IP伪装

firewall-cmd --add-masquerade --permanent
firewall-cmd --reload

设置桥接数据包以遍历iptables规则

cat <<EOF > /etc/sysctl.d/k8s.conf
net.bridge.bridge-nf-call-ip6tables = 1
net.bridge.bridge-nf-call-iptables = 1
EOF

加载新规则

sysctl --system

禁用所有内存交换以提高性能

也可以通过kubernetes手动开启忽略交换分区,但这样可能会降低集群性能💥。

swapoff -a
vim /etc/fstab
---------------注释掉 swap 重启系统----------------

=========================示例=======================
[root@localhost tao]# swapoff -a
[root@localhost tao]# cat /etc/fstab

#
# /etc/fstab
# Created by anaconda on Mon Jun 15 02:13:37 2020
#
# Accessible filesystems, by reference, are maintained under '/dev/disk/'.
# See man pages fstab(5), findfs(8), mount(8) and/or blkid(8) for more info.
#
# After editing this file, run 'systemctl daemon-reload' to update systemd
# units generated from this file.
#
/dev/mapper/fedora_localhost--live-root /                       ext4    defaults        1 1
UUID=fbdf9a0f-5f7a-4542-9988-b579662fd622 /boot                   ext4    defaults        1 2
/dev/mapper/fedora_localhost--live-swap none                    swap    defaults        0 0
-----------重启之后----------
[root@localhost tao]# free -h
              total        used        free      shared  buff/cache   available
Mem:          7.7Gi       670Mi       6.4Gi       7.0Mi       709Mi       6.8Gi
Swap:            0B          0B          0B

安装docker

参考前文,或参考官网

在主节点和工作节点上安装Kubernetes

将Kubernetes存储库添加到您的包管理器中。

链接:谷歌存储库

cat <<EOF > /etc/yum.repos.d/kubernetes.repo
[kubernetes]
name=Kubernetes
baseurl=https://packages.cloud.google.com/yum/repos/kubernetes-el7-x86_64
enabled=1
gpgcheck=1
repo_gpgcheck=1
gpgkey=https://packages.cloud.google.com/yum/doc/yum-key.gpg https://package
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值