英文Network File System(NFS),是由SUN公司研制的UNIX表示层协议(presentation layer
protocol),能使使用者访问网络上别处的文件就像在使用自己的计算机一样。NFS在实际场景中有着不少的应用场景,比如分布式代码部署下,代码一致性的同步方案,K8S多容器内外挂载等情况,今天就来具体讲解一下怎么实现。

卷的初始化及挂载

如果是一个新卷需要进行卷的初始化,操作如下。如果是已经激活挂载的设备,忽略本部分内容。

  1. 查看磁盘挂载状态 df -h
  2. 查看可用的卷信息 lsblk
  3. 初始化新卷 sudo mkfs -t xfs /dev/nvme2n1
  4. 挂载卷 sudo mount /dev/nvme2n1 /ceph
  5. 如果需要卸载卷,卸载卷命令 umount -f /ceph

搭建NFS服务

  1. 先用rpm -qa命令查看所需安装包(nfs-utils、rpcbind)是否已经安装,如果显示如下信息,则表示环境已经安装,无需进行再次安装。
[root@ip-192-157-3-92 /]# rpm -qa | grep "rpcbind"
rpcbind-0.2.0-11.el6.x86_64
[root@ip-192-157-3-92 /]# rpm -qa | grep "nfs"
nfs-utils-1.2.3-39.el6.x86_64
nfs4-acl-tools-0.3.3-6.el6.x86_64
nfs-utils-lib-1.1.5-6.el6.x86_64
  1. 如果没有安装NFS服务,则进行安装,NFS服务依赖于rpcbind。
yum -y install nfs-utils rpcbind
  1. 然后配置ceph可被远程访问,其中*表示允许所有机器链接,也可以指定IP;rw表示操作的权限;sync表示数据同步的方式。如果需要细致配置,请参考nfs配置详情,这里不做主要描述。
[root@ip-192-157-3-92 /]# vi /etc/exports
/ceph *(rw,sync,no_root_squash)
  1. 启动NFS服务,依次启动rpcbind,nfs两个服务。
[root@ip-192-157-3-92 /]# service rpcbind start
Starting rpcbind: [ OK ]
[root@ip-192-157-3-92 /]# service nfs start
Starting NFS services: [ OK ]
Starting NFS quotas: [ OK ]
Starting NFS mountd: [ OK ]
Stopping RPC idmapd: [ OK ]
Starting RPC idmapd: [ OK ]
Starting NFS daemon: [ OK ]
  1. 很多时候需要保持NFS的高可用,如果需要开机自动启动NFS服务,进行如下设置。
[root@ip-192-157-3-92 /]# chkconfig rpcbind on
[root@ip-192-157-3-92 /]# chkconfig nfs on
  1. 经过上面的操作,就将新的一个卷挂载到了服务器上面,并针对于这个卷开启了一个NFS的服务。下面通过其他机器来远程挂载这个磁盘。如果云服务器挂载超时,需检查一下安全组放行一下NFS端口。
#先切换到另外一个机器B。在新的机器上面创建一个ceph目录, 然后创建一个ceph的目录,执行下面命令进行挂载
mkdir ceph
#192.157.3.92这个ip是机器A的ip
mount -t nfs 192.157.3.92:/ceph /ceph -o proto=tcp
df -h
  1. 通过下面的案例来演示NFS的搭建使用效果,就可以看到NFS卷被成功挂载。
# 然后去机器A上面 创建文件夹 test
cd /ceph
mkdir test
# 再去机器B上面可以看到文件夹同步被显示。
cd /ceph
ls

今天的内容就分享到这里,喜欢的话,给个关注,更多精彩,即将呈现。

【运维】Linux/Ec2挂载卷与NFS搭建实站讲解的更多相关文章

  1. 拾人牙慧篇之——linux文件挂载,基于nfs的文件共享系统安装配置

    一.写在前面 最近需要把阿里云上的四台服务器的项目迁移到客户提供的新的项目中,阿里云的项目平时开发启动的时候知道有个nfs文件系统,表现就是后台管理系统通过freemarker生成的HTML文件,自动 ...

  2. 安全运维 -- Linux服务器使用公私钥密匙证书登录

    环境:Ubuntu 16 前言 黑客遍地都是,ssh/pop3/ftp等爆破工具的流行让站长的日常运维工作量大大加重.Metasplot,Bruter等工具更是针对以上协议有专门 的破解方法,有字典破 ...

  3. 安全运维 - Linux系统维护

    命令相关 帮助信息命令:help.whatis.info.which.whereis.man 目录管理: cd.ls.mkdir.rm.chmod.mv 用户管理: groupadd.groupdel ...

  4. 安全运维 - Linux系统攻击应急响应

    Linux 应急相应 - 总纲 应急准备: 制定应急策略 组建应急团队 其他应急资源 安全事件处理: 痕迹数据获取 分析.锁定攻击源删除可疑账号关闭异常进程.端口禁用相应异常开机启动项删除异常定时任务 ...

  5. 安全运维 - Linux系统攻击回溯

    入侵排查思路 (1)- 日志分析 日志分析 默认日志路径: /var/log 查看日志配置情况: more /etc/rsyslog.conf 重要日志: 登录失败记录: /var/log/btmp ...

  6. 【原创】运维基础之Docker(3)搭建私有仓库

    下载并启动registry $ docker pull registry$ docker run --name my_registry -d -p 5000:5000 -v /var/lib/regi ...

  7. 如何快速成为一名Linux运维工程师

    如今的互联网,绝大多数的网站.服务.游戏均是跑在Linux上面的,虽说Linux发行版众多,只要玩熟了一种发行版,了解了Linux精髓.基本架构.设计原理,其他都是触类旁通的,千万不要在选择哪一发行版 ...

  8. Linux运维工程师学习大纲

    linux运维课程大纲: Linux运维: Linux系统管理: Linux服务及安全管理: httpd,lamp,lnmp cache:memcached,varnish DB:mysql(mari ...

  9. Linux运维完全小白入门指南

    前几天整理了一下自己入门时候搜集的资料,一边整理一边回忆. 那时候我还是个小白,用虚拟机装了个CentOS系统来玩,但是总也装不上,在论坛上求助也没人理.半天终于有个人说在某网站看过这个问题,我又找了 ...

  10. 一个兼职DBA的数据库运维经验 小米科技 xx@xiaomi.com 2011

    一个兼职DBA的数据库运维经验 小米科技  xx@xiaomi.com 2011 内存扩容 16G->64G ,调大bp后,凌晨说监控物理内存有余量情况下,开吃swap,内存泄露措施1  定时 ...

随机推荐

  1. 轻量级CI/CD发布部署环境搭建及使用_01_基本介绍

    轻量级CI/CD发布部署环境搭建及使用_01_基本介绍 授人以鱼不如授人以渔,如果说的别人都没明白,说明自己实际也不是太明白 最终实现效果如图 1,选择相应环境下的项目,执行构建 注: web:vue ...

  2. Django中获取用户IP方法

    Django中通过request.META可以来获取用户的IP. request.META 是一个Python字典,包含了所有本次HTTP请求的Header信息,比如用户IP地址和用户Agent(通常 ...

  3. 栈的数学性质:n个不同元素入栈,出栈元素不同排列的个数的推导,卡特兰数(明安图数)的推导

    栈的数学性质:n个不同元素入栈,出栈元素不同排列的个数的推导,卡特兰数(明安图数)的推导 前言:重在记录,可能出错. 这部分内容借鉴了网络上的一些内容.如:什么是卡特兰数?和怎么理解出栈顺序有多少种? ...

  4. Python中文官方文档

    Python 2.7.18 的中文文档:  https://docs.python.org/zh-cn/2.7/ Python 3.10.6 的官方文档:https://docs.python.org ...

  5. c++多线程thread用法小例子

    测试分布式存储系统时,针对并发测试,同时创建500个文件,采用这种方法. #include<iostream> #include<thread> using namespace ...

  6. 优秀PHP程序员技术成长之路

    按照了解的很多PHP/LNMP程序员的发展轨迹,结合个人经验体会,抽象出很多程序员对未来的迷漫,特别对技术学习的盲目和慌乱,简单梳理了这个每个阶段PHP程序员的技术要求,来帮助很多PHP程序做对照设定 ...

  7. uniapp 返回上一页事件监听

    需求 点击订单页---订单详情页----点击修改地址---来到地址列表,修改地址--- 成功以后返回订单详情页,并且更新界面数据 首先在订单详情页   设置事件  监听另一界面触发事件后  就会执行并 ...

  8. Java学习笔记(一)环境安装与java基础

    学习笔记01 两年前学的Java,现在已经忘得差不多了,跟着狂神说Java的视频从头开始学,希望能救一救ww 一.JDK JRE JVM 1. JDK java development kit 2. ...

  9. 向mysql插入数据报错 pymysql.err.DataError: (1406, "Data too long for column 'class' at row 1") 解决方案

    这个问题一开始更换数据类型或者数据类型的大小,发现还是不行.后面通过网上查询了一条神奇的sql语句分分钟钟的解决了 问题原因明明是: 字段的长度不够存放数据 解决方案: 在mysql命令行输入如下:S ...

  10. vue3中reactive数据被重新赋值后无法双向绑定,使用reactive包裹数组如何正确赋值?

    需求:将接口请求到的列表数据赋值给响应数据arr const arr = reactive([]); const load = () => { const res = [2, 3, 4, 5]; ...