阿里云使用supervisor启动ossfs挂载oss
阿里云oss是阿里云提供的海量、安全、低成本、高可靠的云存储服务,官网一直有40G 9.9元一年的套餐,非常实惠性价比很高,但是需要注意的是它的流量是收费的还挺贵,但是内网是免费的。所以易云一般配合阿里云服务器用来免费备份以及储存图片。虽然现在有各种各样的阿里云oss插件,不过易云还是习惯使用阿里云的ossfs挂载oss到服务器上,但是最近发现ossfs经常无故挂掉,而且开机也不会自动启动,查看官网发现一些教程却发现漏洞百出。因此,在此留下易云的完美解决方案:supervisor启动ossfs挂载,支持开机启动以及挂掉重启。
已经支持宝塔安装supervisor,具体看 宝塔安装supervisor启动ossfs挂载oss
这儿根据官方教程安装centos7的ossfs
下载ossfs安装包
wget http://gosspublic.alicdn.com/ossfs/ossfs_1.80.6_centos7.0_x86_64.rpm
运行安装ossfs
sudo yum localinstall ossfs_1.80.6_centos7.0_x86_64.rpm
配置ossfs文件
echo my-bucket:my-access-key-id:my-access-key-secret > /etc/passwd-ossfs chmod 640 /etc/passwd-ossfs
因为是使用supervisor启动ossfs,所以这里不挂载ossfs先。
其他系统安装方法可以参考官方教程:飞机直达
二、安装supervisor
本教程以centos7为例安装,其他系统可自行百度。
运行脚本安装基础环境
yum install python-setuptools easy_install pip
安装supervisor
pip install supervisor
创建配置文件夹
mkdir /etc/supervisor/
生成配置文件到supervisor文件夹中
echo_supervisord_conf>/etc/supervisor/supervisord.conf
到此,supervisor已经安装完成!
三、使用supervisor启动ossfs
创建ossfs的启动脚本(新手可使用宝塔文件管理创建保存,这儿使用vi)
mkdir /root/ossfs_scripts vi /root/ossfs_scripts/start_ossfs.sh
写入下面信息并保存
# 卸载 fusermount -u 挂载地址 # 重新挂载,必须要增加-f参数运行 exec ossfs bucket_name mount_point -ourl=endpoint -f
修改supervisor配置文件(可使用宝塔文件夹修改)
vi /etc/supervisor/supervisord.conf
在文件最尾部加入下面项目代码并保存
[program:ossfs] command=bash /root/ossfs_scripts/start_ossfs.sh logfile=/var/log/ossfs.log log_stdout=true log_stderr=true logfile_maxbytes=1MB logfile_backups=10
启动supervisor并运行ossfs
supervisord -c /etc/supervisor/supervisord.conf
查看ossfs运行情况
supervisorctl
四、设置supervisor开机自动运行ossfs挂载
下载开机配置文件
wget -O /usr/lib/systemd/system/supervisord.service https://raw.githubusercontent.com/Supervisor/initscripts/master/centos-systemd-etcs
重新加载Systemd配置
systemctl daemon-reload
设置开机自启动
systemctl enable supervisord.service
五、检验是否成功自启和挂掉自启
ps aux | grep supervisor # 应该能看到Supervisor进程 ps aux | grep ossfs# 应该能看到ossfs进程 kill -9 PID# 杀掉ossfs进程,Supervisor应该会重启它。PID改成进程PID ps aux | grep ossfs # 应该能看到ossfs进程
到此安装教程完成!