搭建步骤
基础概念:https://www.cnblogs.com/sxdcgaq8080/p/10640879.html
=======================================环境准备阶段=========================================
1.新建三个虚拟机CentOS
参考地址:https://www.cnblogs.com/sxdcgaq8080/p/7466529.html
master 4G 50G
Node1 2G 40G
Node2 2G 40G
【需要注意的是,三台服务器上尽量不要已经安装了docker,否则会导致etcd安装失败,因为版本匹配的问题!!】
2.分别设置root账号 密码
3.分别启动网卡,获得IP,让本机的xshell可以连接上几台服务器
参考地址:https://www.cnblogs.com/sxdcgaq8080/p/9178926.html
4.分别修改静态主机名为
参考地址:https://www.cnblogs.com/sxdcgaq8080/p/10616441.html
192.168.92.131 k8s-master
192.168.92.132 k8s-node1
192.168.92.133 k8s-node2
分别在三台主机上输入命令
192.168.92.131输入:
hostnamectl --static set-hostname k8s-master
192.168.92.132输入:
hostnamectl --static set-hostname k8s-node1
192.168.92.133输入:
hostnamectl --static set-hostname k8s-node2
5.分别在三台服务器的/etc/hosts文件中添加
192.168.92.131 k8s-master 192.168.92.131 etcd 192.168.92.131 registry 192.168.92.132 k8s-node1 192.168.92.133 k8s-node2
使用以下命令修改即可:
vi /etc/hosts
6.分别关闭并禁用三台服务器的防火墙
参考地址:https://www.cnblogs.com/sxdcgaq8080/p/10032829.html
使用以下命令:【先停用,后禁用】
systemctl stop firewalld.service
systemctl disable firewalld.service
再使用查看命令查看,如果是如下效果,说明成功
firewall-cmd --state
====================================主要安装步骤开始=====================================
主节点需要安装
etcd 存储数据中心
flannel k8s的一种网络方案
kubernetes 【包含:kube-api-server controllerManager Scheduler 】
1.etcd的安装
1.1 命令
yum install -y etcd
1.2 修改配置文件
命令
vi /etc/etcd/etcd.conf
修改内容为:
# [member] ETCD_NAME=master ETCD_DATA_DIR="/var/lib/etcd/default.etcd" #ETCD_WAL_DIR="" #ETCD_SNAPSHOT_COUNT="10000" #ETCD_HEARTBEAT_INTERVAL="100" #ETCD_ELECTION_TIMEOUT="1000" #ETCD_LISTEN_PEER_URLS="http://localhost:2380" ETCD_LISTEN_CLIENT_URLS="http://0.0.0.0:2379,http://0.0.0.0:4001" #ETCD_MAX_SNAPSHOTS="5" #ETCD_MAX_WALS="5" #ETCD_CORS="" # #[cluster] #ETCD_INITIAL_ADVERTISE_PEER_URLS="http://localhost:2380" # if you use different ETCD_NAME (e.g. test), set ETCD_INITIAL_CLUSTER value for this name, i.e. "test=http://..." #ETCD_INITIAL_CLUSTER="default=http://localhost:2380" #ETCD_INITIAL_CLUSTER_STATE="new" #ETCD_INITIAL_CLUSTER_TOKEN="etcd-cluster" ETCD_ADVERTISE_CLIENT_URLS="http://etcd:2379,http://etcd:4001" #ETCD_DISCOVERY="" #ETCD_DISCOVERY_SRV="" #ETCD_DISCOVERY_FALLBACK="proxy" #ETCD_DISCOVERY_PROXY="" #ETCD_STRICT_RECONFIG_CHECK="false" #ETCD_AUTO_COMPACTION_RETENTION="0" #ETCD_ENABLE_V2="true" # #[proxy] #ETCD_PROXY="off" #ETCD_PROXY_FAILURE_WAIT="5000" #ETCD_PROXY_REFRESH_INTERVAL="30000" #ETCD_PROXY_DIAL_TIMEOUT="1000" #ETCD_PROXY_WRITE_TIMEOUT="5000" #ETCD_PROXY_READ_TIMEOUT="0" # #[security] #ETCD_CERT_FILE="" #ETCD_KEY_FILE="" #ETCD_CLIENT_CERT_AUTH="false" #ETCD_TRUSTED_CA_FILE="" #ETCD_AUTO_TLS="false" #ETCD_PEER_CERT_FILE="" #ETCD_PEER_KEY_FILE="" #ETCD_PEER_CLIENT_CERT_AUTH="false" #ETCD_PEER_TRUSTED_CA_FILE="" #ETCD_PEER_AUTO_TLS="false" # #[logging] #ETCD_DEBUG="false" # examples for -log-package-levels etcdserver=WARNING,security=DEBUG #ETCD_LOG_PACKAGE_LEVELS="" # #[profiling] #ETCD_ENABLE_PPROF="false" #ETCD_METRICS="basic" # #[auth] #ETCD_AUTH_TOKEN="simple"