开发者社区> 问答> 正文

discuz升级SLB方法

discuz  升级SLB方法


一、建立ESC  (和原有主机同一个地区)
   建立 OSS bucket
   挂载  ossfs


二、将论坛data/attachment 整体移动到OSS


A、使用rsync同步图片(需要另外一台ECS做接受机)


可用于备份图片:


rsync -rav -e 'ssh -p 22' --delete root@10.xxx.xxx.xxx:/home/wwwroot/data/attachment/ /home/wwwroot/default/dataoss/attachment/




OSSfs
https://bbs.aliyun.com/read/267189.html?spm=5176.bbsl211.0.0.9DD00V&fpage=3


对于CentOS6.5及以上,安装命令为:


sudo yum localinstall your_ossfs_package




示例
echo xxx:ID:key > /etc/passwd-ossfs


chmod 640 /etc/passwd-ossfs


mkdir /home/wwwroot/dataoss


ossfs xxx /home/wwwroot/dataoss -ourl=http://oss-cn-hangzhou-internal.aliyuncs.com -o allow_other


chmod -R 777 /home/wwwroot/dataoss/attachment


本地附件保存位置:    
./dataoss/attachment    服务器路径,属性 777,必须为 web 可访问到的目录,结尾不加 "/",相对目录务必以 "./" 开头


本地附件 URL 地址:    
dataoss/attachment       可为当前 URL 下的相对地址或 http:// 开头的绝对地址,结尾不加 "/",不能把这个设为远程附件URL地址




------------------------------------------------------------------------------
Q: 如何开机自动挂载ossfs?


Step 1 首先请参考使用说明,把bucket name,access key id/secret等信息写入/etc/passwd-ossfs,并将该文件权限修改为640。
echo your_bucket_name:your_access_key_id:your_access_key_secret > /etc/passwd-ossfs
chmod 640 /etc/passwd-ossfs


Step 2 接下来针对不同的系统版本,设置方式有所不同
Step 2A 通过fstab的方式自动mount(适用于ubuntu14.04, centos6.5)
在vi /etc/fstab中加入下面的命令
ossfs#your_bucket_name your_mount_point fuse _netdev,url=your_url,allow_other 0 0




其中上述命令中的your_xxx信息需要根据您的bucket name等信息填入。


保存/etc/fstab文件。执行mount -a命令,如果没有报错,则说明设置正常。
到这一步,ubuntu14.04就能自动挂载了。centos6.5还需要执行下面的命令:
chkconfig netfs on


Step 2B 通过开机自启动脚本mount(适用于centos7.0及以上的系统)
在/etc/init.d/目录下建立文件ossfs,把模板文件中的内容拷贝到这个新文件中。并将其中的your_xxx内容改成您自己的信息。
执行命令:chmod a+x /etc/init.d/ossfs
上述命令是把新建立的ossfs脚本赋予可执行权限。您可以执行该脚本,如果脚本文件内容无误,那么此时oss中的bucket已经挂载到您指定的目录下了。
执行命令:chkconfig ossfs on


上述命令是把ossfs启动脚本作为其他服务,开机自动启动。
好了,现在ossfs就可以开机自动挂载了。总结起来,如果您是ubuntu14.04和centos6.5,您需要执行Step 1 + Step 2A;如果您是centos7.0系统,您需要执行Step 1 + Step 2B。




B、由于上面的方法太慢、一晚才移动了1G,改用ECS挂载ossfs,用CP复制文件  速度5Mb/s
Cp功能说明 :复制文件或目录
语法:cp[参数]源文件目录   目标文件或目录
\cp -r /home/wwwroot/data/attachment /home/wwwroot/dataoss


\cp -r /home/wwwroot/data/attachment/forum/201602 /home/wwwroot/dataoss/attachment/forum
---------------------------------------------


http://w-tingsheng.blog.163.com/blog/static/2505603420124309130528/
cp直接覆盖不提示按Y/N的方法  


方法二:直接输入命令即可实现
\cp -rf zongguofeng linuxzgf




三、安装lnmp(处理screen、xcache、nginx、php、伪静态)


四、discuz论坛文件复制(rsync安装、自启、同步、4小时一次同步




https://wiki.vpsmm.com/rsync/
RSYNC


实用RSYNC配置脚本 VPS增量备份


一个最简单的配置脚本,应用之处很多,例如VPS增量备份,或者,SLB之间做文件同步等。


配置文件压缩包下载:rsync服务器端配置 - rsync客户端配置


一、首先是配置服务器端,例如IP:111.111.111.111


下载 rsync-server.zip 文件,解压后,上传到/etc目录,需要设置4个地方:


1.设置 /etc/rsyncd/rsyncd.conf 中的服务器端IP(第7行)为您VPS的IP


address = 111.111.111.111


2.设置 /etc/rsyncd/rsyncd.conf 中允许同步的客户端IP(第20行),多IP用空格隔开:


hosts allow=222.222.222.222


3.设置 /etc/rsyncd/rsyncd.conf 中的需要同步的目录(第35行)


path = /home/wwwroot


4.设置 /etc/rsyncd/rsyncd.secrets 中用户名及密码,并用命令给予600权限


chmod 600 /etc/rsyncd/rsyncd.secrets


netstat -tlnp 查看端口是否打开


二、设置服务器端IP、允许客户端IP以及用户名密码,设置后服务器端运行rsync,启动服务器端 命令:


/usr/bin/rsync --daemon --config=/etc/rsyncd/rsyncd.conf


修改防火墙策略,允许873端口(tcp/udp)
vi /etc/sysconfig/iptables #加入下面的规则
-A INPUT -s 100.xxx.xxx.2 -p tcp -m state --state NEW -m tcp --dport 873 -j ACCEPT #授权B服务器访问A服务器873端口


killall rsync


添加rsyncd开机自启动


echo '/usr/bin/rsync --daemon --config=/etc/rsyncd/rsyncd.conf' >> /etc/rc.local


三、配置备份客户端,例如IP:222.222.222.222


下载 rsync-root.zip 文件,解压后,上传至/root目录中:


1.设置rsync密码/root/pass文件(无须用户名),与服务器端一至,并给予600权限,命令:


chmod 600 /root/pass


chmod 600 /root/exclude.list  用exclude.list排除多个文件夹


2.设置rsync路径/root/rs.sh,与服务器端一至,并给予可执行权限,命令:


rsync -avzP --delete --exclude=upload --password-file=/root/pass vpsmmuser@111.111.111.111::vpsmmhome /home/wwwroot
#其中vpsmmuser为服务器端/etc/rsyncd/rsyncd.secrets中用户名
#其中111.111.111.111为服务器端IP
#其中vpsmmhome为/etc/rsyncd/rsyncd.conf中34行自定义命名
#其中/home/wwwroot为需要同步的网站目录


chmod +x /root/rs.sh






四、可以用 crontab 功能,每1小时,或每天同步一次数据:


crontab -e


25 */3 * * * /root/rs.sh
//每3个小时的第25分钟自动运行一次


25 04 */1 * * /root/rs.sh
//每天的25分04时自动运行一次


五、常见错误解答


1.服务器端/etc/rsyncd/rsyncd.secrets和备份端/root/pass,均需要600权限
2.可以手动执行/root/rs.sh,看是否能够同步成功
3.切记,此同步是数据完全同步,会删除掉备份端有,而服务器端没有的文件
4.此为增量备份,只同步修改过或没有的文件,原有文件不会下载,很节省时间和流量


http://lxsym.blog.51cto.com/1364623/831393/


使用rsync -aP --exclude=upload 只能排除upload文件/目录。




五、修改discuz 文件夹权限、


六、更改CDN公网IP指向


七、安装云锁、安全狗等安全软件

展开
收起
zellop 2016-05-25 17:50:27 8263 0
1 条回答
写回答
取消 提交回答
  • 爱好建站
    好帖子
    2016-05-25 20:30:48
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
《应用型负载均衡ALB产品解读》 立即下载
阿里云网络-SLB负载均衡产品介绍 立即下载
负载均衡SLB热点问题解答 立即下载