Kubernetes单节点集群部署----etcd数据库

本文详细介绍了如何部署Kubernetes单节点etcd集群,包括etcd的主要功能、工作原理,以及从创建CA证书到配置etcd服务的完整步骤,确保节点间通信的安全性和一致性。
摘要由CSDN通过智能技术生成

Kubernetes单节点集群部署----etcd数据库

一:介绍etcd

​ etcd是一个采用HTTP协议的健/值对存储系统,它是一个分布式和功能层次配置系统,可用于构建服务发现系统、用于共享配置和服务发现。提供了可靠的数据持久化特性,是安全的并且文档也十分齐全。由GO语言实现。

1、etcd主要提供的能力
  • 提供存储以及获取数据的接口,它通过协议保证 Etcd 集群中的多个节点数据的强一致性。用于存储元信息以及共享配置。

  • 提供监听机制,客户端可以监听某个key或者某些key的变更,用于监听和推送变更。

  • 提供key的过期以及续约机制,客户端通过定时刷新来实现续约,用于集群监控以及服务注册发现。

  • 提供原子的CAS(Compare-and-Swap)和 CAD(Compare-and-Delete)支持。用于分布式锁以及leader选举。

2、工作原理

​ etcd使用Raft协议来维护集群内各个节点状态的一致性。简单说,etcd集群是一个分布式系统,由多个节点相互通信构成整体对外服务,每个节点都存储了完整的数据,并且通过Raft协议保证每个节点维护的数据是一致的。

二:搭建etcd数据库

  • 实验环境

相关软件包可自行下载,链接:https://pan.baidu.com/s/1UahM8C6Nc5CwUaaQpLHY0Q
提取码:q52e

三台虚拟机:master、node01、node02

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-4kClq2W8-1588172923606)(C:\Users\xumin\AppData\Roaming\Typora\typora-user-images\1588166518582.png)]

每台虚拟机都要先配置相对应的静态IP地址。

以一台为例:

[root@localhost ~]# vim /etc/sysconfig/network-scripts/ifcfg-ens33

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-9oSLKl4I-1588172923608)(C:\Users\xumin\AppData\Roaming\Typora\typora-user-images\1588160673101.png)]

[root@localhost ~]# service network restart    ‘重启网络’
[root@localhost ~]# ping www.baidu.com   ‘测试网络是否通’
[root@localhost ~]# systemctl stop NetworkManager
[root@localhost ~]# systemctl disable NetworkManager   ‘防止重启虚拟机IP地址变化’
[root@localhost ~]# iptables -F    ‘清空防火墙规则’
[root@localhost ~]# setenforce 0    ‘关闭核心防护’
  • 实验步骤

在master节点配置

1、 ETCD之间通信都是经过加密的,所以要创建CA证书, 要下载认证工具(cfssl工具)
[root@localhost ~]# mkdir k8s
[root@localhost ~]# cd k8s/
[root@localhost k8s]# vim cfssl.sh
curl -L https://pkg.cfssl.org/R1.2/cfssl_linux-amd64 -o /usr/local/bin/cfssl
curl -L https://pkg.cfssl.org/R1.2/cfssljson_linux-amd64 -o /usr/local/bin/cfssljson
curl -L https://pkg.cfssl.
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值