目录

搭建k8s集群

安装docke

配置阿里云Docker Yum源

安装指定版本Docker

系统内核调优

配置免密登录

给普通用户配置免密

启动配置文件

下载kubectl工具,并且配置权限

查看集群状态

rancher管理k8s集群

启动docker

使用docker启动


搭建k8s集群

安装docke

entos7用阿里云Docker Yum源在线安装指定版本的docker

# 1 卸载已安装的Docker

sudo yum remove docker \

docker-client \

docker-client-latest \

docker-common \

docker-latest \

docker-latest-logrotate \

docker-logrotate \

docker-selinux \

docker-engine-selinux \

docker-engine

配置阿里云Docker Yum源

# 安装Docker依赖

sudo yum install -y yum-utils device-mapper-persistent-data lvm2

# Use Aliyun Docker

sudo yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

安装指定版本Docker

# 查看docker版本

yum list docker-ce --showduplicates

yum install -y docker-ce-18.09.1-3.el7.centos

# 4 启动docker和设置开机自启

systemctl start docker && systemctl enable docker

1、#关闭虚拟内存(需要在root用户下;三台机器都做)

swapoff -a

sed -i 's/.*swap.*/#&/' /etc/fstab

系统内核调优

cat >> /etc/sysctl.d/kubernetes.conf<<EOF

# 开启路由功能

net.ipv4.ip_forward=1

# 避免cpu资源长期使用率过高导致系统内核锁

kernel.watchdog_thresh=30

# 开启iptables bridge

net.bridge.bridge-nf-call-iptables=1

net.bridge.bridge-nf-call-ip6tables = 1

# 调优ARP高速缓存

net.ipv4.neigh.default.gc_thresh1=4096

net.ipv4.neigh.default.gc_thresh2=6144

net.ipv4.neigh.default.gc_thresh3=8192

EOF

重启docker

配置免密登录

A想要登录B, 就把自己的公钥发送给B

登录机器

获得公钥、私钥:ssh-keygen -t rsa

进入.ssh目录:cd /root/.ssh/

查看公钥,并复制公钥到 authorized_keys

vim authorized_keys

把这个文件传送给其他机器

给普通用户配置免密

rancher只能使用普通用户来登录

下载rke工具wget https://github.com/rancher/rke/releases/download/v1.3.1/rke_linux-amd64

chmod +x rke_linux-amd64 && cp rke_linux-amd64 /usr/bin/rke

在普通用户家目录创建cluster.yaml文件

启动配置文件

rke up -config cluster.yml

在启动时要是出现[etcd] Failed to bring up Etcd Plane: etcd cluster is unhealthy: hosts [192.168.100.666]

报错

其实这个问题的主要原因还是上个集群的一些配置没有清除,导致配置文件不同步之类的原因,在github找到的解决方案如下。我最后一个命令没有运行成功,但是再重装集群就成功了。下面的命令在集群的master上执行就行(或者是在安装rancher的机器上执行)

解决方案:

docker stop $(docker ps -aq)

docker system prune -f

docker volume rm $(docker volume ls -q)

docker image rm $(docker image ls -q)

rm -rf /etc/ceph \

/etc/cni \

/etc/kubernetes \

/opt/cni \

/opt/rke \

/run/secrets/kubernetes.io \

/run/calico \

/run/flannel \

/var/lib/calico \

/var/lib/etcd \

/var/lib/cni \

/var/lib/kubelet \

/var/lib/rancher/rke/log \

/var/log/containers \

/var/log/pods \

/var/run/calico

下载kubectl工具,并且配置权限

下载指定的版本,执行以下命令

// 查询稳定版本号

curl -L -s https://dl.k8s.io/release/stable.txt

// 安装

curl -LO https://dl.k8s.io/release/v1.26.0/bin/linux/amd64/kubectl

2.校验

//下载校验和文件

curl -LO "https://dl.k8s.io/$(curl -L -s https://dl.k8s.io/release/stable.txt)/bin/linux/amd64/kubectl.sha256"

// 基于校验和文件,验证 kubectl 的可执行文件

配置用户文件,并且验证安装情况

mkdir ~/.kube

cp /home/rancher/kube_config_cluster.yml ~/.kube/config

[rancher@demo02 ~]$ kubectl get  nodes

NAME         STATUS   ROLES                      AGE   VERSION

11.0.1.170   Ready    controlplane,etcd,worker   18m   v1.21.5

11.0.1.171   Ready    controlplane,etcd,worker   18m   v1.21.5

11.0.1.172   Ready    controlplane,etcd,worker   18m   v1.21.5

安装kubectl的另一种方式

安装kubectl

cat <<EOF > /etc/yum.repos.d/kubernetes.repo

[kubernetes]

name=Kubernetes

baseurl=https://mirrors.aliyun.com/kubernetes/yum/repos/kubernetes-el7-x86_64/

enabled=1

gpgcheck=1

repo_gpgcheck=1

gpgkey=https://mirrors.aliyun.com/kubernetes/yum/doc/yum-key.gpg https://mirrors.aliyun.com/kubernetes/yum/doc/rpm-package-key.gpg

EOF

yum install -y kubectl

查看集群状态

[root@node01 rke]# kubectl get nodes

正在上传…重新上传取消正在上传…重新上传取消

rancher管理k8s集群

启动docker

sudo yum install -y yum-utils device-mapper-persistent-data lvm2

sudo yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo

sudo yum install docker-ce -y

sudo systemctl enable docker

sudo systemctl start docker

使用docker启动

sudo docker run --privileged -d --restart=unless-stopped \

-p 80:80 -p 443:443 \

-v /host/rancher:/var/lib/rancher \

-v /var/log/rancher/auditlog:/var/log/auditlog \

-e AUDIT_LEVEL=1 \

rancher/rancher:stable

网页访问rancher

获取密码

docker logs  6e89dc6534a  2>&1 | grep "Bootstrap Password:"

导入集群

刷新完就可以看到集群了

使用rke部署k8s集群相关推荐

  1. k8s ubuntu cni_手把手教你使用RKE快速部署K8S集群并部署Rancher HA

    作者:杨紫熹 原文链接: https://fs.tn/post/PmaL-uIiQ/ RKE全称为Rancher Kubernetes Engine,是一款经过CNCF认证的开源Kubernetes发 ...

  2. RKE安装部署K8S集群、Rancher

    服务器准备:三台虚拟机(master:1,node:2:这里选用的阿里云ECS) OS hostname 内网IP Centos7 joker-master-1 172.27.31.149 Cento ...

  3. RKE部署Kubernetes集群

    安装docker 在各个节点建立自定义账户,使其可以用命令操作docker useradd <user_name> passwd <user_name> usermod -aG ...

  4. 【02】Kubernets:使用 kubeadm 部署 K8S 集群

    写在前面的话 通过上一节,知道了 K8S 有 Master / Node 组成,但是具体怎么个组成法,就是这一节具体谈的内容.概念性的东西我们会尽量以实验的形式将其复现. 部署 K8S 集群 互联网常 ...

  5. kubeadm部署K8S集群并使用containerd做容器运行时

    kubeadm部署K8S集群并使用containerd做容器运行时(内容全部实战验证有任何问题欢迎留言咨询讨论) 前言 去年12月份,当Kubernetes社区宣布1.20版本之后会逐步弃用docke ...

  6. kubeadm部署k8s集群

    1.准备环境 虚拟机操作系统: Centos7 角色                IP Master        192.168.150.140 Node1        192.168.150. ...

  7. 如何通过rancher部署k8s集群

    目录 1 安装前准备 2 安装rancher 3 配置Rancher 4 创建k8s集群 最近的工作中需要使用到K8S,而面临的第一个问题就是如何部署一个K8S集群环境.现有多种部署方式,如:kube ...

  8. linux上部署K8S集群

    部署K8S集群 服务器硬件要求:三台虚拟机服务器,操作系统都为centos: ​ 硬盘最低配置:内存2GB,CPU2核,硬盘30GB. 准备环境 master 192.168.200.110 node ...

  9. 阿里云部署k8s集群

    ​ 阿里云部署k8s集群 前言 1.k8集群架构 Kubernetes Cluster = N Master Node + N Worker Node:N主节点+N工作节点: N>=1 2.机器 ...

最新文章

  1. 学习率对神经网络迭代次数的影响
  2. Oracle 把过程与函数说透
  3. saslauthd mysql_open***使用MySQL进行认证
  4. 海思3519A配置IP
  5. 【联合仿真】Adams六关节机械臂与Matlab/Simulink的联合仿真(上)
  6. ucgui移植到rt_thread simulator
  7. 推荐我的一本新作:《Linux安全技术内幕》
  8. QT文本文档之新建文本
  9. 华佗穿越来教程序员睡觉
  10. Poi-tl通过word模板生成文件页眉页脚冲突问题
  11. 一元多次方程近似解法
  12. 图能页:傻瓜式的手机网页制作服务
  13. 伯努利分布、二项分布和多项分布
  14. 微信小程序保存图片至手机相册
  15. mysql rand_MySQL中的RAND()函数使用详解
  16. 罗永浩和锤子手机:对不起,我被你打动了
  17. 华科图书情报专硕考研复试与读研
  18. TFmini Plus 在开源飞控 pixhawk 上的应用
  19. 自媒体视频如何消重?批量处理去重消重去水印去logo软件企鹅号视频不重复必学的消重技巧...
  20. FastQC 配置 及 基本使用

热门文章

  1. 企业微信api接口调用-触发推送企业微信微信好友
  2. 基于Python的高校请假管理信息系统开发(Django框架)
  3. 常见图片格式jpg、jpeg、png、gif等之间的区别
  4. 使用dumpbin工具查看dll导出符号
  5. 区块链怎样运用到社交领域?
  6. 周亚军 红宝书 案例 3 telnet远程管理协议
  7. 基于时间轮的定时器HashedWheelTimer
  8. 【信号与系统实验】实验六 信号与系统复频域分析
  9. Eclipse使用Space键替换Tab键不生效的解决方案
  10. VS2010中MSCOMM 串口通信控件的注册使用