[!TIP]
二进制部署k8s
- 部署etcd
集群
转载请注明出处:https://janrs.com
Alma
版本 8.6
etcd
版本 3.5.5
部署 etcd
集群
1.初始化系统
[!NOTE]
每台etcd
服务器都要设置
1-1.设置 hostname
[!NOTE]
设置后重启生效
hostnamectl set-hostname etcd-01
hostnamectl set-hostname etcd-02
hostnamectl set-hostname etcd-03
1-2.设置 /etc/hosts
cat >> /etc/hosts <<EOF
172.16.222.111 etcd-01
172.16.222.112 etcd-02
172.16.222.113 etcd-03
EOF
1-3.禁用 selinux
临时禁用和永久禁用
setenforce 0 && \
sed -ri '/^SELINUX/s/(SELINUX=)(.*)/\1disabled/' /etc/selinux/config
1-4.禁用 firewalld
和 iptables
[!NOTE]
如果iptables
没有安装则不用管
systemctl stop firewalld && systemctl disable firewalld && \
systemctl stop iptables && systemctl disable iptables
1-5.创建目录
mkdir -p /etc/etcd/ssl/ && \
mkdir -p /ssl/
1-6.设置接口版本变量
[!NOTE]
新版本的etcd
使用的是v3
版本的接口,有提供向下兼容v2
版本的接口。
如果需要,设置成使用v3
版本的。这里使用的是v3
版本。
每个节点都需要设置。
cat >> /etc/profile <<EOF
export ETCDETC_API=3
EOF
source /etc/profile
2.创建 ssl
证书
[!NOTE]
使用的是cloudflare
提供的cfssl
证书创建工具。
在etcd
集群中需要创建server
,peer
两种证书:
server
证书用于etcd
开启ssl
认证peer
证书用于集群内节点双向通信创建证书可以在任何地方创建,创建后上传到
etcd
服务器就行。
2-1.下载 cfssl
cd /home && \
wget https://pkg.cfssl.org/R1.2/cfssl_linux-amd64 && \
wget https://pkg.cfssl.org/R1.2/cfssljson_linux-amd64 && \
chmod +x cfssl_linux-amd64 cfssljson_linux-amd64 && \
mv cfssl_linux-amd64 /usr/local/bin/cfssl && \
mv cfssljson_linux-amd64 /usr/local/bin/cfssljson
2-2.创建证书
2-2-1.创建 ca
配置文件
cat > /ssl/ca-config.json <<EOF
{
"signing": {
"default": {
"expiry": "43800h"
},
"profiles": {
"server": {
"expiry": "43800h",