Notes
  • 简介
  • Linux
    • Ubuntu
      • Ubuntu 20.04 ARM64 修改PAGE_SIZE 64k
    • Samba
      • CentOS7安装Samba
      • 简单案例
      • 审计
      • 相关命令
    • Systemd
    • FPM 打包 nginx rpm 包
    • rpm 打包-从二进制文件进行打包
    • Centos7 重置密码
    • CentOS7搭建kvm并创建虚拟机
    • CentOS7-KVM 嵌套虚拟化
    • CentOS7 KVM GPU 穿透
    • Bonding
    • CentOS7 发送邮件
    • CentOS7 安装 OpenVPN
    • Linux 多线路由策略
    • Webmin 安装
    • NoVNC 安装
    • SRS-RTMP 服务部署
    • CentOS7 安装 MongoDB
    • confluence 安装
    • jira 安装
    • crowd 安装
    • ScriptRunner For Jira
    • ScriptRunner For Confluence
    • Ubuntu VNC
    • Ubuntu18.04-VNC 安装
    • deb 打包
    • iptables
    • debian 保持软件包一致
    • Ubuntu18.04 编译安装 grpc
    • CentOS7 安装 odoo13
    • Pacemaker 入门
    • Firewalld Rich Language
    • PHP Xdebug
    • CentOS7.3 编译安装 Python3.6
    • 葫芦儿打包
    • CentOS7 安装 Tomcat8
    • CentOS7 安装 JDK
    • GuacamoleServer 编译安装
    • FreeBSD7.0安装AMP
    • CentOS7 换源
    • deb下载并离线安装
    • pip下载并离线安装
  • Network
    • 案例一
  • AI
    • 微调Qwen2.5
    • Qwen2.5 VL AWQ量化
    • qwen2.5 填充权重
  • JavaScript
  • Zabbix
    • CentOS7 安装 Zabbix4.0 LTS
    • Zabbix 加密连接
    • Zabbix 主动和被动模式
    • Zabbix 配置邮件报警
    • Zabbix 监控 MySQL
  • 数据库
    • MySQL
      • CentOS7 Install MySQL5.7
      • MySql 主从配置
      • CentOS7 安装 Percona XtraDB Cluster
      • MySql 压力测试-sysbench
      • MariaDB Galera Cluster
      • 备份脚本
    • MongoDB
      • 启用账号密码登录
      • 备份脚本
  • Nginx
    • CentOS7 安装 Nginx
    • Nginx 配置
    • nginx-http-flv-module
    • Nginx-WebDAV
  • Docker
    • CentOS7 安装 Docker
    • Dockerfile
    • DockerSwarm 集群
    • Docker 安装 guacamole
  • Python
    • 虚拟环境
  • Windows
    • Windows 问题集合
    • 迅雷自动安装 Chrome 插件
    • RDP 注册表
    • Rdp File Setting
    • 本地组策略对象(LGPO)工具
    • 禁用应用联网
    • SQL Server 问题处理
    • SQL Server Trigger
    • NSIS 脚本
    • 使用QEMU运行ARM64 CentOS7
    • DOS 脚本
    • Windows 11 设置旧版右键菜单
    • 远程桌面二次验证
  • Apple
    • AppStore 应用开发及上架
    • Apple 打包 Golang WebDav 制作 pkg 安装包
  • Android
    • Android Studio创建具有root权限的虚拟机
    • Android读写挂载system
    • Android安卓CA至系统
  • 证书
    • 证书名称(主题)
    • 证书扩展
    • SSL 自签
    • 免费 https 证书申请
  • 树莓派
    • 树莓派系统烧录及系统打包制作
    • 树莓派基础操作
    • 树莓派安装 NextCloud
    • 树莓派安装 LNMP
    • 树莓派自定义开机界面和登录提示
    • 树莓派安装 HomeAssistant
    • HomeAssistant 配置
    • 树莓派自动挂载 U 盘
    • 树莓派安装 vsftpd
    • vsftpd 配置文件详解
  • ceph
    • ceph-deploy 部署 ceph nautilus 版本
    • ceph dashboard
  • OpenStack
    • OpenStack VM 配置 Virtual IP
    • OpenStack Glance 对接 Ceph RBD 存储
    • OpenStack Cinder Volumes 对接 Ceph RBD 存储
    • OpenStack 集群搭建
    • OpenStack Rocky 单节点部署
    • OpenStack Rocky 集群部署
    • OpenStack CentOS6 镜像制作
    • OpenStack-Ubuntu 镜像制作
    • Openstack-Windows 镜像制作
    • OpenStack-RBD 导入镜像
    • OpenStack-Rocky 灾备
    • rbd-mirror
  • FFmpeg
    • CentOS7 静态编译FFmpeg
    • MacOS10.12静态编译FFmpeg
    • CentOS7 Arm64静态编译FFmpeg
    • 使用NVIDIA显卡
    • 脚本
  • Other
    • 华为一碰传标签制作
    • 常用软件
    • wireguard
由 GitBook 提供支持
在本页
  • 方法 1
  • 方法 2
  1. OpenStack

OpenStack-RBD 导入镜像

方法 1

  • 使用命令导入假镜像

    openstack image create "Ubuntu18.04" \
    --file ~/cirros-0.4.0-x86_64-disk.img \
    --disk-format raw --container-format bare \
    --property hw_scsi_model=virtio-scsi \
    --property hw_disk_bus=scsi \
    --property hw_qemu_guest_agent=yes \
    --property os_require_quiesce=yes \
    --property os_type=linux \
    --property os_admin_user=root \
    --min-disk 20 \
    --min-ram 2048 \
    --public
    
    # ................
    # id | ef85323a-c0f1-4452-922c-bdb8592fddde
    # .................
  • rbd 导入

    # 解除快照保护
    rbd snap unprotect images/ef85323a-c0f1-4452-922c-bdb8592fddde@snap
    # 删除快照
    rbd snap rm images/ef85323a-c0f1-4452-922c-bdb8592fddde@snap
    # 删除镜像
    rbd rm images/ef85323a-c0f1-4452-922c-bdb8592fddde
    # 导入镜像 ubuntu18.04.raw
    rbd import ubuntu16.04.raw images/ef85323a-c0f1-4452-922c-bdb8592fddde
    # 创建快照
    rbd snap create images/ef85323a-c0f1-4452-922c-bdb8592fddde@snap
    # 保护快照
    rbd snap protect images/ef85323a-c0f1-4452-922c-bdb8592fddde@snap
  • 计算镜像md5和sha512值

    # 计算md5值
    md5sum ubuntu18.04.raw
    # ba3cd24377dde5dfdd58728894004abb    ubuntu18.04.raw
    
    # 计算 sha512值
    sha512sum ubuntu18.04.raw
    # b795f047a1b10ba0b7c95b43b2a481a59289dc4cf2e49845e60b194a911819d3ada03767bbba4143b44c93fd7f66c96c5a621e28dff51d1196dae64974ce240e   ubuntu18.04.raw
  • 连接数据库,更新数据

    UPDATE `glance`.`images`
    -- 镜像大小
    SET `size` = 21474836480,
    -- 镜像md5值
    `checksum` = '7324c73bee3216b5c7a9d27370eb1774',
    -- sha512 校验
    `os_hash_algo` = 'sha512',
    `os_hash_value` = '5ee4ca048ef161f661cf308654cc7e7bdcb9af6905447c1b098aa3df09a27fd8468ee7573f3e092051422c07e6ee67fb1aab5119172c06d551005b5192562778'
    WHERE `id` = 'ef85323a-c0f1-4452-922c-bdb8592fddde';

方法 2

  • 导入脚本

#!/bin/bash
set -e
IMAGE_ID='20b1c7b8-0be6-4380-9fe8-8551adaf2d22'
IMAGE_NAME='WindowsServer2008R2_Enterprise_x64'
IMAGE_SIZE='42949672960'
MIN_DISK='40'
MIN_RAM='2048'
OS_TYPE='windows'
OS_ADMIN_USER='Administrator'
LOGIN_NAME='Administrator'
LOGIN_PASSWORD='qwe123.'
IMAGE_MD5='6e771ab1c21c499038cc8a6baecf92ba'
IMAGE_SHA512='64ffde031cdf9b9ce7c0b5b99a3c59289e632d74e047641954329f4efeffb6aa9ef204bb9ef5d15f85f475741dec2fc2ddb65cd1275c6d3013cae9891097405a'
IMAGE_URL="rbd://$(grep fsid /etc/ceph/ceph.conf | awk -F '=' 'NR == 1 {print $2}' | sed 's/ //g')/images/$IMAGE_ID/snap"
IMAGE_OWNER=`openstack project show admin -c id -f value`


echo "# 导入镜像 $IMAGE_NAME.raw"
echo "rbd import $IMAGE_NAME.raw images/$IMAGE_ID"
echo "# 创建镜像快照"
echo "rbd snap create images/$IMAGE_ID@snap"
echo "# 保护快照"
echo "rbd snap protect images/$IMAGE_ID@snap"

echo "# 连接数据库,执行SQL语句"
echo "-- 插入镜像数据"
echo "INSERT INTO glance.images(id, name, size, status, created_at, updated_at, deleted, disk_format, container_format, checksum, owner, min_disk, min_ram, visibility, os_hash_algo, os_hash_value) VALUES ('$IMAGE_ID', '$IMAGE_NAME', $IMAGE_SIZE, 'active', now(), now(), 0, 'raw', 'bare', '$IMAGE_MD5', '$IMAGE_OWNER', $MIN_DISK, $MIN_RAM, 'public', 'sha512', '$IMAGE_SHA512');"

echo "-- 插入镜像地址"
echo "INSERT INTO glance.image_locations(image_id, value, created_at, updated_at, deleted, meta_data) VALUES ('$IMAGE_ID', '$IMAGE_URL', now(), now(), 0, '{}');"

echo "-- 插入元数据"
echo "INSERT INTO glance.image_properties(image_id, name, value, created_at, updated_at, deleted) VALUES ('$IMAGE_ID', 'hw_qemu_guest_agent', 'yes', now(), now(), 0);"
echo "INSERT INTO glance.image_properties(image_id, name, value, created_at, updated_at, deleted) VALUES ('$IMAGE_ID', 'os_require_quiesce', 'yes', now(), now(), 0);"
echo "INSERT INTO glance.image_properties(image_id, name, value, created_at, updated_at, deleted) VALUES ('$IMAGE_ID', 'os_type', '$OS_TYPE', now(), now(), 0);"
echo "INSERT INTO glance.image_properties(image_id, name, value, created_at, updated_at, deleted) VALUES ('$IMAGE_ID', 'hw_scsi_model', 'virtio-scsi', now(), now(), 0);"
echo "INSERT INTO glance.image_properties(image_id, name, value, created_at, updated_at, deleted) VALUES ('$IMAGE_ID', 'hw_disk_bus', 'scsi', now(), now(), 0);"
echo "INSERT INTO glance.image_properties(image_id, name, value, created_at, updated_at, deleted) VALUES ('$IMAGE_ID', 'os_admin_user', '$OS_ADMIN_USER', now(), now(), 0);"
echo "INSERT INTO glance.image_properties(image_id, name, value, created_at, updated_at, deleted) VALUES ('$IMAGE_ID', 'login_name', '$LOGIN_NAME', now(), now(), 0);"
echo "INSERT INTO glance.image_properties(image_id, name, value, created_at, updated_at, deleted) VALUES ('$IMAGE_ID', 'login_password', '$LOGIN_PASSWORD', now(), now(), 0);"
上一页Openstack-Windows 镜像制作下一页OpenStack-Rocky 灾备

最后更新于3年前