业务迁移方案讨论

2021-01-04 23:33:51 +08:00
 dream4ever

业务现状

  1. 系统环境:阿里云 4 核 16G 服务器一台,安装的 Windows Server 2012,所有网站通过 IIS 管理。
  2. 网站概况:我和另一个同事分别独自负责几个网站,我的网站全部前后端分离,后端用 Node.js 提供统一的 API 调用,数据库为 MongoDB ;同事的几个网站都用 PHP + MySQL 写的。

迁移流程

  1. 公司还有一台低配的 2 核 8G CentOS 7 服务器,先将各项业务依次迁移到该服务器上。原来的 IIS 用 Nginx 代替,数据库则安装 CentOS 下对应版本。且打算将业务运行环境容器化,包括 Nginx 、Node.js 、PHP 、MongoDB 、MySQL,都部署到各自的容器中。因为各项业务目前用户规模小,综合考虑之后认为容器化的方案利大于弊,所以采用此方案。
  2. 完整检查每项业务各部分功能,确认所有业务都正常运行。
  3. 最后将 4 核 16G 服务器也从 Windows Server 2012 切换至 CentOS 7,并将业务全部迁移回这台更高配置的服务器。

主要问题

  1. CentOS 系统层面的安全加固,包括用户、SSH 等部分,看了官方 Wiki 上的一些文章,又在 Google 上看了一些文章,把认为有必要的内容先在低配服务器上实践了一遍了,还做了笔记:云服务器配置笔记 v6.0。至于打系统补丁之类的,CentOS 7 上的最佳实践是怎样的?
  2. 各个业务对应的前后端程序、数据库放到什么目录下比较合适?各个目录设置怎样的权限比较合适?还是说 Google 找找看着靠谱的建议照着做就行?
  3. 业务所需软件环境的容器化,上周在图书馆借了一本《 Docker 技术入门与实战》,当时大致翻了前 1/4,感觉非常实用,完全可以用在这次的业务迁移中,不知道还有没有同样优质的 Docker 图书推荐?另外容器中的软件配置有什么注意事项?比如数据库部署在容器中之后常常会踩的坑。

现在主要就是想接着这次业务迁移的机会,尽量把各方面配置都做完善,让业务运行环境尽量安全、方便,后面就可以专心于业务开发上了。

3733 次点击
所在节点    Web Dev
36 条回复
lopetver
2021-01-05 11:48:47 +08:00
感觉迁移流程可以优化下

可以不用你本地的 2H8G 服务器

直接阿里云开台同配置的按量付费的云服务器

并安装 centos7 然后再此台服务器上验证你说的那些问题

如果验证通都通过了,并且项目迁移,docker 化都没问题

将此云服务器做个镜像,然后给将次镜像还原到原来的 win 云服务器上即可。

最后将新开的云服器释放

优点:方便,省事,减少业务中断时间

缺点,需要花费一些钱
dream4ever
2021-01-05 12:26:25 +08:00
@hisway
@lopetver 我上面没说清楚,2 核 8G 那台服务器也是阿里云的,所以现在是有两台阿里云服务器。
dream4ever
2021-01-05 12:27:19 +08:00
@lamesbond 哈哈,有感同身受的兄弟了,握个手
dream4ever
2021-01-05 12:51:26 +08:00
@hisway
@lopetver 前面没打完字就发出去了,这里继续。

花钱的事,在我们这种公司的这种部门就是很麻烦,所以既然已经有了一台阿里云上的 2 核 8G CentOS 服务器了,我能做的就是充分把它利用起来,把整体流程和各个环节都弄清楚,确认没问题之后,再给 4 核 16G 的阿里云服务器重装成 CentOS,然后再把业务手动迁移过去,虽然麻烦点,但这也是当前条件下的可行方案。
lopetver
2021-01-05 13:07:54 +08:00
@dream4ever 那就没问题了
rapperx2
2021-01-05 13:58:16 +08:00
容器化后坑是一个比一个多 哈哈
dream4ever
2021-01-05 14:10:02 +08:00
@rapperx2 具体讲讲嘛,让我也感受一下,说不定就吓得不敢容器化了,哈哈
doveyoung
2021-01-05 14:27:45 +08:00
IIS 上用 webdav 是个坑,我学艺不精没搞好,最后用了 CentOS+apache,不记得是不是有现成的配置可以参考,从安装 apache 开始到测试使用 20 分钟搞定,当天晚上启用到正式环境上。
dream4ever
2021-01-05 14:36:20 +08:00
@doveyoung 我司 IIS 上没用 WebDAV,我刚明白一楼的哥们为啥问我 WebDAV,原来是我把主题的节点选成了 Web DEV 。
lamesbond
2021-01-05 16:48:57 +08:00
我司也准备上容器,但是发现上容器后比之前麻烦不少,不了了之了
dream4ever
2021-01-05 16:56:17 +08:00
@lamesbond 方便讲讲具体麻烦在哪里么?
mingtdlb
2021-04-02 14:39:50 +08:00
@dream4ever #6 "参照着 CentOS 官方 Wiki 和 网上一些 CentOS 安全加固的文章",方便贴下链接么😂
dream4ever
2021-04-02 17:34:41 +08:00
Xhack
2021-04-27 14:31:20 +08:00
Xhack
2021-04-27 14:43:11 +08:00
就这我发个链接就被打了,没必要啊
dream4ever
2021-04-27 19:58:10 +08:00
@Xhack 什么被打了?没看明白

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/741689

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX