作者:京东科技 林中
服务器更换、网站搬家,对于很多开发者新手来说不是一件容易的事情,需要迁移网站程序、数据库,修改数据库连接文件等。在云迁移方案中,宝塔是非常简单好用的服务器运维面板,能够极大提升运维管理效率。本文将介绍如何使用 “宝塔一键迁移” 工具将单机版 typecho 博客系统快速迁移到京东云 cvm 云主机。
一、单机版 typecho 博客系统迁移方案分析
Typecho 博客系统是一个开源的 php 应用,部署架构相对简单,具体包括:
1、运行在标准的 LNMP 环境下。
2、typecho 应用作为一个网站,部署在 webroot 目录下。
3、后端使用 mysql 等开源数据库作为用户数据库的存储。
其中,应用部分:1、LNMP 运行环境 2、typecho 应用 3、mysql 数据库软件,这些属于标准的软件,可以采用在目标主机重新部署的方式,只需要保证对应组件的版本一致即可。数据部分:mysql 中存储的数据,会记录客户的主题分类、博客内容等,需要采用数据库导出 / 倒入的方式,进行离线迁移(为了保证数据一致性,需要一定时间的业务中断)。
了解到客户目前在腾讯云的主机,内嵌了宝塔 linux 面板工具,使用面板工具提供的 “宝塔一键迁移” 功能,可以通过图形化的方式,方便、快捷的完成以上所有操作步骤。
二、迁移流程
整体流程分为三个阶段:
阶段一:迁移准备工作(在源服务器上操作):
1、确认源服务器上的操作系统和各组件版本
在源服务器 “宝塔 linux 控制台”-》“软件商店” 中,点击 “应用分类” 的 “已安装” 标签,记录以下组件的具体版本(或截图保存):
Nginx:XXX
Mysql:XXX
PHP:XXXX
Pure-Ftpd:XXXX
参考截图如下:
2、在源服务器的宝塔 linux 面板中,安装 “宝塔一键迁移” 工具
在 “宝塔 linux 控制台”-》“软件商店” 中,保持 “应用分类” 已选择了 “全部”,然后在 “应用搜索” 输入框中输入 “宝塔一键”,并点击搜索,找到 “宝塔一键迁移 API 版本” 的官方软件。如下图所示:
接着,点击 “操作” 部分的安装,选择最新的 stable 版本完成安装。
阶段二:迁移目标服务器环境准备(在京东云控制台及京东云 CVM 云主机上操作)
3、在 “京东云控制台” 中,创建 CVM 云主机,详细的操作步骤请参考京东云官网手册:
https://docs.jdcloud.com/cn/virtual-machines/create-linux-instance
注:源服务器的操作系统版本为 Centos7.8 64bit,京东云没有该版本镜像,创建 CVM 主机时选择 Centos 7.9 64bit 版本。
4、以 ssh 方式,登录京东云 cvm 云主机,安装最新版本 “宝塔 linux 控制面板”
Centos 安装命令:
yum install -y wget && wget -O install.sh http://download.bt.cn/install/install_6.0.sh && sh install.sh
安装脚本执行结束后,请妥善记录宝塔 linux 面板的登录信息。参考样例如下:
5、登录目标服务器 “宝塔 linux 控制台”,首先绑定个人手机号(可以立即注册),初次登录,会提示一键安装 LNMP 环境,按照 “阶段一” 中 “第 1 步” 记录的各组件版本设置,保持和源服务器一致。请耐心等待和组件安装完成,预计需要 15 分钟。
6、在目标服务器 “宝塔 linux 面板”-》“面板设置” 中,开启 “API 接口” 开关,用于第三阶段设置 “宝塔一键迁移” 工具的参数信息。参考截图如下:(第一次开启时,接口密钥显示为密文,无法拷贝,点击 “重置” 按钮直到显示明文信息,需要拷贝密钥并保留;ip 白名单,设置为源服务器的公网 ip 地址。)
阶段三:执行 “宝塔一键迁移” 工具,完成迁移。(在源服务器上操作)
7、在源服务器 “宝塔 linux 控制台” “软件商店” 中,选择 “应用分类” 已选择了 “已安装”,找到 “宝塔一键迁移 API 版本” 的官方软件(在阶段一,第 2 步中已安装该软件),点击 “设置”,配置迁移工具执行相关参数,包括:
接收数据的看板地址:XXX(阶段二,第 4 步中,安装宝塔 linux 控制面板成功后,记录的外网面板地址,只需要截取到最后一个斜线之前的部分)
接收数据的面板 API:XXX(阶段二,第 6 步中,保留的密钥)
参考截图如下:
8、点击下一步开始执行,依次完成 “监测环境”-》“选择数据” 等环节,最后点击 “一键迁移”。过程参考截图如下:
至此,博客系统一键迁移的整体流程就结束了,可以在新服务器中看到站点信息、应用以及数据库等内容,另外需注意一键迁移后在域名商那里完成域名的地址解析,把旧服务器 IP 更改为新服务器 IP。