K8S集群安装与部署(Linux系统)

这篇具有很好参考价值的文章主要介绍了K8S集群安装与部署(Linux系统)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

一、环境说明:CentOS7、三台主机(Master:10.0.0.132、Node1:10.0.0.133、Node2:10.0.0.134)

二、准备环境:

  • 映射

K8S集群安装与部署(Linux系统)
K8S集群安装与部署(Linux系统)

  • 关闭防火墙

K8S集群安装与部署(Linux系统)

三、etcd集群配置

  • 安装etcd(Master)
[root@Master ~]# yum install -y kubernetes-master etcd
Loaded plugins: fastestmirror
Determining fastest mirrors
 * base: mirrors.163.com
 * extras: mirrors.163.com
 * updates: mirrors.163.com
  • 修改etcd配置文件/etc/etcd/etcd.conf(Master)
 5 ETCD_LISTEN_PEER_URLS="10.0.0.132:2380"
 6 ETCD_LISTEN_CLIENT_URLS="http://10.0.0.132:2379,http://127.0.0.1:2379"
 9 ETCD_NAME="master"
 20 ETCD_INITIAL_ADVERTISE_PEER_URLS="http://10.0.0.132:2380"
 21 ETCD_ADVERTISE_CLIENT_URLS="http://10.0.0.132:2379"
 26
ETCD_INITIAL_CLUSTER="master=http://10.0.0.132:2380,node1=http://10.0.0.133:2380,node2=http://10.0.0.134:2380"
  • 安装K8S节点组件、etcd、flannel以及docker(Node1和Node2)
[root@Node1 ~]# yum install -y kubernetes-node etcd flannel docker
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
 * base: mirrors.163.com
 * extras: mirrors.163.com
 * updates: mirrors.aliyun.com
  • 修改etcd配置文件/etc/etcd/etcd.conf(Node1)
 5 ETCD_LISTEN_PEER_URLS="http://10.0.0.133:2380"
 6 ETCD_LISTEN_CLIENT_URLS="http://10.0.0.133:2379"
 9 ETCD_NAME="node1"
 20 ETCD_INITIAL_ADVERTISE_PEER_URLS="http://10.0.0.133:2380"
 21 ETCD_ADVERTISE_CLIENT_URLS="http://10.0.0.133:2379"
 26
ETCD_INITIAL_CLUSTER="master=http://10.0.0.132:2380,node1=http://10.0.0.133:2380,node2=http://10.0.0.134:2380"
  • 修改etcd配置文件/etc/etcd/etcd.conf(Node2)
5 ETCD_LISTEN_PEER_URLS="http://10.0.0.134:2380"
6 ETCD_LISTEN_CLIENT_URLS="http://10.0.0.134:2379"
9 ETCD_NAME="node2"
20 ETCD_INITIAL_ADVERTISE_PEER_URLS="http://10.0.0.134:2380"
21 ETCD_ADVERTISE_CLIENT_URLS="http://10.0.0.134:2379"
26
ETCD_INITIAL_CLUSTER="master=http://10.0.0.132:2380,node1=http://10.0.0.133:2380,node2=http://10.0.0.134:2380"
  • 启动etcd
[root@Master ~]# systemctl restart etcd
[root@Node1 ~]# systemctl restart etcd
[root@Node2 etcd]# systemctl restart etcd
[root@Master etcd]# etcdctl cluster-health
member 608369cbfeecea7f is healthy: got healthy result from http://10.0.0.134:2379
member 855cd77f1417e4bb is healthy: got healthy result from http://10.0.0.132:2379
member cd2399c9b3be0308 is healthy: got healthy result from http://10.0.0.133:2379
cluster is healthy
  • Master配置kube-api服务(/etc/kubernetes/apiserver)
#kubernetes system config
#The following values are used to configure the kube-apiserver
#The address on the local server to listen to.
#KUBE_API_ADDRESS="--insecure-bind-address=127.0.0.1"
KUBE_API_ADDRESS="--address=0.0.0.0"

# The port on the local server to listen on.
KUBE_API_PORT="--port=8080"

# Port minions listen on
KUBELET_PORT="--kubelet-port=10250"

# Comma separated list of nodes in the etcd cluster
KUBE_ETCD_SERVERS="--etcd-servers=http://10.0.0.132:2379,http://10.0.0.133:2379,http://10.0.0.134:2379"

# Address range to use for services
KUBE_SERVICE_ADDRESSES="--service-cluster-ip-range=10.254.0.0/16"

# default admission control policies
KUBE_ADMISSION_CONTROL="--admission-control=NamespaceLifecycle,NamespaceExists,LimitRanger,SecurityContextDeny,ServiceAccount,ResourceQuota"

# Add your own!
KUBE_API_ARGS=""
  • 启动服务
[root@Master etcd]# systemctl start kube-apiserver
[root@Master etcd]# systemctl start kube-controller-manager
[root@Master etcd]# systemctl start kube-scheduler
  • IP地址加端口8080

K8S集群安装与部署(Linux系统)

  • 配置node节点(node1和node2)
  • 修改kubernetes全局配置文件(/etc/kubernetes/config)

K8S集群安装与部署(Linux系统)

  • 修改kube-proxy配置文件(/etc/kubernetes/proxy)

K8S集群安装与部署(Linux系统)

  • 修改kubelet配置文件(/etc/kubernetes/kubelet)

K8S集群安装与部署(Linux系统)文章来源地址https://www.toymoban.com/news/detail-513866.html

  • 启动服务
[root@Node1 ~]# systemctl enable kubelet
Created symlink from /etc/systemd/system/multi-user.target.wants/kubelet.service to /usr/lib/systemd/system/kubelet.service.
[root@Node1 ~]#
[root@Node1 ~]# systemctl enable kube-proxy
Created symlink from /etc/systemd/system/multi-user.target.wants/kube-proxy.service to /usr/lib/systemd/system/kube-proxy.service.
[root@Node1 ~]# systemctl start kube-proxy
[root@Node1 ~]# systemctl start kubelet
  • master上检查节点情况
[root@Master ~]# kubectl get nodes
NAME         STATUS    AGE
10.0.0.133   Ready     1m
10.0.0.134   Ready     1m
[root@Master ~]#
  • 配置网络
  • 在Master节点预先配置Docker容器使用的网段和子网
[root@Master ~]# etcdctl mk /atomic.io/network/config '{"Network":"172.17.0.0/16","SubnetMin":"172.17.1.0","SubnetMax":"172.17.254.0"}'
{"Network":"172.17.0.0/16","SubnetMin":"172.17.1.0","SubnetMax":"172.17.254.0"}
  • 在Node1和Node2节点修改/etc/sysconfig/flanneld配置文件
# Flanneld configuration options

# etcd url location.  Point this to the server where etcd runs
FLANNEL_ETCD_ENDPOINTS="http://10.0.0.132:2379,http://10.0.0.133:2379,http://10.0.0.134:2379"

# etcd config key.  This is the configuration key that flannel queries
# For address range assignment
FLANNEL_ETCD_PREFIX="/atomic.io/network"

# Any additional options that you want to pass
#FLANNEL_OPTIONS="--iface=ens33"
  • 启动flanneld(Node1和Node2)
[root@Node2 ~]# systemctl enable flanneld
Created symlink from /etc/systemd/system/multi-user.target.wants/flanneld.service to /usr/lib/systemd/system/flanneld.service.
Created symlink from /etc/systemd/system/docker.service.wants/flanneld.service to /usr/lib/systemd/system/flanneld.service.
[root@Node2 ~]# systemctl start flanneld
  • 检验
[root@Node2 ~]# ip address show|grep flannel
4: flannel0: <POINTOPOINT,MULTICAST,NOARP,UP,LOWER_UP> mtu 1472 qdisc pfifo_fast state UNKNOWN group default qlen 500
    inet 172.17.49.0/16 scope global flannel0

[root@Node1 ~]#  cd /run/flannel
[root@Node1 flannel]# ll
total 8
-rw-r--r-- 1 root root 174 Sep 27 16:01 docker
-rw-r--r-- 1 root root  98 Sep 27 16:01 subnet.env
[root@Node1 flannel]# cat docker
DOCKER_OPT_BIP="--bip=172.17.80.1/24"
DOCKER_OPT_IPMASQ="--ip-masq=true"
DOCKER_OPT_MTU="--mtu=1472"
DOCKER_NETWORK_OPTIONS=" --bip=172.17.80.1/24 --ip-masq=true --mtu=1472"
[root@Node1 flannel]# cat subnet.env
FLANNEL_NETWORK=172.17.0.0/16
FLANNEL_SUBNET=172.17.80.1/24
FLANNEL_MTU=1472
FLANNEL_IPMASQ=false

到了这里,关于K8S集群安装与部署(Linux系统)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 商城-学习整理-集群-K8S-集群环境部署(二十四)

    MySQL-MMM是Master-MasterReplicationManagerforMySQL(mysql主主复制管理器)的简称,是Google的开源项目。 (Perl脚本)。MMM基于MySQL Replication做的扩展架构,主要用来监控mysql主主复制并做失败转移。其原理是将真实数据库节点的IP(RIP)映射为虚拟IP(VIP)集。mysql-mmm的监管端会提供多个

    2024年02月11日
    浏览(47)
  • 安装部署k8s集群

    系统: CentOS Linux release 7.9.2009 (Core) 准备3台主机 192.168.44.148 k8s-master 92.168.44.154 k8s-worker01 192.168.44.155 k8s-worker02 3台主机准备工作 关闭防火墙和selinux 关闭swap分区(swap分区会降低性能,所以选择关闭) 参考如下链接: 设置node的主机名,并配置/etc/hosts (这样可以方面看到pod调

    2024年02月19日
    浏览(43)
  • 安装部署(卸载)k8s集群

    Kubeadm是一个K8s部署工具,提供kubeadm init和kubeadm join,用于快速部署Kubernetes集群。  序号 ip地址 hostname 节点 1 10.10.80.220 appnode1 主节点 2 10.10.80.221 appnode2 工作节点 3 10.10.80.222 dbnode 预留  1、安装docker: 2、添加阿里云YUM软件源   3、安装kubeadm,kubelet和kubectl 要求master node和worke

    2024年02月08日
    浏览(40)
  • Kubernetes(k8s)集群安装部署

    名称 IP 系统 配置 主控节点 192.168.202.101 CentOS 7.9.2009 2核4G 工作节点1 192.168.202.102 CentOS 7.9.2009 2核4G 工作节点2 192.168.202.103 CentOS 7.9.2009 2核4G 2.1 升级操作系统内核 导入elrepo gpg key 安装elrepo YUM源仓库 安装kernel-ml版本,ml为长期稳定版本,lt为长期维护版本 设置grub2默认引导为0 重

    2024年02月10日
    浏览(80)
  • k8s集群环境搭建以及插件安装

    终端工具MobaXterm很好用。 1、虚拟机三台(ip按自己的网络环境相应配置)(master/node) 节点 ip k8s-master 192.168.200.150 k8s-node1 192.168.200.151 k8s-node2 192.168.200.152 2、关闭防火墙(master/node) 查看防火墙状态: systemctl status firewalld 3、关闭selinux(master/node) 4、关闭swap(master/node) 5、添加主机名

    2024年01月22日
    浏览(46)
  • K8s集群部署(二进制安装部署详细手册)

       一、简介 K8s部署主要有两种方式: 1、Kubeadm Kubeadm是一个K8s部署工具,提供kubeadm init和kubeadm join,用于快速部署Kubernetes集群。 2、二进制   从github下载发行版的二进制包,手动部署每个组件,组成Kubernetes集群。  本文通过二进制安装部署的方式在centos7上搭建kubernetes集群

    2024年02月15日
    浏览(51)
  • 【k8s】基于Prometheus监控Kubernetes集群安装部署

    目录 基于Prometheus监控Kubernetes集群安装部署 一、环境准备 二、部署kubernetes集群 三、部署Prometheus监控平台 四、部署Grafana服务 五、grafana  web操作 IP地址 主机名 组件 192.168.100.131 k8s-master kubeadm、kubelet、kubectl、docker-ce 192.168.100.132 k8s-node01 kubeadm、kubelet、kubectl、docker-ce 192.168

    2024年02月12日
    浏览(59)
  • 安装部署rancher2.7.0,然后导入K8S集群,管理集群

    centos系统请参考博客 ubuntu系统请参考博客 默认用户是admin 浏览器打开:https://IP:443 回车后就出现了如下图 利用刚才查到的密码登录 登录后直接修改密码,点击继续。 上图就是进入后的默认页面 不同版本调整中文的页面不一样,具体请根据自己的版本可以百度或者去官网查

    2024年02月11日
    浏览(45)
  • 通过containerd部署k8s集群环境及初始化时部分报错解决

    目录 一.基础环境配置(每个节点都做) 1.hosts解析 2.防火墙和selinux 3.安装基本软件并配置时间同步 4.禁用swap分区 5.更改内核参数 6.配置ipvs 7.k8s下载 (1)配置镜像下载相关软件 (2)配置kubelet上的cgroup 二.下载containerd(每个节点都做) 1.下载基本软件 2.添加软件仓库信息 3.更

    2024年02月07日
    浏览(48)
  • 基于kubesphere的k8s环境部署三节点的rook-ceph集群

    这次实验记录的是使用虚拟机搭建的使用了三个计算存储节点的rook-ceph集群,模拟真实的使用场景。补充之前发的只有单点的部署方式。 Rook is an open source cloud-native storage orchestrator, providing the platform, framework, and support for Ceph storage to natively integrate with cloud-native environments. Ro

    2024年02月11日
    浏览(57)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包