在Rancher中使用NFS,实现容器跨主机共享数据
来源:互联网 发布:bw报表软件 编辑:程序博客网 时间:2024/06/03 19:21
在Rancher中使用NFS,实现容器跨主机共享数据
摘要:
本文通过实例介绍怎样在Rancher中配置Rancher-NFS,实现Rancher中“服务”内的“容器”实例共享一台外置NFS-Server服务器上的数据目录。
环境说明:
首先使用1台Rancher Server虚机和3台Rancher Agent虚机搭建集群环境。用一条命令,复制粘贴,创建好Rancher Server以后,使用内置的Swarm模板,创建mySwarm环境,并将3个Rancher Node加入到mySwarm环境中。创建一个空的myApp“应用”,以便在这个“应用”中创建测试用的“服务”。
Rancher非常易用,整个搭建过程非常简单,可以参见文末的参考链接,不再赘述。
同时,单独准备一台Ubuntu 16.04机器,安装上NFS服务,共享/data目录,便于测试。
Rancher Server:192.168.3.160
Rancher Node4:192.168.3.164
Rancher Node5:192.168.3.165
Rancher Node6:192.168.3.166
NFS Server :192.168.3.167,共享目录/data,
一、在应用商店中,添加Rancher NFS应用,Rancher NFS配置选项:
二、在myApp“应用”中,添加一个“服务”myalpine1的配置选项:
*三、在myapp“应用”中,再添加一个“服务”nginx1的配置选项:
四、验证NFS服务器端和Rancher工作主机上的容器内的目录内容是否一致:
五、附图:
1.1-Swarm-基础设施-添加mySwarm环境-以默认的Swarm为模板
1.2-基础设施应用-从应用商店添加
1.3-在应用商店中-搜索nfs-找到Rancher-NFS
1.4-选择一个模板版本-进行部署
1.5-选择一个模板版本-进行部署
1.6-Rancher-NFS配置选项页面-NFS服务器地址-共享出来的目录-NFS版本-三项必填
1.7-Rancher会自动创建NFS应用-包含3个容器
1.8-Rancher分别在Node4-5-6三个主机节点上各创建了1个nfs-nfs-driver存储驱动
2.1-添加一个myalpine1服务
2.2-添加一个myalpine1服务-填写卷和卷驱动
2.3-存储驱动中已经创建好了一个卷myalpine1
2.4-查看容器myapp-myalpine1可以看到卷及挂载点files
2.5-到myapp-myalpine1服务中-执行命令行.jpg
2.6-到myapp-myalpine1容器的命令行中,查看目录,已经自动创建了files目录,创建一个文本文件
2.7-扩展服务到3个容器,Rancher自动在node5、node6上创建两个容器
2.8-在node6主机上的容器中执行命令行
2.9-在node6主机上的容器中执行命令行,看到的内容和node4主机上的的容器目录内容是一样的
2.10-在NFS服务器上查看data目录,自动生成了myalpine1目录以及该目录下的文本文件
3.1-以Nginx镜像创建3个容器实例的nginx1服务-卷的参数设置1
3.2-以Nginx镜像创建3个容器实例的nginx1服务-卷的参数设置2
3.3-到新创建的Nginx1服务的容器实例中-执行命令行-创建一个测试文件1
3.4-到新创建的Nginx1服务的容器实例中-执行命令行-创建一个测试文件2
3.5-到NFS服务器端,查看data目录,自动创建了nginx1_html卷的目录,并且能看到在容器中创建的文件内容1
3.6-在nginx1服务的另一个容器实例中-跨主机-执行命令行-查看该容器的html目录,能够看到刚才在另一个容器实例中创建的文件内容1
3.7-在nginx1服务的另一个容器实例中-跨主机-执行命令行-查看该容器的html目录,能够看到刚才在另一个容器实例中创建的文件内容2
1.1-Swarm-基础设施-添加mySwarm环境-以默认的Swarm为模板
1.2-基础设施应用-从应用商店添加
1.3-在应用商店中-搜索nfs-找到Rancher-NFS
1.4-选择一个模板版本-进行部署
1.5-选择一个模板版本-进行部署
1.6-Rancher-NFS配置选项页面-NFS服务器地址-共享出来的目录-NFS版本-三项必填
1.7-Rancher会自动创建NFS应用-包含3个容器
1.8-Rancher分别在Node4-5-6三个主机节点上各创建了1个nfs-nfs-driver存储驱动
2.1-添加一个myalpine1服务
2.2-添加一个myalpine1服务-填写卷和卷驱动
2.3-存储驱动中已经创建好了一个卷myalpine1
2.4-查看容器myapp-myalpine1可以看到卷及挂载点files
2.5-到myapp-myalpine1服务中-执行命令行.jpg
2.6-到myapp-myalpine1容器的命令行中,查看目录,已经自动创建了files目录,创建一个文本文件
2.7-扩展服务到3个容器,Rancher自动在node5、node6上创建两个容器
2.8-在node6主机上的容器中执行命令行
2.9-在node6主机上的容器中执行命令行,看到的内容和node4主机上的的容器目录内容是一样的
2.10-在NFS服务器上查看data目录,自动生成了myalpine1目录以及该目录下的文本文件
3.1-以Nginx镜像创建3个容器实例的nginx1服务-卷的参数设置1
3.2-以Nginx镜像创建3个容器实例的nginx1服务-卷的参数设置2
3.3-到新创建的Nginx1服务的容器实例中-执行命令行-创建一个测试文件1
3.4-到新创建的Nginx1服务的容器实例中-执行命令行-创建一个测试文件2
3.5-到NFS服务器端,查看data目录,自动创建了nginx1_html卷的目录,并且能看到在容器中创建的文件内容1
3.6-在nginx1服务的另一个容器实例中-跨主机-执行命令行-查看该容器的html目录,能够看到刚才在另一个容器实例中创建的文件内容1
3.7-在nginx1服务的另一个容器实例中-跨主机-执行命令行-查看该容器的html目录,能够看到刚才在另一个容器实例中创建的文件内容2
参考链接:
Ubuntu 16.04系统上NFS的安装与使用
http://blog.csdn.net/csdn_duomaomao/article/details/77822883
Rancher 中应用、服务、容器的概念
http://blog.csdn.net/csdn_duomaomao/article/details/76184437
使用Rancher搭建K8S测试环境
http://blog.csdn.net/csdn_duomaomao/article/details/75316926
Rancher 官方在线培训-教学视频链接及内容目录
http://blog.csdn.net/csdn_duomaomao/article/details/76156334
Rancher 中配置NFS卷驱动插件
https://www.xtplayer.cn/2017/06/2901
- 在Rancher中使用NFS,实现容器跨主机共享数据
- 如何在 Rancher 中统一管理容器日志
- Rancher 中默认运行一个nginx 服务(1个容器),为什么在主机端无法访问该服务?
- 在嵌入式开发中利用NFS将主机文件共享到开发板的方法
- win7 中使用NFS共享
- 在VirtualBox中实现主机文件的共享
- 【Docker容器的跨主机访问】-【使用网桥实现跨主机容器连接】
- 【Docker容器的跨主机访问】- 使用Open vSwitch实现跨主机容器连接
- 【Docker容器的跨主机访问】- 使用weave实现跨主机容器连接
- ubuntu linux主机中使用Virtualbox安装虚拟机,让宿主机和虚拟机之间实现数据共享
- ubuntu linux主机中使用Virtualbox安装虚拟机,让宿主机和虚拟机之间实现数据共享
- 使用NFS在服务器间共享文件
- 在Mesos上创建Rancher容器服务
- 如何在Rancher Catalog中使用VMware Harbor
- 在virtualbox中使用数据共享空间
- docker 使用网桥实现跨主机容器链接
- 使用openvswitch实现跨主机docker容器互联
- 使用openvswitch实现跨主机docker容器互联
- js null和undefined的区别
- jmeter操作说明
- UNIX环境编程学习笔记(21)——进程管理之获取进程终止状态的 wait 和 waitpid 函数
- java环境变量配置好后双击jar文件无法运行的解决办法
- 关于 React Native 与 WebView 的通信
- 在Rancher中使用NFS,实现容器跨主机共享数据
- 【算法】图的最小生成树(Kruskal算法)
- Day16-50.Constructor initialization
- GridView的getChildAt(postion)获取不到指定位置的item的解决方法(动态设置指定item为选中状态)
- This逸出
- [笔记分享] [RTC] RTC Software之内核框架
- 项目管理中如何更好的控制客户的需求?
- 【位运算知识+前缀思路+后缀思路】CS Course HDU
- 【Python】Python3多线程