Create FAQ
This commit is contained in:
parent
6fd9cd2dec
commit
34f2a5bde6
122
FAQ
Normal file
122
FAQ
Normal file
@ -0,0 +1,122 @@
|
||||
如何搬迁主控
|
||||
注意:下面的迁移步骤不包括迁移elasticsearch的数据
|
||||
1 备份旧主控数据
|
||||
在旧主控执行如下命令开始备份(注意:备份前会停止旧主控的进程)
|
||||
|
||||
cd /root
|
||||
curl http://us.centos.bz/cdnfly/backup_master.sh -o backup_master.sh
|
||||
chmod +x backup_master.sh
|
||||
./backup_master.sh
|
||||
这时候将在目录/root下,打包生成cdn.sql.gz文件,请把这个文件传输到新主控的/root/目录下,可以使用scp命令,命令如下:
|
||||
|
||||
cd /root
|
||||
scp cdn.sql.gz root@新主控IP:/root/
|
||||
2 在新机器安装好主控程序
|
||||
首先登录cdnfly.cn,更新授权为新主控ip,并清空机器码
|
||||
登录旧主控机器,执行如下命令查看版本:
|
||||
|
||||
grep VERSION_NAME /opt/cdnfly/master/conf/config.py
|
||||
如下图,版本为v4.1.6:
|
||||
|
||||
登录新机器,执行如下命令安装:
|
||||
|
||||
curl http://dl.cdnfly.cn/cdnfly/master.sh -o master.sh
|
||||
chmod +x master.sh
|
||||
./master.sh --ver v4.1.60
|
||||
其中v4.1.60替换成自己的主控版本号
|
||||
3 登录新主控,恢复备份
|
||||
执行如下命令恢复
|
||||
|
||||
cd /root
|
||||
curl http://us.centos.bz/cdnfly/restore_master.sh -o restore_master.sh
|
||||
chmod +x restore_master.sh
|
||||
./restore_master.sh
|
||||
从旧主控下载/opt/cdnfly/master/conf/config.py上传到新主控覆盖
|
||||
然后在新主控初始化es,重启新主控
|
||||
执行如下命令初始化:
|
||||
|
||||
cd /tmp
|
||||
wget us.centos.bz/cdnfly/int_es.sh -O int_es.sh
|
||||
chmod +x int_es.sh
|
||||
./int_es.sh /home/es
|
||||
supervisorctl restart all
|
||||
其中/var/lib/elasticsearch为es的数据目录,可以更改成其它的,比如/home/es
|
||||
|
||||
4 替换节点里的主控IP
|
||||
一个个登录节点,执行如下命令替换
|
||||
|
||||
new_master_ip="这里替换为新主控IP"
|
||||
sed -i "s/ES_IP =.*/ES_IP = \"$new_master_ip\"/" /opt/cdnfly/agent/conf/config.py
|
||||
sed -i "s/MASTER_IP.*/MASTER_IP = \"$new_master_ip\"/g" /opt/cdnfly/agent/conf/config.py
|
||||
sed -i "s/hosts:.*/hosts: [\"$new_master_ip:9200\"]/" /opt/cdnfly/agent/conf/filebeat.yml
|
||||
logs_path=`awk '/error_log/{print $2}' /usr/local/openresty/nginx/conf/nginx.conf | sed 's/error.log//'`
|
||||
if [[ `echo $logs_path | grep ^/ ` != "" ]];then
|
||||
sed -i "s#.*access.log# - $logs_path/access.log#" /opt/cdnfly/agent/conf/filebeat.yml
|
||||
sed -i "s#.*stream.log# - $logs_path/stream.log#" /opt/cdnfly/agent/conf/filebeat.yml
|
||||
fi
|
||||
sed -i "s#http://.*:88#http://$new_master_ip:88#" /usr/local/openresty/nginx/conf/listen_80.conf /usr/local/openresty/nginx/conf/listen_other.conf
|
||||
ps aux | grep [/]usr/local/openresty/nginx/sbin/nginx | awk '{print $2}' | xargs kill -HUP || true
|
||||
supervisorctl restart filebeat
|
||||
supervisorctl restart agent
|
||||
supervisorctl restart task
|
||||
5 迁移完成
|
||||
登录新主控后台,在首页点击检查agent,如果没有错误,表示主控迁移完成。
|
||||
|
||||
如何获取授权
|
||||
如何授权到期,或者在授权前安装程序,可以登录主控,执行如下命令获取授权:
|
||||
|
||||
# 获取授权
|
||||
source /opt/venv/bin/activate
|
||||
cd /opt/cdnfly/master/view
|
||||
ret=`python -c "import util;print util.get_auth_code()" || true`
|
||||
[[ $ret == "(True, None)" ]] && echo "已获取到授权" || echo "未授权,原因:"$ret
|
||||
deactivate
|
||||
如何取消管理端域名绑定
|
||||
在主控上执行如下命令
|
||||
|
||||
mysql -uroot -p@cdnflypass cdn -e "update config set value='' where name='admin_domain';"
|
||||
mysql -uroot -p@cdnflypass cdn -e "update config set value='' where name='user_domain';"
|
||||
|
||||
如何重置主控密码
|
||||
执行如下命令,重置密码为cdnfly,用户名不变
|
||||
|
||||
mysql -uroot -p@cdnflypass cdn -e 'update user set password="$2b$12$UV5ttpNQizMfO.tiBk9ereZ53hDBW0.kak3qa/GRP6aVBfNMB1NsK" where id=1'
|
||||
如何初始化elasticsearch
|
||||
当elasticsearch出现无法解决的异常,或者elasticsearch数据占满了硬盘,可以执行此操作来初始化elasticsearch,注意:初始化elasticsearch会清空其所有的数据。
|
||||
执行如下命令初始化:
|
||||
|
||||
cd /tmp
|
||||
wget http://us.centos.bz/cdnfly/int_es.sh -O int_es.sh
|
||||
chmod +x int_es.sh
|
||||
./int_es.sh /home/es
|
||||
其中/home/es为es的数据目录,也可以更改成其它的。
|
||||
|
||||
如何更换主控IP
|
||||
首先登录官网修改授权的主控 IP,然后登录每个节点,执行下面的命令:
|
||||
|
||||
new_master_ip="这里替换为主控IP"
|
||||
es_pwd="这里替换为es密码"
|
||||
sed -i "s/ES_IP =.*/ES_IP = \"$new_master_ip\"/" /opt/cdnfly/agent/conf/config.py
|
||||
sed -i "s/MASTER_IP.*/MASTER_IP = \"$new_master_ip\"/g" /opt/cdnfly/agent/conf/config.py
|
||||
sed -i "s/hosts:.*/hosts: [\"$new_master_ip:9200\"]/" /opt/cdnfly/agent/conf/filebeat.yml
|
||||
sed -i "s#http://.*:88#http://$new_master_ip:88#" /usr/local/openresty/nginx/conf/listen_80.conf /usr/local/openresty/nginx/conf/listen_other.conf
|
||||
sed -i "s/ES_PWD =.*/ES_PWD = \"$es_pwd\"/" /opt/cdnfly/agent/conf/config.py
|
||||
sed -i "s/password:.*/password: \"$es_pwd\"/" /opt/cdnfly/agent/conf/filebeat.yml
|
||||
sed -i "s/agent-pwd:.*/agent-pwd: \"$es_pwd\"/" /opt/cdnfly/agent/conf/filebeat.yml
|
||||
ps aux | grep [/]usr/local/openresty/nginx/sbin/nginx | awk '{print $2}' | xargs kill -HUP || true
|
||||
supervisorctl restart filebeat
|
||||
supervisorctl restart agent
|
||||
supervisorctl restart task
|
||||
注:es密码在主控的/opt/cdnfly/master/conf/config.py里的LOG_PWD
|
||||
|
||||
安装代理软件
|
||||
当主控无法直接与节点连接时,可以通过代理来连接,这里介绍安装代理软件的方法,目前只支持centos系统,安装命令如下
|
||||
|
||||
cd /tmp
|
||||
wget http://us.centos.bz/cdnfly/install_proxy.sh
|
||||
chmod +x install_proxy.sh
|
||||
./install_proxy.sh
|
||||
安装完成后,会显示代理的端口,用户名和密码。
|
||||
|
||||
手动备份数据库
|
||||
eval `grep "MYSQL_PASS" /opt/cdnfly/master/conf/config.py` && mysqldump -uroot -p$MYSQL_PASS cdn | gzip > /root/
|
Loading…
Reference in New Issue
Block a user