- 积分
- 16843
在线时间 小时
最后登录1970-1-1
|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有账号?开始注册
x
1.虚拟机创建时设置密码
, m" A0 A, c/ f( P" q计算节点安装以下软件包* G( c0 j' l& S( V
yum install libguestfs python-libguestfs libguestfs-tools-c9 A9 f& T, z+ v: L
配置计算节点nova配置文件/etc/nova/nova.conf,添加如下选项
; R5 h) L2 O% X[libvirt]5 k& o' M$ Q) q8 d
inject_password=true. _3 v4 i* J8 [. ~1 ?- i/ e
inject_key=true& P2 C- e5 u& P# _
inject_partition=-15 v+ s& _" I# D2 m9 P- t+ w( X
5 _$ n/ ^1 h5 u. ?7 k4 m
重启计算节点的nova服务3 d" J5 L3 V) j1 c
systemctl restart openstack-nova-compute libvirtd( w! a- A! x: u7 p7 }
user data 也可以是 cloud-init 支持的一个 yaml 结构文件,所以还可以通过如下方式改密码
# u5 K$ Y. z) {& i9 U# cat ./cloud-config.txt/ V9 \6 x! _/ U
#cloud-configchpasswd: list: | root:123456 expire: False* B# ?7 u& @ p
, ^, ~" y1 c, K创建虚拟机并设置密码的命令如下
& N/ y* u# t) c e4 t0 Tnova boot --user-data ./cloud-config.txt --image ... 或者openstack server create --user-data ./cloud-config.txt --image ...4 I; w1 N2 Q/ U4 t% D4 C# ]
示范如下9 I. Q. x' K& l! h: q% ^/ \
openstack server create --flavor 1c2g --user-data ./cloud-config.txt --availability-zone nova --image 75398b9c-5cd6-4936-a093-eba02984f7f0 \, ]+ O4 r1 K9 G! B
--nic net-id=5ac5c948-909f-47ff-beba-a2ffaf917c5f,v4-fixed-ip=172.16.99.134 \; b; ]: t2 I9 d7 x$ @2 i! A/ _
--nic net-id=85ae5035-203b-4ef7-b65c-397f80b5a8af,v4-fixed-ip=172.16.100.34 \
- `# [! o# }- _4 g. X, R* k--security-group 5bb5f2b1-9210-470f-a4a7-2715220b2920 tomcat-vm4
9 n9 K/ Q2 c$ d' }6 X* Y3 B
9 _+ F" T4 W% \8 l+ f6 y1 a! R' c+ {2 l8 _2 W& K# R7 ?
2.虚拟机启动后修改密码0 c$ p8 d5 I7 O, F& u b* ?' {
如果需要nova set-password起作用,需要image中装有qemu-guest-agent,另外需要设置meta中的 hw_qemu_guest_agent为yes
' V4 w8 J; x/ p3 }( }2.1首先需要在openstack镜像中增加metadata信息:hw_qemu_guest_agent=yes,命令如下:* g$ t: O5 f. b* f5 k
# glance image-update 75398b9c-5cd6-4936-a093-eba02984f7f0 --property hw_qemu_guest_agent=yes
2 A+ l: K/ a% `8 S- n& ?. _[url=][/url]6 u9 ~+ _& d) S! a
+---------------------+--------------------------------------------------------------------+| Property | Value |+---------------------+--------------------------------------------------------------------+| checksum | fc345c82d1f2f28c63a1be8b386a15e4 || container_format | bare || created_at | 2020-02-19T08:45:40Z || direct_url | file:///var/lib/glance/images/75398b9c-5cd6-4936-a093-eba02984f7f0 || disk_format | raw || hw_qemu_guest_agent | yes || id | 75398b9c-5cd6-4936-a093-eba02984f7f0 || min_disk | 0 || min_ram | 0 || name | CentOS 7.6 64位 || owner | 75aed7016c86445198356e78dddde4ba || protected | False || size | 5368709120 || status | active || tags | [] || updated_at | 2020-02-20T05:05:58Z || virtual_size | None || visibility | public |+---------------------+--------------------------------------------------------------------+[url=][/url]
( h) q% `7 a0 V* h# o0 A, p) ^6 t& `, V7 G ?' o) P
9 j' j) i# B$ E g$ ~0 v1 z
$ h# D0 W$ k* D" M
其中75398b9c-5cd6-4936-a093-eba02984f7f0为镜像ID# K& L {+ d1 x5 D% M
% a1 q) ~+ G( C0 |3 n! I
修改启动后的虚拟机密码为123456
; F0 x2 F0 P/ n# O" A5 a# nova set-password 550e9a70-8064-4180-8bab-502ee15e6647 或者 openstack server set --root-password 550e9a70-8064-4180-8bab-502ee15e6647
" f% i, L" d6 M" PNew password:
- O8 j: q+ [7 p1 B/ A6 J, eAgain:- [9 ~3 j F5 v5 i7 G
& j& u4 C) @$ y
其中550e9a70-8064-4180-8bab-502ee15e6647为虚拟机ID
# I5 S g- g$ G9 Z6 ?7 V. Q- ~# nova help set-password
. Q) Q: S0 E9 `" Eusage: nova set-password <server>. q# F, T" o; M9 m( o0 o9 h
( Z/ R8 T2 `% h/ H, {+ u5 mChange the admin password for a server.
& z5 V" M" i7 X$ ^. n+ Z. H% o; ?* a- N. R8 Z* P: N# Q
Positional arguments:
8 y& L3 V$ o" D& K' r2 i. v <server> Name or ID of server.
6 H, A' N d& f! q. e' K2 Q9 Y. }# q1 e
测试密码是否修改成功9 I) H/ L% w: j8 I
# sshpass -p '123456' ssh root@172.16.99.134 w( \. C3 w* k4 d) ~1 i5 E6 `
13:28:54 up 14 min, 1 user, load average: 0.04, 0.08, 0.13/ H) p: n& F/ I) D
USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT
0 `- O& R: q/ x5 \6 p; R: F' U/ Proot pts/0 10.30.1.103 13:20 8:28 0.03s 0.03s -bash; P( z* b$ d6 j2 {
; `) z2 |4 t- \
8 ^9 Y8 [* W2 ]4 ~ H/ T" j( a" M在openstack horizon中重建实例时支持设置密码,同样可以生效了。- @4 E& i. f, a7 L
; R& k+ W# p/ d1 F
扩展1:给单个云主机中增加metadata信息:hw_qemu_guest_agent=yes,命令如下:
2 D6 ^9 }6 D, V; g# d Q2 K( Enova meta 550e9a70-8064-4180-8bab-502ee15e6647 set hw_qemu_guest_agent=yes
' P0 B( N, _6 r* c% f( Q2 w
. N6 m& F) }. e/ [9 K扩展2:
4 E: `# u3 r2 @上传镜像前修改密码
$ C1 J2 c0 Q+ uvirt-customize -a /tmp/CentOS7.6_x86_64.raw --root-password password:123456- b- s! f0 D' |2 [7 S" b
上传镜像
; g" I/ P9 R+ W" [openstack image create "CentOS 7.6 64位 V2" --file /tmp/CentOS7.6_x86_64.raw --disk-format raw --container-format bare --public
# n' w8 c% [( B; n
" g# q0 y/ k& X- C% n! D+ H) z" u& K1 K
|
|