Sophon升级详解
1 .Sophon1.2.0-final升级1.3.0final 步骤
1 . 下载Sophon Web配置文件以及镜像:(包含1.2.0和1.2.1版本)
wget ftp://172.16.3.129/pub/sophon-1.3/img/sophon-web-1.3.img
wget ftp://172.16.3.129/pub/sophon-1.3/img/sophon-redis.img
wget ftp://172.16.3.129/pub/sophon-1.3/SOPHONWEB-Basic-Component-Transwarp-1.3.0-final.tar.gz
2 . 删除原有Sophon配置文件
rm -rf /var/lib/transwarp-manager/master/content/meta/services/SOPHON
并且重新创建SOPHON目录:
mkdir -p /var/lib/transwarp-manager/master/content/meta/services/SOPHON
3 . 进行解压sophon-1.2.X-final中的压缩包.
例:tar zxvf sophon-1.2.0-final.tar.gz -C /var/lib/transwarp-manager/master/content/meta/services/SOPHON/
4 .加载sophon-web的需要镜像:
docker load -i $( IMAGE) 此处 $( IMAGE) 应为:172.16.3.129/pub/sophon-1.3/img/sophon-web-1.3.img
docker tag ${IMAGE} ${TARGET} ( tag的话主要是根据自己的系统来进行命名;可以docker images 查看 ,然后查看REPOSITORY列,如下如所示应该是 tw-node3227:5000/transwarp/sophon-web:sophonweb-master)
docker push ${TARGET}
示例:
docker load -i 172.16.1.99/postcommit/sophon-web:sophon-2018-08-08-15-45-0daf35b2
docker tag 172.16.1.99/postcommit/sophon-web:sophon-2018-08-08-15-45-0daf35b2 tw-node3227:5000/transwarp/sophon-web:sophonweb-master
将172.16.1.99/postcommit......的镜像标记为tw-node3327......
docker push tw-node3227:5000/transwarp/sophon-web:sophonweb-master
将本地的镜像上传到镜像仓库
5 . 更新HDFS示例数据集:
由于manager功能限制,需要手工导入。
- 进入hdfs namenode的pod中
kubectl get po|grep hdfs-namenode
kubectl exec -it ${POD NAME} bash - 获取示例数据导入插件
wget ftp://172.16.3.129/pub/sophon-1.3/plugins/sophon-hdfs-0.12.0+500.1.tar.gz - 解压插件到hdfs namenode的pod的/tmp 目录中
tar xzvf sophon-hdfs-0.12.0+500.1.tar.gz -C /tmp - 执行import_sample_hdfs.sh
cd /tmp/sophon/hdfs/scripts/
bash import_sample_hdfs.sh
(如果提示没有权限,请在import_sample_hdfs.sh中添加export HADOOP_USER_NAME=hdfs) - 检查是否导入成功
hdfs dfs -ls /sophon/samples
6 . 数据库操作,参见sophon 1.2升级1.3 需要进行的数据库操作.
需要进入TXsql中进行操作:
mysqldump -h <server_ip> -P <server_port> -u <username> -p<password> --set-gtid-purged=off --triggers --routines --events --databases <db_name> > backup.sql
示例: /usr/bin/txsql/percona.src/bin/mysqldump -h 172.16.132.188 -P 3316 -u sophonuser -ppassword --set-gtid-purged=off --triggers --routines --events --databases metastore_sophon1 > /etc/txsql1/conf/bacupsophon.sql
然后 drop 这个数据库 metastore_sophon1
重启 sophon-web 的服务,重启manager;
进入sophonweb 的8180 界面,进入sophon ,点击更多操作-->配置服务-->确定.
将备份的数据库导回数据库.
mysql -h <server_ip> -P <server_port> -u <username> -p <db_name> < backup.sql
注意:
将备份的数据库导回数据库时候,会遇到nlp失败情况,重新导回一次,可解决.