OpenStack虚拟机管理实战:从操作到最佳实践


categories: - OpenStack运维 tags: - OpenStack - 虚拟机管理 - 实例操作 - 运维


OpenStack虚拟机管理实战:从操作到最佳实践

一、虚拟机生命周期管理

1.1 创建虚拟机

创建虚拟机是OpenStack最基本的操作之一,需要配置镜像、规格、网络等参数。


# 基本创建命令
openstack server create \
  --flavor m1.small \
  --image cirros \
  --network private \
  --key-name mykey \
  my-instance

# 带安全组的创建
openstack server create \
  --flavor m1.small \
  --image ubuntu-20.04 \
  --network private \
  --security-group web \
  --security-group ssh \
  --key-name mykey \
  web-server

# 带用户数据的创建
openstack server create \
  --flavor m1.medium \
  --image centos-7 \
  --network private \
  --user-data init.sh \
  --key-name mykey \
  app-server

1.2 虚拟机控制操作


# 启动虚拟机
openstack server start my-instance

# 停止虚拟机
openstack server stop my-instance

# 重启虚拟机
openstack server reboot my-instance

# 硬重启(相当于断电重启)
openstack server reboot --hard my-instance

# 挂起虚拟机
openstack server suspend my-instance

# 恢复虚拟机
openstack server resume my-instance

# 暂停虚拟机
openstack server pause my-instance

# 取消暂停
openstack server unpause my-instance

1.3 虚拟机信息查询


# 查看虚拟机列表
openstack server list
openstack server list --all-projects
openstack server list --status ACTIVE
openstack server list --host compute01

# 查看虚拟机详情
openstack server show my-instance

# 查看控制台日志
openstack console log show my-instance --lines 100

# 获取VNC控制台URL
openstack console url show my-instance

# 查看虚拟机IP地址
openstack server show my-instance | grep addresses

# 查看虚拟机使用统计
openstack server show my-instance | grep -E "OS-EXT-STS:"

二、虚拟机高级操作

2.1 虚拟机快照


# 创建快照
openstack server image create \
  --name my-snapshot \
  my-instance

# 查看快照列表
openstack image list

# 使用快照创建虚拟机
openstack server create \
  --flavor m1.small \
  --image my-snapshot \
  --network private \
  restored-instance

2.2 虚拟机迁移


# 在线迁移(需共享存储)
openstack server migrate \
  --live-migration \
  --host compute02 \
  my-instance

# 离线迁移
openstack server migrate \
  --block-migration \
  compute02 \
  my-instance

# 查看迁移状态
openstack server migration list my-instance

# 取消迁移
openstack server migration-cancel 

2.3 虚拟机扩容


# 更改规格
openstack server resize \
  --flavor m1.medium \
  my-instance

# 确认resize
openstack server resize confirm my-instance

# 撤销resize
openstack server resize revert my-instance

三、虚拟机故障排查

3.1 常见问题排查


# 1. 检查虚拟机状态
openstack server show my-instance

# 2. 检查Nova服务
openstack compute service list

# 3. 检查计算节点
openstack hypervisor list
openstack hypervisor show compute01

# 4. 查看调度日志
tail -f /var/log/nova/nova-scheduler.log

# 5. 查看计算日志
tail -f /var/log/nova/nova-compute.log

# 6. 查看虚拟机控制台
openstack console log show my-instance

3.2 网络故障排查


# 1. 检查网络端口
openstack port show 

# 2. 检查安全组规则
openstack security group show default

# 3. 检查路由
openstack router show 

# 4. 测试网络连通性
ping -c 4 192.168.1.100

四、最佳实践

4.1 命名规范


# 推荐命名格式
# <环境>-<应用>-<序号>
# prod-web-01
# dev-db-01
# test-app-02

4.2 资源配置建议


# Web服务器
# m2.general-purpose (4CPU, 8GB RAM)

# 数据库服务器
# m2.memory-optimized (8CPU, 32GB RAM)

# 计算节点
# m2.compute-optimized (16CPU, 32GB RAM)

4.3 自动化管理


# 使用Tags管理
openstack server add tag production my-instance
openstack server add tag web my-instance
openstack server list --tag production

五、总结

本文介绍了OpenStack虚拟机管理的核心操作和最佳实践。

核心要点:

发表回复

后才能评论