- 浏览: 568111 次
- 性别:
- 来自: 北京
文章分类
- 全部博客 (267)
- 随笔 (4)
- Spring (13)
- Java (61)
- HTTP (3)
- Windows (1)
- CI(Continuous Integration) (3)
- Dozer (1)
- Apache (11)
- DB (7)
- Architecture (41)
- Design Patterns (11)
- Test (5)
- Agile (1)
- ORM (3)
- PMP (2)
- ESB (2)
- Maven (5)
- IDE (1)
- Camel (1)
- Webservice (3)
- MySQL (6)
- CentOS (14)
- Linux (19)
- BI (3)
- RPC (2)
- Cluster (9)
- NoSQL (7)
- Oracle (25)
- Loadbalance (7)
- Web (5)
- tomcat (1)
- freemarker (1)
- 制造 (0)
最新评论
-
panamera:
如果设置了连接需要密码,Dynamic Broker-Clus ...
ActiveMQ 集群配置 -
panamera:
请问你的最后一种模式Broker-C节点是不是应该也要修改持久 ...
ActiveMQ 集群配置 -
maosheng:
longshao_feng 写道楼主使用 文件共享 模式的ma ...
ActiveMQ 集群配置 -
longshao_feng:
楼主使用 文件共享 模式的master-slave,produ ...
ActiveMQ 集群配置 -
tanglanwen:
感触很深,必定谨记!
少走弯路的十条忠告
一、NFS 介绍
NFS 是 Network FileSystem 的缩写,顾名思义就是网络文件存储系统,它最早是由 Sun 公司发展出来的,也是 FreeBSD 支持的文件系统中的一个,它允许网络中的计算机之间通过 TCP/IP 网络共享资源。通过 NFS,我们本地 NFS 的客户端应用可以透明地读写位于服务端 NFS 服务器上的文件,就像访问本地文件一样方便。简单的理解,NFS 就是可以透过网络,让不同的主机、不同的操作系统可以共享存储的服务。
NFS 的基本原则是“容许不同的客户端及服务端通过一组RPC分享相同的文件系统”,它是独立于操作系统,容许不同硬件及操作系统的系统共同进行文件的分享。
二、nfs服务器部署
yum install nfs-utils rpcbind -y
2、NFS服务器操作
# mkdir -p /app/k8s ##NFS挂载目录
# chmod 777 -R /app/k8s
# systemctl start rpcbind ##启动rpc服务
# systemctl enable rpcbind
# systemctl start nfs ##启动NFS服务
# systemctl enable nfs
## NFS默认配置文件路径是:/etc/exports
## /etc/exports配置文件的格式是:
## NFS共享的目录 NFS客户端地址(参数1,参数2)
## NFS共享的目录:为NFS服务器端要共享的实际目录,要用决定路径,如(/data)。注意共享目录的本地权限,需要读写权限,一定要让本地目录可以被NFS客户端的用户读写
## NFS客户端地址:为NFS服务器端授权的可访问的共享目录的NFS客户端地址,可以为单独的ip地址或者主机名,域名等,也可以是整个网段的地址
# echo "/app/k8s 192.101.11.159(rw,no_root_squash,sync)" >>/etc/exports ##NFS 客户端IP 192.101.11.159
# echo "/app/k8s 192.101.11.160(rw,no_root_squash,sync)" >>/etc/exports ##NFS 客户端IP 192.101.11.160
# echo "/app/k8s 192.101.11.161(rw,no_root_squash,sync)" >>/etc/exports ##NFS 客户端IP 192.101.11.161
# echo "/app/k8s 192.101.10.0/24(rw,no_root_squash,sync)" >>/etc/exports ##NFS 客户端IP 192.101.10.0---192.101.10.255
# exportfs -r #使配置生效
# systemctl restart nfs
# systemctl status nfs
注意:必须要先启动rpc服务,然后再启动NFS服务
# 查看 NFS 服务项 rpc 服务器注册的端口列表
$ rpcinfo -p localhost
# 服务端看下是否正确加载了设置的 /etc/exports 配置
$ showmount -e localhost
Export list for localhost:
/app/k8s 192.101.11.161,192.101.11.160,192.101.11.159
参数说明:
ro 只读访问
rw 读写访问
sync 所有数据在请求时写入共享
async nfs 在写入数据前可以响应请求
secure nfs 通过 1024 以下的安全 TCP/IP 端口发送
insecure nfs 通过 1024 以上的端口发送
wdelay 如果多个用户要写入 nfs 目录,则归组写入(默认)
no_wdelay 如果多个用户要写入 nfs 目录,则立即写入,当使用 async 时,无需此设置
hide 在 nfs 共享目录中不共享其子目录
no_hide 共享 nfs 目录的子目录
subtree_check 如果共享 /usr/bin 之类的子目录时,强制 nfs 检查父目录的权限(默认)
no_subtree_check 不检查父目录权限
all_squash 共享文件的 UID 和 GID 映射匿名用户 anonymous,适合公用目录
no_all_squash 保留共享文件的 UID 和 GID(默认)
root_squash root 用户的所有请求映射成如 anonymous 用户一样的权限(默认)
no_root_squash root 用户具有根目录的完全管理访问权限
anonuid=xxx 指定 nfs 服务器 /etc/passwd 文件中匿名用户的 UID
anongid=xxx 指定 nfs 服务器 /etc/passwd 文件中匿名用户的 GID
三、NFS客户端部署
yum install nfs-utils rpcbind -y ##不需要启动nfs服务
4、NFS客户端操作
# mkdir -p /app/k8s ##挂载NFS目录
# systemctl start rpcbind
# systemctl enable rpcbind
# mount -t nfs 192.101.11.156:/app/k8s /app/k8s
# df -h | grep 192.101.11.156
192.101.11.156:/app/k8s 98G 39G 60G 40% /app/k8s
## 卸载已挂载的NFS共享目录
# umount /app/k8s
四、启动自动挂载nfs文件
格式:
<server>:</remote/export> </local/directory> nfs < options> 0 0
# vi /etc/fstab
192.101.11.156:/app/k8s /app/k8s nfs defaults 0 0
保存退出,重启系统,查看/app/k8s 有没有自动挂载
# df -h | grep 192.101.11.156
192.101.11.156:/app/k8s 98G 39G 60G 40% /app/k8s
五、相关命令
1、exportfs
如果我们在启动了NFS之后又修改了/etc/exports,是不是还要重新启动nfs呢?这个时候我们就可以用exportfs 命令来使改动立刻生效,该命令格式如下:
# exportfs [-aruv]
-a 全部挂载或卸载 /etc/exports中的内容
-r 重新读取/etc/exports 中的信息 ,并同步更新/etc/exports、/var/lib/nfs/xtab
-u 卸载单一目录(和-a一起使用为卸载所有/etc/exports文件中的目录)
-v 在export的时候,将详细的信息输出到屏幕上。
具体例子:
# exportfs -au 卸载所有共享目录
# exportfs -rv 重新共享所有目录并输出详细信息
2、nfsstat
查看NFS的运行状态,对于调整NFS的运行有很大帮助。
3、rpcinfo
查看rpc执行信息,可以用于检测rpc运行情况的工具,利用rpcinfo -p 可以查看出RPC开启的端口所提供的程序有哪些。
4、showmount
-a 显示已经于客户端连接上的目录信息
-e IP或者hostname 显示此IP地址分享出来的目录
5、netstat
可以查看出nfs服务开启的端口,其中nfs 开启的是2049,portmap 开启的是111,其余则是rpc开启的。
最后注意两点,虽然通过权限设置可以让普通用户访问,但是挂载的时候默认情况下只有root可以去挂载,普通用户可以执行sudo。
NFS server 关机的时候一点要确保NFS服务关闭,没有客户端处于连接状态!通过showmount -a 可以查看,如果有的话用kill killall pkill 来结束,(-9 强制结束)
NFS 是 Network FileSystem 的缩写,顾名思义就是网络文件存储系统,它最早是由 Sun 公司发展出来的,也是 FreeBSD 支持的文件系统中的一个,它允许网络中的计算机之间通过 TCP/IP 网络共享资源。通过 NFS,我们本地 NFS 的客户端应用可以透明地读写位于服务端 NFS 服务器上的文件,就像访问本地文件一样方便。简单的理解,NFS 就是可以透过网络,让不同的主机、不同的操作系统可以共享存储的服务。
NFS 的基本原则是“容许不同的客户端及服务端通过一组RPC分享相同的文件系统”,它是独立于操作系统,容许不同硬件及操作系统的系统共同进行文件的分享。
二、nfs服务器部署
yum install nfs-utils rpcbind -y
2、NFS服务器操作
# mkdir -p /app/k8s ##NFS挂载目录
# chmod 777 -R /app/k8s
# systemctl start rpcbind ##启动rpc服务
# systemctl enable rpcbind
# systemctl start nfs ##启动NFS服务
# systemctl enable nfs
## NFS默认配置文件路径是:/etc/exports
## /etc/exports配置文件的格式是:
## NFS共享的目录 NFS客户端地址(参数1,参数2)
## NFS共享的目录:为NFS服务器端要共享的实际目录,要用决定路径,如(/data)。注意共享目录的本地权限,需要读写权限,一定要让本地目录可以被NFS客户端的用户读写
## NFS客户端地址:为NFS服务器端授权的可访问的共享目录的NFS客户端地址,可以为单独的ip地址或者主机名,域名等,也可以是整个网段的地址
# echo "/app/k8s 192.101.11.159(rw,no_root_squash,sync)" >>/etc/exports ##NFS 客户端IP 192.101.11.159
# echo "/app/k8s 192.101.11.160(rw,no_root_squash,sync)" >>/etc/exports ##NFS 客户端IP 192.101.11.160
# echo "/app/k8s 192.101.11.161(rw,no_root_squash,sync)" >>/etc/exports ##NFS 客户端IP 192.101.11.161
# echo "/app/k8s 192.101.10.0/24(rw,no_root_squash,sync)" >>/etc/exports ##NFS 客户端IP 192.101.10.0---192.101.10.255
# exportfs -r #使配置生效
# systemctl restart nfs
# systemctl status nfs
注意:必须要先启动rpc服务,然后再启动NFS服务
# 查看 NFS 服务项 rpc 服务器注册的端口列表
$ rpcinfo -p localhost
# 服务端看下是否正确加载了设置的 /etc/exports 配置
$ showmount -e localhost
Export list for localhost:
/app/k8s 192.101.11.161,192.101.11.160,192.101.11.159
参数说明:
ro 只读访问
rw 读写访问
sync 所有数据在请求时写入共享
async nfs 在写入数据前可以响应请求
secure nfs 通过 1024 以下的安全 TCP/IP 端口发送
insecure nfs 通过 1024 以上的端口发送
wdelay 如果多个用户要写入 nfs 目录,则归组写入(默认)
no_wdelay 如果多个用户要写入 nfs 目录,则立即写入,当使用 async 时,无需此设置
hide 在 nfs 共享目录中不共享其子目录
no_hide 共享 nfs 目录的子目录
subtree_check 如果共享 /usr/bin 之类的子目录时,强制 nfs 检查父目录的权限(默认)
no_subtree_check 不检查父目录权限
all_squash 共享文件的 UID 和 GID 映射匿名用户 anonymous,适合公用目录
no_all_squash 保留共享文件的 UID 和 GID(默认)
root_squash root 用户的所有请求映射成如 anonymous 用户一样的权限(默认)
no_root_squash root 用户具有根目录的完全管理访问权限
anonuid=xxx 指定 nfs 服务器 /etc/passwd 文件中匿名用户的 UID
anongid=xxx 指定 nfs 服务器 /etc/passwd 文件中匿名用户的 GID
三、NFS客户端部署
yum install nfs-utils rpcbind -y ##不需要启动nfs服务
4、NFS客户端操作
# mkdir -p /app/k8s ##挂载NFS目录
# systemctl start rpcbind
# systemctl enable rpcbind
# mount -t nfs 192.101.11.156:/app/k8s /app/k8s
# df -h | grep 192.101.11.156
192.101.11.156:/app/k8s 98G 39G 60G 40% /app/k8s
## 卸载已挂载的NFS共享目录
# umount /app/k8s
四、启动自动挂载nfs文件
格式:
<server>:</remote/export> </local/directory> nfs < options> 0 0
# vi /etc/fstab
192.101.11.156:/app/k8s /app/k8s nfs defaults 0 0
保存退出,重启系统,查看/app/k8s 有没有自动挂载
# df -h | grep 192.101.11.156
192.101.11.156:/app/k8s 98G 39G 60G 40% /app/k8s
五、相关命令
1、exportfs
如果我们在启动了NFS之后又修改了/etc/exports,是不是还要重新启动nfs呢?这个时候我们就可以用exportfs 命令来使改动立刻生效,该命令格式如下:
# exportfs [-aruv]
-a 全部挂载或卸载 /etc/exports中的内容
-r 重新读取/etc/exports 中的信息 ,并同步更新/etc/exports、/var/lib/nfs/xtab
-u 卸载单一目录(和-a一起使用为卸载所有/etc/exports文件中的目录)
-v 在export的时候,将详细的信息输出到屏幕上。
具体例子:
# exportfs -au 卸载所有共享目录
# exportfs -rv 重新共享所有目录并输出详细信息
2、nfsstat
查看NFS的运行状态,对于调整NFS的运行有很大帮助。
3、rpcinfo
查看rpc执行信息,可以用于检测rpc运行情况的工具,利用rpcinfo -p 可以查看出RPC开启的端口所提供的程序有哪些。
4、showmount
-a 显示已经于客户端连接上的目录信息
-e IP或者hostname 显示此IP地址分享出来的目录
5、netstat
可以查看出nfs服务开启的端口,其中nfs 开启的是2049,portmap 开启的是111,其余则是rpc开启的。
最后注意两点,虽然通过权限设置可以让普通用户访问,但是挂载的时候默认情况下只有root可以去挂载,普通用户可以执行sudo。
NFS server 关机的时候一点要确保NFS服务关闭,没有客户端处于连接状态!通过showmount -a 可以查看,如果有的话用kill killall pkill 来结束,(-9 强制结束)
发表评论
-
HTTPS的加密原理解读
2021-12-31 11:25 290一、为什么需要加密? 因为http的内容是明文传输的,明文数据 ... -
容器技术的基石: cgroup、namespace和联合文件系统
2021-12-09 10:47 719Docker 是基于 Linux Kernel 的 Names ... -
链路追踪skywalking安装部署
2021-10-21 12:06 809APM 安装部署: 一、下载 版本目录地址:http://a ... -
自动化运维 Ansible 安装部署
2021-08-20 19:06 838一、概述 Ansible 实现了批量系统配置、批量程序部署、 ... -
Linux 下 Kafka Cluster 搭建
2021-07-08 11:23 972概述 http://kafka.apachecn.org/q ... -
ELK RPM 安装配置
2021-06-22 18:59 614相关组件: 1)filebeat。用于收集日志组件,经测试其 ... -
在Kubernetes上部署 Redis 三主三从 集群
2021-03-10 16:25 661NFS搭建见: Linux NFS搭建与配置(https:// ... -
docker-compose 部署ELK(logstash->elasticsearch->kibana)
2020-11-11 18:02 1599概述: ELK是三个开源软件的缩写,分别表示:elastic ... -
Kubernetes1.16.3下部署node-exporter+alertmanager+prometheus+grafana 监控系统
2020-10-28 10:48 1068准备工作 建议将所有的yaml文件存在如下目录: # mkd ... -
K8S 备份及升级
2020-10-20 15:48 876一、准备工作 查看集群版本: # kubectl get no ... -
API 网关 kong 的 konga 配置使用
2020-09-23 10:46 4202一、Kong 概述: kong的 ... -
云原生技术 Docker、K8S
2020-09-02 16:53 554容器的三大好处 1.资源 ... -
Kubernetes 应用编排、管理与运维
2020-08-24 16:40 581一、kubectl 运维命令 kubectl control ... -
API 网关 kong/konga 安装部署
2020-08-25 17:34 593一、概述 Kong是Mashape开 ... -
Linux 下 Redis Cluster 搭建
2020-08-13 09:14 740Redis集群演变过程: 单 ... -
Kubernetes离线安装的本地yum源构建
2020-08-08 22:41 533一、需求场景 在K8S的使用过程中有时候会遇到在一些无法上网 ... -
Kubernetes 证书延期
2020-08-01 22:28 464一、概述 kubeadm 是 kubernetes 提供的一 ... -
kubeadm方式部署安装kubernetes
2020-07-29 08:01 2383一、前提准备: 0、升级更新系统(切记升级一下,曾被坑过) ... -
Kubernetes 部署 Nginx 集群
2020-07-20 09:32 868一.设置标签 为了保证nginx之能分配到nginx服务器需要 ... -
Prometheus 外部监控 Kubernetes 集群
2020-07-10 15:59 2041大多情况都是将 Prometheus 通过 yaml 安装在 ...
相关推荐
这是描述在centos下进行nfs,网路共享文件系统的配置与搭建
通过以上步骤,我们可以在Linux环境下成功搭建一个NFS服务器并配置客户端访问。NFS不仅能够方便地实现文件共享,还能提高数据访问的效率,尤其是在需要跨主机访问同一组文件的情况下。同时,合理配置防火墙规则和...
在Linux环境中,搭建DNS(Domain Name System)和NFS(Network File System)服务器是系统管理员必备的技能之一。这两个服务对于任何大型网络环境都至关重要,DNS负责将域名转换为IP地址,而NFS则允许不同计算机之间...
Linux下NFS的搭建安装与配置说明。步骤清晰,一目了然,简单上手。
### Linux下NFS及交叉编译环境的配置 #### 一、NFS配置详解 **1.1 NFS简介** NFS(Network File System)是一种网络文件系统,它允许用户通过网络共享文件,使得用户能够像访问本地文件一样访问远程文件。在嵌入式...
### 实现Windows与Linux的NFS共享目录服务详解 #### 引言 在跨平台的开发环境中,实现Windows与Linux之间的文件共享是一项常见的需求。NFS(Network File System)作为一款成熟的网络文件系统协议,提供了在异构...
本教程将介绍如何利用QEMU(Quick Emulator)搭建一个基于U-boot和Linux的NFS(Network File System)开发环境。QEMU是一款开源的全系统模拟器,它允许我们在主机上运行各种不同的客体操作系统,而无需物理硬件。NFS...
Linux 搭建 NFS 和 Ramdisk 文件系统定义 本文档主要介绍了 Linux 下如何搭建 NFS(Network File System)和 Ramdisk 文件系统,旨在帮助开发者快速了解并搭建这两种文件系统。 1. Linux 建立文件系统 Linux 文件...
#### 六、开发板配置与测试 - 使用超级终端连接开发板,并设置U-boot启动参数: - 设置启动参数: ```bash SMDK6410# setenv bootargs "root=/dev/nfs nfsroot=192.168.0.107:/forlinux/root ip=192.168.0.108:...
Linux 中搭建 NFS 服务器 Linux中搭建NFS服务器是指在Linux操作系统中搭建Network File System(网络文件系统)的服务器,实现文件共享的目的。NFS是一种基于XDR/RPC协议的文件共享协议,通过网络实现文件共享。...
Linux下NFS(网络文件系统)的建立与配置方法 Linux操作系统中,Network File System(NFS)是一种将远程主机上的分区(目录)经网络挂载到本地系统的一种机制,通过对网络文件系统的支持,用户可以在本地系统上像...
- **开发工具**:在搭建网络环境时,你需要准备如Linux操作系统、TFTP服务器软件(如xinetd)、NFS服务器软件(如nfs-utils)、网络配置工具等。 - **网络拓扑结构**:通常,开发环境会采用简单的网络拓扑,例如...
本教程将详细介绍如何在Linux环境中搭建NFS服务器,以便实现跨设备的文件共享。以下是对NFS服务器搭建过程的详细阐述: 首先,你需要在两台虚拟机上安装Linux操作系统。这里假设你已经选择了如Ubuntu或CentOS这样的...
Linux下的tftp与nfs是两种常用的网络文件传输和共享服务。它们在嵌入式开发、系统维护和远程部署等方面有着广泛的应用。本文主要讲解如何在Linux系统中搭建tftp和nfs服务。 首先,我们来看tftp服务的搭建过程。TFTP...
本文档记录了在 Linux debian 系统下搭建 TFTP 和 NFS 的方法和过程,以便与大家分享。 一、TFTP 搭建 TFTP(Trivial File Transfer Protocol),即普通文件传输协议,是一种用来传送文件的 Internet 程序。它比...
"2022年网络搭建与应用国赛开放题nfs题解答" 本资源提供了一个详细的网络搭建和应用解决方案,涵盖了Kerberos身份验证、NFS服务器配置和客户端安装等多个方面。下面是从该资源中提取的关键知识点: 1. Kerberos...
Linux 系统常见服务搭建(FTP、NFS、Samba) Linux 系统是目前最流行的服务器操作系统之一,作为一个系统管理员,了解 Linux 系统下的常见服务搭建是非常必要的。本文将对 Linux 系统下的三种常见服务进行搭建,...
使用NFS时,还需要了解与安全性相关的配置,如使用`nfsd`的版本选择、防火墙设置以及是否使用`securenfs`参数来要求客户端进行认证。这些安全设置有助于防止未经授权的访问和数据泄露。 通过理解NFS的配置和使用...
Linux+NFS安装配置文档及nfs-util+portmap安装包主要涵盖了在Linux系统中搭建和管理网络文件系统(Network File System,NFS)的基础知识。NFS是一种分布式文件系统协议,允许不同计算机之间共享文件和目录,使得多...