本文介绍如何在Ubuntu操作系统、CentOS操作系统和Aliyun Linux操作系统中安装CPFS客户端并挂载CPFS文件系统。
               
                  
                     
背景信息
                  文件存储CPFS兼容POSIX接口,通过标准挂载即可使用。文件存储CPFS提供定制化的客户端软件,支持在Ubuntu操作系统、CentOS操作系统和Aliyun Linux操作系统中安装。
                  文件存储CPFS支持的操作系统版本:
                     
                        - CentOS:CentOS7.6和CentOS7.7
 
                        - Ubuntu:Ubuntu16.04和Ubuntu18.04
 
                        - Aliyun Linux:Aliyun Linux 2
 
                     
                   
               
               
                  准备工作
                  文件存储CPFS支持在Ubuntu操作系统、CentOS操作系统和Aliyun Linux操作系统中安装CPFS客户端,需完成如下准备工作。
                  
                     - 如果您要在CentOS操作系统或Aliyun Linux操作系统中安装CPFS客户端,请先完成以下准备工作。 
                        
                           - 安装以下依赖包:make、gcc、libyaml-devel、libtool、zlib-devel、glibc-headers、dkms、expect。 
yum install -y make gcc libyaml-devel libtool zlib-devel glibc-headers dkms expect
 
                           - 安装kernel-devel依赖包。 
yum install -y kernel-devel-`uname -r`
                                 
                                 说明 
                                    
                                       - 请确保安装的kernel-devel包版本和kernel版本一致。
 
                                       - 如果yum源没有和内核版本一致的kernel-devel包,请执行uname -r命令确定kernel版本,在CentOS官网下载对应的kernel-devel包并安装。
                                       
 
                                    
                                  
                               
                            
                        
                      
                     - 如果您要在Ubuntu操作系统中安装CPFS客户端,请先完成以下准备工作。 
                        
                           - 确认kernelheader已安装。 
dpkg -l | grep 'linux-headers'  |grep `uname -r`
如果回显信息中显示了linux-headers的版本号,则表示已安装kernelheader。
                            
                           - 更新dkms版本。 
apt-get update
apt-get install -y dkms
 
                           - 安装依赖包。 
apt-get install -y libyaml-dev libsnmp-dev
如果回显信息中提示The following packages have unmet dependencies,请执行apt --fix-broken install命令进行修复。
                              
                            
                           - 卸载lustre相关的包。 
                              
如果系统已经安装了lustre,执行以下命令卸载。
dpkg -l | grep lustre
dpkg -e <lustre pkg>
执行以下命令检查是否存在lustre目录。
                              
ls /lib/modules/`uname -r`/kernel/drivers/staging/lustre
如果存在该目录,请执行mkdir ~/cpfs-backup; mv /lib/modules/`uname -r`/kernel/drivers/staging/lustre ~/cpfs-backup命令进行删除。
                              
                            
                        
                      
                  
               
               
                  CentOS操作系统和Aliyun Linux操作系统
                  
                     - 下载CPFS客户端。 
                     
 
                     - 安装CPFS客户端。
                           
                              - 如果您使用CentOS操作系统,请执行以下命令。
tar -zxvf cpfs-client-latest.el7.tar.gz
rpm -ivh cpfs-client-dkms-*.el7.noarch.rpm
rpm -ivh cpfs-client-2.10.8-*.el7.x86_64.rpm
 
                              - 如果您使用Aliyun Linux操作系统,请执行以下命令。
tar -zxvf cpfs-client-latest.al7.tar.gz
rpm -ivh cpfs-client-dkms-*.al7.noarch.rpm
rpm -ivh cpfs-client-2.10.8-*.al7.x86_64.rpm
 
                           
                           安装完成后,可执行
dkms status命令查看状态。若回显信息中提示
WARNING,请执行以下命令尝试修复。
mkdir ~/cpfs-backup
mv /lib/modules/`uname -r`/kernel/drivers/staging/lustre ~/cpfs-backup
dkms uninstall cpfs-client/1.0.0
dkms remove cpfs-client/1.0.0 --all
lustre_rmmod
rmmod libcfs
rmmod lnet
dkms build cpfs-client/1.0.0
dkms install cpfs-client/1.0.0
执行完成后,若回显信息中仍然提示
WARNING,请联系阿里云工程师协助处理。
 
                         
                      
                     - 执行
vim /etc/cpfs/cpfs-mounts.conf命令编辑配置文件cpfs-mounts.conf,增加文件系统和挂载目录信息,如下所示。 cpfs-xxx.cn-shanghai.cpfs.nas.aliyuncs.com@tcp:cpfs-xxx.cn-shanghai.cpfs.nas.aliyuncs.com@tcp:/xxx /mnt localflock
                              
                              说明 
                                 
                                    - 挂载文件系统时,可选择多种挂载选项,挂载选项使用英文逗号(,)分隔,说明如下:
                                       
                                          - localflock:如果应用软件需使用flock接口进行文件锁操作,挂载选项需加入localflock。
                                          
 
                                          - noatime:如果应用软件对atime不敏感,挂载选项可加入noatime,可提高文件系统读写性能。
                                          
 
                                       
                                     
                                    - 该配置文件的每一行是文件系统的一个挂载点信息,由文件系统挂载点和本地挂载目录两部分组成,请根据实际值替换。其中,您可以从NAS控制台获取文件系统挂载点并自定义本地挂载目录,一般为/mnt下的子目录。
                                    
 
                                 
                               
                            
                         
                      
                     - 执行
service cpfs-client start命令启动CPFS服务,即挂载文件系统。
                           
                              
                              说明 
                                 
                                    - 查询CPFS服务状态的命令:
service cpfs-client status 
                                    - 停止CPFS服务状态的命令:
service cpfs-client stop 
                                    - 如果不再使用CPFS,请在云服务器ECS上运行
service cpfs-client stop命令停止CPFS服务,然后执行rpm -e cpfs-client命令和rpm -e cpfs-client-dkms命令卸载CPFS客户端。
                                     
                                 
                               
                            
                         
                      
                  
               
               
                  Ubuntu操作系统
                  
                     - 下载安装包。
                           
                              - 如果是Ubuntu 16.04,请执行以下命令。 
wget https://cpfs-client.oss-cn-beijing.aliyuncs.com/ubuntu/cpfs-client-ubuntu1604_amd64_latest.tar.gz
 
                              - 如果是Ubuntu 18.04,请执行以下命令。 
wget https://cpfs-client.oss-cn-beijing.aliyuncs.com/ubuntu/cpfs-client-ubuntu1804_amd64_latest.tar.gz
 
                           
                         
                      
                     - 解压安装包。
                     
 
                     - 安装cpfs-client-dkms包。
dpkg -i cpfs-client-dkms_*_amd64.deb
安装完成后,可执行
dkms status命令查看状态。若回显信息中提示
WARNING,请执行以下命令尝试修复。
mkdir ~/cpfs-backup
mv /lib/modules/`uname -r`/kernel/drivers/staging/lustre ~/cpfs-backup
dkms uninstall cpfs-client/1.0.0-204
dkms remove cpfs-client/1.0.0-204 --all
lustre_rmmod
rmmod libcfs
rmmod lnet
dkms build cpfs-client/1.0.0-204
dkms install cpfs-client/1.0.0-204
执行完成后,若回显信息中仍然提示
WARNING,请联系阿里云工程师协助处理。
 
                      
                     - 安装cpfs-client包。
dpkg -i cpfs-client_*_amd64.deb
 
                      
                     - 执行
vim /etc/cpfs/cpfs-mounts.conf命令编辑配置文件cpfs-mounts.conf,增加文件系统和挂载目录信息,如下所示。 cpfs-xxx.cn-shanghai.cpfs.nas.aliyuncs.com@tcp:cpfs-xxx.cn-shanghai.cpfs.nas.aliyuncs.com@tcp:/xxx /mnt localflock
                              
                              说明 
                                 
                                    - 挂载文件系统时,可选择多种挂载选项,挂载选项使用英文逗号(,)分隔,说明如下:
                                       
                                          - localflock:如果应用软件需使用flock接口进行文件锁操作,挂载选项需加入localflock。
                                          
 
                                          - noatime:如果应用软件对atime不敏感,挂载选项可加入noatime,可提高文件系统读写性能。
                                          
 
                                       
                                     
                                    - 该配置文件的每一行是文件系统的一个挂载点信息,由文件系统挂载点和本地挂载目录两部分组成,请根据实际值替换。其中,您可以从NAS控制台获取文件系统挂载点并自定义本地挂载目录,一般为/mnt下的子目录。
                                    
 
                                 
                               
                            
                         
                      
                     - 执行
service cpfs-client start命令启动CPFS服务,即挂载文件系统。
                           
                              
                              说明 
                                 
                                    - 查询CPFS服务状态的命令:
service cpfs-client status 
                                    - 停止CPFS服务状态的命令:
service cpfs-client stop 
                                    - 如果不再使用CPFS,请在云服务器ECS上运行
service cpfs-client stop命令停止CPFS服务,然后执行rpm -e cpfs-client命令和rpm -e cpfs-client-dkms命令卸载CPFS客户端。