k8s部署etcd集群

本文内容纲要:k8s部署etcd集群

看到51cto的一个教程,感觉还不错 https://edu.51cto.com/sd/bf0f7

1、k8s部署高可用etcd集群时遇到了一些麻烦,这个是自己其中一个etcd的配置文件

例如:

[Unit]

Description=Etcd Server

After=network.target

After=network-online.target

Wants=network-online.target

Documentation=https://github.com/coreos

[Service]

User=k8s

Type=notify

WorkingDirectory=/var/lib/etcd/

ExecStart=/opt/k8s/bin/etcd \

--data-dir=/var/lib/etcd \

--name=ELK-chaofeng04 \

--cert-file=/etc/etcd/cert/etcd.pem \

--key-file=/etc/etcd/cert/etcd-key.pem \

--trusted-ca-file=/etc/kubernetes/cert/ca.pem \

--peer-cert-file=/etc/etcd/cert/etcd.pem \

--peer-key-file=/etc/etcd/cert/etcd-key.pem \

--peer-trusted-ca-file=/etc/kubernetes/cert/ca.pem \

--peer-client-cert-auth \

--client-cert-auth \

--listen-peer-urls=https://172.16.0.54:2380 \

--initial-advertise-peer-urls=https://172.16.0.54:2380 \

--listen-client-urls=https://172.16.0.54:2379,https://127.0.0.1:2379 \

--advertise-client-urls=https://172.16.0.54:2379 \

--initial-cluster-token=etcd-cluster-0 \

--initial-cluster ELK-chaofeng04=https://172.16.0.54:2380,ELK-chaofeng05=https://172.16.0.55:2380,ELK-chaofeng06=https://172.16.0.56:2380 \

--initial-cluster-state=new

Restart=on-failure

RestartSec=5

LimitNOFILE=65536

[Install]

WantedBy=multi-user.target

这只是其中的一个节点上的配置文件,其他的节点上的配置文件大同小异,只是IP和hostname主机名不同罢了。

2、在部署的过程中,不会发现这三个etcd的输出是这样子的:

第一个节点:

Image

第二个节点:

Image

第三个节点:

Image

通过输出会觉得第一个节点和第三个节点时有问题的,但是其实是没有的。三个节点分别只要能看到绿色的“activing(running)”就表示是成功的,当然,还可以再一步进行如下的验证,说明etcd集群没有问题:

Image

magic17.sh的脚本如下所示:

#!/bin/bash

source /opt/k8s/bin/environment.sh

for node_ip in ${NODE_IPS[@]}

do

echo ">>> ${node_ip}"

ETCDCTL_API=3 /opt/k8s/bin/etcdctl \

--endpoints=https://${node_ip}:2379 \

--cacert=/etc/kubernetes/cert/ca.pem \

--cert=/etc/etcd/cert/etcd.pem \

--key=/etc/etcd/cert/etcd-key.pem endpoint health

done

本文内容总结:k8s部署etcd集群

原文链接:https://www.cnblogs.com/FengGeBlog/p/10810632.html

以上是 k8s部署etcd集群 的全部内容, 来源链接: utcz.com/z/297027.html

回到顶部