当前位置:网站首页>某政务云项目业务系统迁移调研实践
某政务云项目业务系统迁移调研实践
2022-04-23 14:06:00 【万博智云OneProCloud】
项目背景
某国家部委云平台项目自2020年中旬开始建设云平台,后期期望将全部VMware主机迁移至国产云平台内,但是由于虚拟机数量较大,系统调研工作迟迟未能完成,导致项目严重超期。从2021年6月介入该项目后,我们通过「知了Prophet」自动化调研工具,快速帮助用户完成业务系统调研工作,还通过”容灾渐进式“迁移的理念打消了用户在迁移前的顾虑,在不到1个多月的时间内,顺利完成了多套业务系统迁移工作,涉及虚拟机数量超过百台。本文重点介绍如何利用「知了Prophet」调研工具,完成自动化调研及系统信息梳理工作。
用户环境
客户本次要迁移的业务系统运行在以VMware为主的虚拟化平台上,VMware ESXi版本主要集中在5.1、5.5和6.5版本上,共计20台ESXi服务器,虚拟机数量1000台以上,分为业务区和DMZ区。
调研环境准备
软件安装
1、准备运行环境
在ESXi上创建一台虚拟机,配置如下:
-
操作系统:CentOS 7.3
-
规格:2 CPU 2G Memory 40G
-
网络:能够访问vCenterESXi,443和902端口(TCP协议)
2、安装容器
登陆到系统内部,使用root容器安装Docker
wget https://download.docker.com/linux/static/stable/x86_64/docker-19.03.15.tgz
配置容器
setenforce 0
tar -zxvf docker-19.03.15.tgz
mv docker/* /usr/bin/ && rm -rf docker
cat > /etc/systemd/system/docker.service <<-EOF
[Unit]
Description=Docker Application Container Engine
Documentation=https://docs.docker.com
After=network-online.target firewalld.service
Wants=network-online.target
[Service]
Type=notify
# the default is not to use systemd for cgroups because the delegate issues still
# exists and systemd currently does not support the cgroup feature set required
# for containers run by docker
ExecStart=/usr/bin/dockerd -H tcp://0.0.0.0:2375 -H unix://var/run/docker.sock
ExecReload=/bin/kill -s HUP
# Having non-zero Limit*s causes performance problems due to accounting overhead
# in the kernel. We recommend using cgroups to do container-local accounting.
LimitNOFILE=infinity
LimitNPROC=infinity
LimitCORE=infinity
# Uncomment TasksMax if your systemd version supports it.
# Only systemd 226 and above support this version.
#TasksMax=infinity
TimeoutStartSec=0
# set delegate yes so that systemd does not reset the cgroups of docker containers
Delegate=yes
# kill only the docker process, not all processes in the cgroup
KillMode=process
# restart the docker process if it exits prematurely
Restart=on-failure
StartLimitBurst=3
StartLimitInterval=60s
[Install]
WantedBy=multi-user.target
EOF
运行容器
systemctl daemon-reload
systemctl start docker
3、安装「知了Prophet」调研工具
docker pull \
registry.cn-beijing.aliyuncs.com/oneprocloud-opensource/cloud-discovery-prophet:latest
4、运行容器
我们将/root目录映射到容器内部
docker run \
--net host \
--privileged=true \
--name prophet \
-v $HOME:/root \
-dit \
registry.cn-beijing.aliyuncs.com/oneprocloud-opensource/cloud-discovery-prophet:latest
系统调研
系统信息采集
1、进入「知了Prophet」容器
docker exec -ti prophet bash
2、扫描全网中活跃主机
扫描指定网络地址段内的主机,并进行记录,可以作为后续更详细信息采集的输入。扫描完成后,将自动在指定的/root路径下生成 csv 文件。
prophet-cli scan --host 10.1.0.43-62 --output-path /root
3、填写用户名/密码
将生成CSV文件回传本地,用Excel编辑,填写用户名/密码信息
CSV结构说明(填写标红字段必填项)
4、执行采集
填写完成后,将scan_hosts.csv文件传到宿主机/root目录下,就可以执行详细信息采集了,方法如下:
prophet-cli collect --host-file /root/scan_hosts.csv --output-path /root/
指令运行后,会有汇总性的信息,如果采集失败,则需要在日志中查询错误原因
===========Summary==========
Total 73 host(s) in list, Need to check 2 host(s), success 0 hosts, failed 2 hosts.
Failed hosts: ['[WINDOWS]xxx', '[LINUX]xxx']
============================
执行完成后,将在ouput-path中生成host_collection_xxx.zip文件,该文件就是采集后的打包文件。
系统信息分析
对上一步运行的结果进行分析
prophet-cli report \
--package-file /root/host_collection_20210804091400.zip \
--output-path /root/
最后生成的analysis_report.csv就是分析后的文件,可以传输回本地,进行进一步分析,至此完成了全部信息采集工作。
总结
在本次调研工作中,脚本总运行时间在30分钟内,共调研出虚拟机数量1049,其中Window 582台,Linux 467台,CPU总数量 7734核,内存总大小19T,总存储容量为60TB。
在大规模系统调研中,自动化是必须的手段,而目前在迁移调研领域的工具少之又少,所以「知了Prophet」工具无疑是对系统调研准确性的最好的保障。
联系我们
现在,「知了Prophet」开源上线github,并同步至国内的gitee上。
-
Github地址:
https://github.com/Cloud-Discovery/prophet
-
Gitee地址:
https://gitee.com/cloud-discovery/prophet
我们希望,大家在使用过程的问题和新需求,都可以和我们提出来。大家可以在github上提交issue,或者加入我们的开发交流群,与我们一起共建Prophet。
「知了Prophet」
自动化采集、分析的工具集,目前支持对物理机、VMware环境的采集和分析,未来将扩展至云平台资源、存储、网络等多种资源。
版权声明
本文为[万博智云OneProCloud]所创,转载请带上原文链接,感谢
https://blog.csdn.net/OneProCloud/article/details/122808997
边栏推荐
- Autumn recruitment in 2021, salary ranking No
- Wechat applet communicates with esp8266 based on UDP protocol
- 帆软分割求解:一段字符串,只取其中某个字符(所需要的字段)
- Detailed tutorial on the use of smoke sensor (mq-2) (based on raspberry pie 3B +)
- Chapter I review of e-commerce spike products
- linux安装mysql后修改密码
- Nodejs安装及环境配置
- 快速安装mongodb
- jacob打印word
- 关于stream流,浅记一下------
猜你喜欢
Nodejs安装及环境配置
Visio installation error 1:1935 2: {XXXXXXXX
Universal template for scikit learn model construction
Wechat applet positioning and ranging through low-power Bluetooth device (2)
linux安装mysql后修改密码
postman批量生产body信息(实现批量修改数据)
RobotFramework 之 项目框架
Pycharm连接远程服务器并实现远程调试
CentOS mysql多实例部署
Intégration de Clusters CDH Phoenix basée sur la gestion cm
随机推荐
报表FCRA考试题集及答案(错了11题)
服务器日志分析工具(识别,提取,合并,统计异常信息)
log4j 输出日志信息到文件中
连接公司跳板机取别名
VMware 15pro mounts the hard disk of the real computer in the deepin system
Visio installation error 1:1935 2: {XXXXXXXX
leetcode--380. O (1) time insertion, deletion and acquisition of random elements
微信小程序setInterval定时函数使用详细教程
Jmeter设置环境变量支持在任意终端目录输入jmeter直接启动
Subscription number development of wechat applet (message push)
PySide2
基于CM管理的CDH6.3.2集群集成Atlas2.1.0
基于ibeacons签到系统
Jira截取全图
RobotFramework 之 文件上传和下载
帆软报表设置单元格填报以及根据值的大小进行排名方法
Node接入支付宝开放平台的沙箱实现支付功能
Switch usage (wechat applet)
CDH cluster integration Phoenix based on CM management
关于stream流,浅记一下------