当前位置:网站首页>多个kubernetes集群如何实现共享同一个存储
多个kubernetes集群如何实现共享同一个存储
2022-07-07 02:31:00 【江小南】
引言
今天工作的时候想了一个问题:项目上使用的是双集群部署应用,但是使用的存储却只有一个,还起来一个怪有趣的名字,叫“多中心共享存储”。这样做的优点很明显,一个存储实现了多集群的数据共享,这个也很好理解,虽然是多个集群,但是应用却是相同的,数据理应可以共享。那么是如何做的呢?思考许久,想到了破解方法。
环境准备
服务器准备
准备了7台服务器,这些服务器在同一个网络之内,可以互相访问。6台服务器可以建两个kubernetes集群(一主两从),还有一台作为NFS文件系统的主节点。
资源分配
k8s集群1 | k8s集群2 | NFS |
---|---|---|
192.168.0.135 | 192.168.0.163 | 192.168.0.185 |
192.168.0.198 | 192.168.0.247 | |
192.168.0.12 | 192.168.0.167 |
说明:NFS是网络文件系统,单独给一台服务器作为server,其他服务器都是client。
安装NFS
所有节点执行
yum install -y nfs-utils
nfs主节点(192.168.0.185)执行
echo "/nfs/data/ *(insecure,rw,sync,no_root_squash)" > /etc/exports # 暴露了目录/nfs/data/,`*`表示所有节点都可以访问。
mkdir -p /nfs/data
systemctl enable rpcbind --now
systemctl enable nfs-server --now
# 配置生效
exportfs -r
# 检查验证
[[email protected] ~]# exportfs
/nfs/data <world>
[[email protected] ~]#
nfs从节点执行
# 展示192.168.0.185有哪些目录可以挂载
showmount -e 192.168.0.185 # ip改成自己的主节点ip
mkdir -p /nfs/data
# 将本地目录和远程目录进行挂载
mount -t nfs 192.168.0.185:/nfs/data /nfs/data
验证
# 在任意节点写入一个测试文件
echo "hello nfs server" > /nfs/data/test.txt
通过在任意节点写入一个文件,在其他节点都可以看到文件内容。这样便实现了kubernetes多个集群的文件共享。将NFS主节点单独维护,不会对kubernetes集群造成影响。“多中心共享存储”由此诞生了。
边栏推荐
- [GNN] graphic gnn:a gender Introduction (including video)
- Crudini profile editing tool
- Array proof during st table preprocessing
- 企业如何进行数据治理?分享数据治理4个方面的经验总结
- Common problems of caching in high concurrency scenarios
- MySQL installation
- Redis(一)——初识Redis
- 算法---比特位计数(Kotlin)
- POI export to excel: set font, color, row height adaptation, column width adaptation, lock cells, merge cells
- 多学科融合
猜你喜欢
Unable to debug screen program with serial port
JESD204B时钟网络
博士申请 | 上海交通大学自然科学研究院洪亮教授招收深度学习方向博士生
缓存在高并发场景下的常见问题
Matlab / envi principal component analysis implementation and result analysis
HKUST & MsrA new research: on image to image conversion, fine tuning is all you need
Redis (I) -- getting to know redis for the first time
MySQL installation
Ant manor safety helmet 7.8 ant manor answer
Tkinter window selects PCD file and displays point cloud (open3d)
随机推荐
当前发布的SKU(销售规格)信息中包含疑似与宝贝无关的字
Leetcode T1165: 日志分析
Stack and queue-p79-10 [2014 unified examination real question]
[solution] final app status- undefined, exitcode- 16
途家、木鸟、美团……民宿暑期战事将起
ESXI挂载移动(机械)硬盘详细教程
VIM mapping large K
「运维有小邓」符合GDPR的合规要求
精准时空行程流调系统—基于UWB超高精度定位系统
Unable to debug screen program with serial port
Basic DOS commands
PostgreSQL database timescaledb function time_ bucket_ Gapfill() error resolution and license replacement
项目实战 五 拟合直线 获得中线
Abnova 膜蛋白脂蛋白体技术及类别展示
算法---比特位计数(Kotlin)
缓存在高并发场景下的常见问题
[start from scratch] detailed process of deploying yolov5 in win10 system (CPU, no GPU)
JVM in-depth
网络基础 —— 报头、封装和解包
C interview encryption program: input plaintext by keyboard, convert it into ciphertext through encryption program and output it to the screen.