找回密码
 注册
查看: 897|回复: 2

通过virt-v2v迁移虚机到openstack平台

[复制链接]

1

主题

0

回帖

12

积分

管理员

积分
12
QQ
发表于 2022-6-17 17:01:12 | 显示全部楼层 |阅读模式
命令介绍6 S: t# X$ p- ?0 o: G/ y5 j2 [5 v
  1、 查看EXSI 主机虚机列表
1 U' c0 T7 B( g6 Y! e1 c0 v    #virsh -c esx://root@EXSI_server_IP?no_verify=1 list --all        ## EXSI_server_IP : EXSI 主机IP,需要输入服务器的root 密码7 \3 t8 V& t0 n# n/ V" v8 G

# k# {7 [5 f9 `  2、拷贝虚拟机到本地,拷贝完成后会在当前目录生成一个xml文件和disk1磁盘文件,同样也是需要输入EXSI 服务器密码
# o3 E# m" i! {    #mkdir /data         #创建用于存放文件的目录
7 H/ p' b  t3 @; C2 }) _/ h/ [    #virt-v2v-copy-to-local -ic esx://root@EXSI_server_IP?no_verify=1 vm_name            #vm_name: 需要拷贝到本地的虚机名称(在步骤一中获取)
7 p7 G1 A0 e; o( q     
# l* K4 Y! a7 }; ]1 _; y
% C- m2 [" v  }/ H+ E; ^1 i
9 z0 a4 U: _1 ?) |
  3、转换数据格式,把磁盘文件的格式转换成OpenStack能够识别的格式 (如果有报错,查看最后的报错总结)1 I6 u% C; i) ]0 V$ }( O1 J, @1 z
    # mkdir /data/vms          #创建用于存放格式转换后的文件
8 W& @& {& \2 _$ s- V' z   # virt-v2v -i libvirtxml vm_name.xml -o local -os vms/ -of raw               # -of :转换为row 格式        -os :指定输出路径      vm_name.xml:为第二步骤中生成的文件9 T0 r( W+ Q* ?+ E
    
: `' I* }6 E: E3 b
  4、将转换完成后的 vm_name-sda 文件上传至openstack中,启动新的虚机。
    流程:创建卷-->通过rbd 导入 vm_name-sda 的设备---> 启动虚机

! ?* E5 {! ~( s# Z# p- F8 ~: ~
+ \+ g  c: ^6 C
4 J! o- Z1 W! F  j" v
* M& d2 m; h/ W$ Y# @( ]0 A+ {3 }. ]9 Z2 G" |
四、报错总结:
* y, G9 }7 W/ n/ {  第三步报错:Failed to connect socket to '/var/run/libvirt/libvirt-sock'
2 N# a9 ^; K* x
8 C8 g6 U7 V2 t4 J  解决:6 k, q" r' d- U% B. I
    1、# groupadd libvirtd       #增加libvirtd用户组
% \; H0 B* m4 y5 v- |+ Z) H    2、# sudo usermod -a -G libvirtd $USER     #设置用户到组
3 w3 L+ q1 O- Z1 h    3、# vi /etc/libvirt/libvirtd.conf         #取消注释并修改为如下:  6 E9 c3 d( a2 o
      $ Q4 y) v- r* F+ n: E

- a" x9 R! j2 v9 w, s- v    4、增加权限启动配置
- Z. c: x3 x, `        ^8 e6 {* `! _, F$ W, G! }1 z
  • vi /etc/polkit-1/localauthority/50-local.d/50-org.libvirtd-group-access.pkla
  • [libvirtd group Management Access]
  • Identity=unix-group:libvirtd
  • Action=org.libvirt.unix.manage
  • ResultAny=yes
  • ResultInactive=yes
  • ResultActive=yes
    " h) _; l. d/ y" S) Q' m) t
% y* x  h% o0 ?3 X3 t3 i8 d

4 W+ R0 j8 W) V  w& @" R$ i8 C8 ~    5、重启服务
$ @" v7 W' K( j      # service libvirtd restart
. j2 F' D; r' d
, k" j# A- c2 m, ~9 J

1

主题

0

回帖

12

积分

管理员

积分
12
QQ
 楼主| 发表于 2022-10-21 09:22:11 | 显示全部楼层
[root@compute03 opt]# virsh pool-list * M: L/ `6 q0 V+ X: @
Name                 State      Autostart
5 i" `. G, P5 D* s9 c1 Q  U5 N6 a' T-------------------------------------------
& ~2 @9 @/ B& T6 f. H% g 2222                 active     yes      
1 }7 w% i9 _( e default              active     yes      
: Y4 p  t. r" d8 p7 ` opt                  active     yes      
0 P# r( ^  T6 @, k$ e* W rhev                 active     yes      
! O! D1 s# B8 Y9 K
4 @: s0 H: V1 @# u[root@compute03 opt]# virsh pool-list rhev7 e+ e# p. c9 Q
error: Invalid pool type 'rhev'  T& h! {0 j& U' @
  \( J+ p  j; t& R2 n( [
[root@compute03 opt]# virsh pool-info rhev
  t2 T, b* Y* ?3 sName:           rhev& G! U; \# P) o# o4 c; L7 h
UUID:           103a948e-1b28-43a8-a463-50c122ecad6a+ u5 x$ e0 v  @+ l2 G1 a' o
State:          running
$ g4 @9 q; n* V, k% RPersistent:     yes% C  ^/ p- N  N+ v3 L
Autostart:      yes- Q5 H% z) m7 m6 H
Capacity:       541.64 GiB7 q% j% O6 w, v( T! D
Allocation:     372.81 GiB( {8 C6 p9 a8 }3 `3 Y$ {# R
Available:      168.83 GiB
6 f: P3 J5 N2 N7 o7 P. R
: A+ M$ E2 x6 K$ r2 ]1 w& @  r3 i  ~[root@compute03 opt]# chown -R qemu:root ; ^0 f2 d7 U( o5 X# R3 C
containerd/0 T& Q4 N# [: h+ e! A
containerd.io-1.4.3-3.1.el7.x86_64.rpm, M4 U2 {1 P3 }9 l
docker-ce-rootless-extras-20.10.1-3.el7.x86_64.rpm4 z* L( Q" ]6 K5 Q
rh/
5 \% g9 t7 S9 J( e8 lrhev/
  q  R0 _- B4 }$ ]5 p) ^! G/ z; w[root@compute03 opt]# chown -R qemu:root " E% [$ h4 u" [: {- F& `
containerd/
( q" j* u# q3 M( Ucontainerd.io-1.4.3-3.1.el7.x86_64.rpm
7 s2 ?' C8 X% E+ {5 Xdocker-ce-rootless-extras-20.10.1-3.el7.x86_64.rpm
' e; i$ _% {7 f. v9 u2 t% n5 _6 grh/
$ G' J3 b  U8 B- }3 a, y7 Hrhev/4 W( y+ Y* x# G+ j
[root@compute03 opt]# chown -R qemu:root rhev/
& }! L& X5 s$ }8 n. {! b[root@compute03 opt]# ls3 ]. S( w$ K- Q% W& T
containerd                              docker-ce-rootless-extras-20.10.1-3.el7.x86_64.rpm  rhev
0 l' K5 i$ n+ D. R( ^& @  econtainerd.io-1.4.3-3.1.el7.x86_64.rpm  rh- s! d2 b" B# E* o$ o1 k# u4 l
[root@compute03 opt]# ll
9 X2 N' T, [  O& n0 w" Q, ^total 43136$ g1 C/ s0 f, z5 o' b! }. {
drwx--x--x  4 root root       28 Apr  8  2022 containerd0 v! G# A% `& G1 ^
-rw-r--r--  1 root root 34677436 Feb  2  2021 containerd.io-1.4.3-3.1.el7.x86_64.rpm
( d" C" H# [8 R4 M3 \4 x-rw-r--r--  1 root root  9486464 Feb  2  2021 docker-ce-rootless-extras-20.10.1-3.el7.x86_64.rpm7 d! Y  i: r2 e
drwxr-xr-x. 2 qemu root        6 Oct 31  2018 rh
, H; ]4 P0 ~  B# y4 Cdrwxr-xr-x  2 qemu root       22 Apr 25 14:02 rhev
3 x* ]. T$ M: f! g  c7 n# Z: Z3 _) S4 J/ a

4 q, p" v0 F$ c9 `  Y4 ~
+ n9 F) J9 k. u# Q( ~5 }* z& D. E/ m% `开始迁移:
6 ^3 T, C/ E# b2 P5 T; r1、将使用virt-p2v镜像制作的U盘启动盘来引导物理机。
$ a6 N# J$ j( J5 \3 p# f; U: F6 Z2、进入到图形界面
0 V5 U7 A% ]0 [+ q% I  s        1.填写中转机的IP地址
. [9 U& M$ P: n1 T' S3 O        2.填写中转机的sshd服务端口号(默认为22)
& g- r( R+ r: ?; Z+ S        3.填写中转机用户名. X- f- D* b" A% I% A, k
        4.填写中转机对应用户名的密码/ b" G7 f* Q* J  R" I
        5.填写私有sshd服务密钥路径(可以不填写)
7 y7 g$ I% _8 S' j                   配置网络, 如果没有dhcp。需要手动配置一个静态ip地址,点击configure network ,删除所有默认的网络配置,手动创建新的
& |" O8 s/ Y9 q2 \9 c5 c' u                   选择网卡设备,这里我们要选择可以 连接到 中转机的网卡设备
3 F; n& M' K! d/ \% W( S% G: i& D
配置好之后,点击Test connection,然后 测试通过后,点击Next。9 N2 U3 r/ P! W1 u  {

6 W; M4 |& V  ^. N4 a. z3 b 设置迁移信息,
# ~/ H8 y. |* \  j2 r+ F1.填写主机名称,cpu数量,内存容量(此项自定义)
* G) f2 F: D( u2.选择管理工具(libvirt),生成镜像文件的输出位置(存储池名称)和输出格式(raw,qcow2)6 C1 }( F1 Y9 R$ Z8 O) x3 a
填写 物理机转换为虚拟机的输出方式和格式,具体如下:5 d; T1 m0 r3 ~/ }3 x/ g+ U- `

* L# T( M3 l( m8 v8 R7 n0 Loutput to (-o): 选择输出模式,推荐选择 libvirt 模式或者 local 模式" d0 w2 c( q! z+ r& R! D
output conn (-oc): 填写一个 kvm 虚拟化的域名 (可选)
5 j0 q# u& Q! youtput storage (-os): 填写一个存储位置,对应输出模式选择存储位置, libvirt 对应存储池名称, local 对应中转机的存储目录
/ H) H$ c; t& p# y! x% P0 }output format (-of): 填写输出格式,推荐 qcow2 格式,如果存储位置空间够大,可以填写 raw 格式$ v9 o; `9 }, C& e
1 e! @9 U" H( l  j! g$ P3 O

0 c& t" f* L5 Y% Z' G$ I: F9 Z7 B5 p

6 I6 p; x$ Z1 F4 l* N2 @: V: i3.选择需要转换的硬盘, \: @8 T: r7 z3 @$ L
4、要转换成虚拟机的时候,保留的物理网卡! k2 M4 w! h. y: n6 Y3 G- Z
配置好后,点击Start conversion。
0 B0 E0 T* h4 b# a% K/ i
" z- r) j( A/ t3 I# }. P以下是示例配置信息:" L5 l5 o4 k. U* L2 X3 B, Q
将转换成的虚拟机磁盘,保存到中转机的/p2v-pool,虚拟磁盘格式为qcow2 格式。% B' Q- E4 i5 U# y- c

* Z) t1 g  p9 T: Q* b1 n迁移过程中选择了libvirt模式,那么物理机的操作系统迁移过来后,会直接在中转机virt-manager中生成shut off状态的虚拟机。9 f7 C4 I; [* s! @1 s# a

7 h9 W' e/ {/ L4 S2 a; ?
6 X9 o9 M. a3 @

1

主题

0

回帖

12

积分

管理员

积分
12
QQ
 楼主| 发表于 2022-10-21 13:31:47 | 显示全部楼层
暂不支持suse10系统
您需要登录后才可以回帖 登录 | 注册

本版积分规则

返回首页|Archiver|手机版|小黑屋|易陆发现技术论坛 ( 蜀ICP备2026014127号-1 )

GMT+8, 2026-6-12 02:18 , Processed in 0.028749 second(s), 29 queries .

Powered by Discuz! X5.0

© 2001-2026 Discuz! Team.

快速回复 返回顶部 返回列表