安卓手机i怎么搭建nfs服务器

安卓手机i怎么搭建nfs服务器,第1张

下载下来安装一直下一步最后完成

启动软件

点击输出然后点击编辑

在文本框里面增加 一个行

E:\linux_share -name:linux_share -alldirs

linux_share是e:盘目录下的一个nfs 的挂载点

此时可以进入设备(注:我这里没有设备就用vm linux了),进入一个/mnt目录

输入 mkdir testnfs

然后 mount -t nfs 192168111:/linux_share /mnt/testnfs/ -o nolock

mount 是命令

-t nfs 指定文件系统是nfs

192168111是window的ip

/mnt/testnfs 是linux本地挂载点

此时就可以看到window下的文件了!

Linux客户端可以直接通过mount命令挂载NFS文件,

如下操作:

[root@linux-a ~]# mkdir /mnt/nsf1 //创建挂载点

[root@linux-a ~]# mount -t nfs 1921680231:/nfs/frank /mnt/nfs1

[root@linux-a ~]# mount | grep nfs

[root@linux-a ~]# umount /mnt/nfs1

通过修改/etc/fstab文件可以实现开机自动挂载nfs目录

[root@linux-b nfs1]# vim /etc/fstab

/dev/VolGroup00/LogVol00 / ext3 defaults 1 1

LABEL=/boot /boot ext3 defaults 1 2

devpts /dev/pts devpts gid=5,mode=620 0 0

tmpfs /dev/shm tmpfs defaults 0 0

proc /proc proc defaults 0 0

sysfs /sys sysfs defaults 0 0

/dev/VolGroup00/LogVol01 swap swap defaults 0 0

1921680231:/nfs/frank /mnt/nfs1 nfs defaults 0 0

以上最后一行是针nfs的自动挂载配置。

在前面已经提到,容器的生命周期可能很短,会被频繁地创建和销毁。那么容器在销毁时,保存在容器中的数据也会被清除。这种结果对用户来说,在某些情况下是不乐意看到的。为了持久化保存容器的数据,kubernetes引入了Volume的概念。

Volume是Pod中能够被多个容器访问的共享目录,它被定义在Pod上,然后被一个Pod里的多个容器挂载到具体的文件目录下,kubernetes通过Volume实现同一个Pod中不同容器之间的数据共享以及数据的持久化存储。Volume的生命容器不与Pod中单个容器的生命周期相关,当容器终止或者重启时,Volume中的数据也不会丢失。

kubernetes的Volume支持多种类型,比较常见的有下面几个:

EmptyDir是最基础的Volume类型,一个EmptyDir就是Host上的一个空目录。

EmptyDir是在Pod被分配到Node时创建的,它的初始内容为空,并且无须指定宿主机上对应的目录文件,因为kubernetes会自动分配一个目录,当Pod销毁时, EmptyDir中的数据也会被永久删除。 EmptyDir用途如下:

接下来,通过一个容器之间文件共享的案例来使用一下EmptyDir。

在一个Pod中准备两个容器nginx和busybox,然后声明一个Volume分别挂在到两个容器的目录中,然后nginx容器负责向Volume中写日志,busybox中通过命令将日志内容读到控制台。

创建一个volume-emptydiryaml

EmptyDir中数据不会被持久化,它会随着Pod的结束而销毁,如果想简单的将数据持久化到主机中,可以选择HostPath。

HostPath就是将Node主机中一个实际目录挂在到Pod中,以供容器使用,这样的设计就可以保证Pod销毁了,但是数据依据可以存在于Node主机上。

创建一个volume-hostpathyaml:

HostPath可以解决数据持久化的问题,但是一旦Node节点故障了,Pod如果转移到了别的节点,又会出现问题了,此时需要准备单独的网络存储系统,比较常用的用NFS、CIFS。

NFS是一个网络文件存储系统,可以搭建一台NFS服务器,然后将Pod中的存储直接连接到NFS系统上,这样的话,无论Pod在节点上怎么转移,只要Node跟NFS的对接没问题,数据就可以成功访问。

1)首先要准备nfs的服务器,这里为了简单,直接是master节点做nfs服务器

2)接下来,要在的每个node节点上都安装下nfs,这样的目的是为了node节点可以驱动nfs设备

3)接下来,就可以编写pod的配置文件了,创建volume-nfsyaml

4)最后,运行下pod,观察结果

前面已经学习了使用NFS提供存储,此时就要求用户会搭建NFS系统,并且会在yaml配置nfs。由于kubernetes支持的存储系统有很多,要求客户全都掌握,显然不现实。为了能够屏蔽底层存储实现的细节,方便用户使用, kubernetes引入PV和PVC两种资源对象。

PV(Persistent Volume)是持久化卷的意思,是对底层的共享存储的一种抽象。一般情况下PV由kubernetes管理员进行创建和配置,它与底层具体的共享存储技术有关,并通过插件完成与共享存储的对接。

PVC(Persistent Volume Claim)是持久卷声明的意思,是用户对于存储需求的一种声明。换句话说,PVC其实就是用户向kubernetes系统发出的一种资源需求申请。

使用了PV和PVC之后,工作可以得到进一步的细分:

PV是存储资源的抽象,下面是资源清单文件:

PV 的关键配置参数说明:

实验

使用NFS作为存储,来演示PV的使用,创建3个PV,对应NFS中的3个暴露的路径。

1准备NFS环境

2创建pvyaml

PVC是资源的申请,用来声明对存储空间、访问模式、存储类别需求信息。下面是资源清单文件:

PVC 的关键配置参数说明:

实验

1创建pvcyaml,申请pv

2创建podsyaml, 使用pv

PVC和PV是一一对应的,PV和PVC之间的相互作用遵循以下生命周期:

ConfigMap是一种比较特殊的存储卷,它的主要作用是用来存储配置信息的。

创建configmapyaml,内容如下:

接下来,使用此配置文件创建configmap

接下来创建一个pod-configmapyaml,将上面创建的configmap挂载进去

在kubernetes中,还存在一种和ConfigMap非常类似的对象,称为Secret对象。它主要用于存储敏感信息,例如密码、秘钥、证书等等。

1首先使用base64对数据进行编码

2接下来编写secretyaml,并创建Secret

3创建pod-secretyaml,将上面创建的secret挂载进去:

至此,已经实现了利用secret实现了信息的编码。

NFS的配置过程很简单。在服务器端中编辑 /etc/exports 文件,添加如下内容: /home/nfs-share 1921681122 (rw,sync)

第一项是要共享的目录,后者为共享的配置参数一般为: (rw,sync,no_root_squash,no_all_squash,no_subtree_check)

然后开启NFS和portmap服务:

/etc/initd/nfs start //用service nfs start也可以 /etc/initd/portmap start //用service portmap stasrt也可以

在centos65中portmap已经改为rpcbind 在客户端,用mount –t nfs 192168123:/home/nfs-share /home/remote_file挂载服务器端的共享目录到本地的/home/remote-file挂载点,然后我们就可以在客户端上应用到远程主机上的/home/nfs-share目录了。想要系统在开机时自动挂载,修改/etc/fstab文件,把NFS服务器的共享目录添加进去就可以了,这个不用多说。

如何知道远程主机上的共享目录情况呢?使用showmount命令,这个命令需要root权限。它有三个选项(记住这三个选项代表的含义: showmount –a IP 显示指定NFS服务器的客户端以及服务器端在客户端的挂载点 showmount –d IP 显示指定NFS服务器在客户端的挂载点 showmount –e IP 显示指定NFS服务器上的共享目录列表(或者叫输出列表) 我们输入命令showmount –a 1921681123:

客户端中出现的mount clntudp_create: RPC: Program not registered错误是怎么回事?噢,我刚才重启了一下服务器端,重启后NFS服务没有开启。 我们开启服务器端的NFS服务,再从客户端上查看一下NFS服务器的情况:

Showmount –a显示出NFS服务器1921681123的共享目录被客户端192168122挂载到/home中;

在showmount -e IP,出现clnt_create: RPC: Port mapper failure - Timed out报错

解决方案:

被访问的NFS服务器上的防火墙没有添加规则,向iptables里面添加以下查看的所有端口即可(目前解决的方法,当然你也可以关闭防火墙,不过这样是比较不安全的,如果你的nfs作用不大,建议你另选别的应用来替代吧!毕竟开那么多的端口,比较不安全呀!)

通过#rpcinfo -p 1010209148

[root@rh01 /]# rpcinfo -p 1010209148program vers proto port service100000 4 tcp 111 portmapper100000 3 tcp 111 portmapper100000 2 tcp 111 portmapper100000 4 udp 111 portmapper100000 3 udp 111 portmapper100000 2 udp 111 portmapper100024 1 udp 52943 status100024 1 tcp 37706 status100011 1 udp 875 rquotad100011 2 udp 875 rquotad100011 1 tcp 875 rquotad100011 2 tcp 875 rquotad100003 2 tcp 2049 nfs100003 3 tcp 2049 nfs100003 4 tcp 2049 nfs100227 2 tcp 2049 nfs_acl100227 3 tcp 2049 nfs_acl100003 2 udp 2049 nfs100003 3 udp 2049 nfs100003 4 udp 2049 nfs100227 2 udp 2049 nfs_acl100227 3 udp 2049 nfs_acl100021 1 udp 37438 nlockmgr100021 3 udp 37438 nlockmgr100021 4 udp 37438 nlockmgr100021 1 tcp 46331 nlockmgr100021 3 tcp 46331 nlockmgr100021 4 tcp 46331 nlockmgr100005 1 udp 57177 mountd100005 1 tcp 43147 mountd100005 2 udp 49154 mountd100005 2 tcp 54810 mountd100005 3 udp 55707 mountd100005 3 tcp 58309 mountd

[root@rh01 /]#

刚才在重启NFS服务的时候,细心的话可以注意到,我们在输入命令/etc/initd/nfs start开启nfs服务时,系统还自作主张地开启了NFS quotas等其它3个服务。

怎么回事?我们只输入了一条启动NFS服务的命令,它怎么额外的启动了3个服务?后面的启动portmap服务又是怎么回事? 我们首先要了解一点:NFS文件系统要提供服务单靠本身的NFS服务是不够的,还需要调用其它服务,这个其它服务就是RPC(remote procedure call,远程过程调用)服务和portmap服务。由于NFS服务本身不提供文件传输功能,我们要远程使用NFS文件系统就需要RPC服务的支持;而portmap服务用来为RPC服务进行动态端口分配和映射,所以portmap服务也是NFS服务所必须的。

我们查看一下服务的启动情况:

所遇错误:

/etc/initd/nfs-kernel-server: 没有那个文件或目录

解决方案:

没有配置、安装NFS

Linux 下配置NFS服务

1、安装

2、配置

3、客户端

所遇问题:centos65

portmap: 未被识别的服务

解决方案:

由于在6系列里面,portmap已经改名了 ,6系列需要使用 service rpcbind start启动[root@unix-big-bang ~]# service portmap start

portmap: 未被识别的服务

[root@unix-big-bang ~]# service rpcbind status

rpcbind (pid 1312) is running

[root@unix-big-bang ~]#

好文共赏:

linux nfs文件共享

◆一、概念

NFS是网络文件系统(Network File System)的简称,是分布式计算机系统的一个组成部分,可实现在异构网络上共享和装配远程文件系统。

NFS由SUN公司开发,目前已成为文件服务的一种标准(RFC1904,RFC1813)。其最大的功能就是可以通过网络,让不同 操作系统 的计算机可以共享数据,所以也可以看作是一个文件服务器。NFS是除了SAMBA之外Windows与Linux及Unix与Linux之间通信的方法。

理想条件下的NFS 网络拓扑结构

1、设置Linux系统之间的文件共享(Linux与Windows中间文件共享采用SAMBA服务);

2、NFS只是一种文件系统,本身没有传输功能,是基于RPC协议实现的,才能达到两个Linux系统之间的文件目录共享;

3、NFS为C/S 架构 ;

◆二、服务器配置

1、配置文件

主要配置文件为:/etc/exports

格式为: 共享目录 可mount主机IP(参数1,参数2,……)

如:/var/nfs 17220 (rw,sync,no_rootl_squash)

说明:必须注意nfs/目录的访问权限,必须设置成777权限;父目录/var权限无要求,普通的755即可;

2、启动相关服务

然后依次启动相关服务:portmap,nfslock,nfs

service portmap start

service nfslock start

service nfs start

关闭顺序相反。

3、检查共享目录

随后可以采用showmount –e查看一下,看看共享的目录情况:

[root@ns var]# showmount -e

Export list for nsosserver:

/var/nfs 17220

OK,到此为止,NFS服务器搭建完毕;

◆三、客户端配置

1、确保portmap运行

客户端必须确保RPC协议相应的portmap正常运行,否则mount将失败;

2、挂载/var/nfs目录(本地挂载点为/mnt/nfs)

mount -t nfs 172206516:/var/nfs /mnt/nfs

成功mount以后,即可同本地目录一样随意操作;

◆四、其它相关命令

1、当修改了/etc/exports文件后,可以不用重新启动nfs服务,直接采用exports –rv 即可重新导出共享目录;

该命令格式如下:

exportfs [-aruv]

-a :全部mount或者unmount /etc/exports中的内容

-r :重新mount /etc/exports中分享出来的目录

-u :umount 目录

-v :在 export 的时候,将详细的信息输出到屏幕上。

具体例子:

[root@ns var]# showmount -e

Export list for nsosserver:

/var/nfs 17220

[root@ns var]# exportfs –au #全部卸载

[root@ns var]# showmount -e

Export list for nsosserver:

[root@ns var]# exportfs –rv #全部重新 export 一次

exporting 17220 :/var/nfs

[root@ns var]#

2、showmout命令对于NFS的操作和查错有很大的帮助,所以我们先来看一下showmount的用法

showmout

-a :这个参数是一般在NFS SERVER上使用,是用来显示已经mount上本机nfs目录的cline机器。

-e :显示指定的NFS SERVER上export出来的目录。

例如:

[root@localhost ~]# showmount -e 1722016139

Export list for 1722016139 :/root/share 1722016137

[root@ns var]# showmount -a

All mount points on localhostlocaldomain: :/root/share,17220 :/root/share,1722016 :/root/share,1722016139:/nfsshare,1722016139:/root/share1722016137: 1722016137:,17220 1722016137:,1722016 1722016137:/root/share1722016139: 1722016139:,17220 1722016139:,1722016 1722016139:,17220161391722016139:DEFAULT

◆五、常见问题解答

1、提示:mount to NFS server '1722067203' failed: server is down

解决方案:可能是NFS服务器的防火墙有问题;

2、提示:mount: RPC: Timed out

解决方案:由于RPC协议没运行;启动portmap服务;

也有可能是防火墙问题;Server/Client均有可能。

DABAN RP主题是一个优秀的主题,极致后台体验,无插件,集成会员系统
网站模板库 » 安卓手机i怎么搭建nfs服务器

0条评论

发表评论

提供最优质的资源集合

立即查看 了解详情