k8s master节点搭建
1.前期准备
a.准备3台虚拟机
- 192.168.245.20 master
- 192.168.245.21 node1
- 192.168.245.22 node2
b.配置静态IP及重启网络
vi /etc/sysconfig/network-scripts/ifcfg-ens33
BOOTPROTO=static
IPADDR=192.168.245.22
NETMASK=255.255.255.0
GATEWAY=192.168.245.2
DNS1=192.168.245.2
ONBOOT=yes
service network restart #重新启动网络
yum install net-tools.x86_64 -y #安装 ifconfig 管理命令
c.vi /etc/selinux/config
SELINUX=enforcing设置成SELINUX=disabled
d.vi /etc/fstab
注释/dev/mapper/centos-swap swap swap defaults 0 0
e.关闭防火墙
systemctl stop firewalld
systemctl disable firewalld
f.vi /etc/hosts
192.168.245.20 matser
192.168.245.21 node1
192.168.245.22 node2
2.下载并解压kubernetes
wget https://dl.k8s.io/v1.15.1/kubernetes-server-linux-amd64.tar.gz
tar -zxvf kubernetes-server-linux-amd64.tar.gz
3.把相关命令拷贝到环境变量目录下
cp kube-apiserver kube-controller-manager kube-scheduler /usr/bin/
4.安装kube-apiserver
mkdir -p /usr/local/k8s/conf/
vi /usr/lib/systemd/system/kube-apiserver.service
[Unit]
Description=Kubernetes API Server
Documentation=https://github.com/kubernetes/kubernetes
[Service]
EnvironmentFile=-/usr/local/k8s/conf/kube-apiserver
ExecStart=/usr/bin/kube-apiserver \
${KUBE_LOGTOSTDERR} \
${KUBE_LOG_LEVEL} \
${KUBE_ETCD_SERVERS} \
${KUBE_API_ADDRESS} \
${KUBE_API_PORT} \
${KUBE_ADVERTISE_ADDR} \
${KUBE_ALLOW_PRIV} \
${KUBE_SERVICE_ADDRESSES}
Restart=on-failure
[Install]
WantedBy=multi-user.target
vi /usr/local/k8s/conf/kube-apiserver
#启用日志标准错误
KUBE_LOGTOSTDERR="--logtostderr=true"
#日志级别
KUBE_LOG_LEVEL="--v=4"
#Etcd服务地址
KUBE_ETCD_SERVERS="--etcd-servers=http://192.168.245.20:2379,http://192.168.245.21:2379,http://192.168.245.22:2379"
#API服务监听地址
KUBE_API_ADDRESS="--insecure-bind-address=0.0.0.0"
#API服务监听端口
KUBE_API_PORT="--insecure-port=8080"
#对集群中成员提供API服务地址
KUBE_ADVERTISE_ADDR="--advertise-address=0.0.0.0"
#允许容器请求特权模式,默认false
KUBE_ALLOW_PRIV="--allow-privileged=false"
#集群分配的IP范围,自定义但是要跟后面的kubelet(服务节点)的配置DNS在一个区间
KUBE_SERVICE_ADDRESSES="--service-cluster-ip-range=10.0.0.0/24"
systemctl enable kube-apiserver #加入开机自动启动
systemctl start kube-apiserver #启动服务
5.安装kube-controller-manager
vi /usr/lib/systemd/system/kube-controller-manager.service
[Unit]
Description=Kubernetes Controller Manager
Documentation=https://github.com/kubernetes/kubernetes
After=kube-apiserver.service
Requires=kube-apiserver.service
[Service]
EnvironmentFile=-/usr/local/k8s/conf/kube-controller-manager
ExecStart=/usr/bin/kube-controller-manager \
${KUBE_LOGTOSTDERR} \
${KUBE_LOG_LEVEL} \
${KUBE_MASTER} \
${KUBE_LEADER_ELECT}
Restart=on-failure
[Install]
WantedBy=multi-user.target
vi /usr/local/k8s/conf/kube-controller-manager
KUBE_LOGTOSTDERR="--logtostderr=true"
KUBE_LOG_LEVEL="--v=4"
KUBE_MASTER="--master=192.168.245.20:8080"
systemctl enable kube-controller-manager #加入开机自动启动
systemctl start kube-controller-manager #启动服务
6.安装kube-scheduler
vi /usr/lib/systemd/system/kube-scheduler.service
[Unit]
Description=Kubernetes Scheduler
Documentation=https://github.com/kubernetes/kubernetes
After=kube-apiserver.service
Requires=kube-apiserver.service
[Service]
EnvironmentFile=-/usr/local/k8s/conf/kube-scheduler
ExecStart=/usr/bin/kube-scheduler \
${KUBE_LOGTOSTDERR} \
${KUBE_LOG_LEVEL} \
${KUBE_MASTER} \
${KUBE_LEADER_ELECT}
Restart=on-failure
[Install]
WantedBy=multi-user.target
vi /usr/local/k8s/conf/kube-scheduler
KUBE_LOGTOSTDERR="--logtostderr=true"
KUBE_LOG_LEVEL="--v=4"
KUBE_MASTER="--master=192.168.245.20:8080"
KUBE_LEADER_ELECT="--leader-elect"
systemctl enable kube-scheduler #加入开机自动启动
systemctl start kube-scheduler #启动服务
← etcd集群安装 k8s node节点搭建 →