saltstack之virt模块创建虚拟机分析之三

今天,我们再来试验一把,增加一块数据盘,和一块内网网卡.

此次测试命令依然是通过profile来实现.

我们需要在_grains的virt_disk_nic.py处添加些数据。

如下:

def disk_nic():
    grains = {}
    grains[‘virt‘]={‘disk‘:{},‘nic‘:{}}
    grains[‘virt‘][‘disk‘][‘system‘]={}
    grains[‘virt‘][‘nic‘][‘nics‘]=[{‘eth0‘:{‘bridge‘:‘br0‘}},{‘eth1‘:{‘bridge‘:‘br0‘}}]
    grains[‘virt‘][‘disk‘][‘system‘]=[{‘system‘:{‘format‘:‘raw‘,‘pool‘:‘/var/lib/libvirt/images‘}},{‘data‘:{‘format‘:‘raw‘,‘pool‘:‘/var/lib/libvirt/images‘}}]
    return grains

测试

[email protected]:/srv/salt/_grains# salt ‘kvm.tiancity.com‘ config.get virt:nic:nics --output=json
{
    "kvm.tiancity.com": [
        {
            "eth0": {
                "bridge": "br0"
            }
        },
        {
            "eth1": {
                "bridge": "br0"
            }
        }
    ]
}
[email protected]:/srv/salt/_grains# salt ‘kvm.tiancity.com‘ config.get virt:disk:system --output=json
{
    "kvm.tiancity.com": [
        {
            "system": {
                "pool": "/var/lib/libvirt/images",
                "format": "raw"
            }
        },
        {
            "data": {
                "pool": "/var/lib/libvirt/images",
                "format": "raw"
            }
        }
    ]
}

执行结果:

试验完毕,后面,我将需要实验如何添加ip.

这个需要好好想想喽。

时间: 2024-08-06 08:09:54

saltstack之virt模块创建虚拟机分析之三的相关文章

saltstack之virt模块创建虚拟机分析之二

那今天说下第2种,命令执行格式如下: salt 'kvm.tiancity.com' virt.init web20 4 512 nic=nics disk=system 在这里,我们需要注意下对与kvm/qemu不允许使用profile,我们需要将virt.py改下代码: 这样,就允许我的试验环境了. 我的想法是,我的虚拟机镜像文件被存储在/var/lib/libvirt/images/web20/system.raw,看下我如何构造磁盘的数据结构呢. diskp=[{'system':{'s

在Ceph中创建虚拟机流程改进之分析

作为个人学习笔记分享,有任何问题欢迎交流! 最近在Gerrit中看到一个change:https://review.openstack.org/#/c/94295/ , 它主要是对当前在Ceph中创建虚拟机的流程的改进.如果glance的backend是ceph, 则nova创建虚拟机到RBD的流程是这样的: 通过glance从ceph中下载image --> 本地 --> 复制image到rbd 这个change的目的就是:不需要下载到本地,直接在rbd中复制image,以提高虚拟机创建的速

Nova创建虚拟机的底层代码分析

作为个人学习笔记分享.有不论什么问题欢迎交流! 在openstack中创建虚拟机的底层实现是nova使用了libvirt,代码在nova/virt/libvirt/driver.py. #image_meta:镜像的相关内容,#injected_files:要注入到VM的文件 #network_info:网络相关信息.block_device_info:磁盘相关信息 def spawn(self, context, instance, image_meta, injected_files, ad

nova创建虚拟机源码分析系列之八 compute创建虚机

/conductor/api.py _build_instance()  /conductor/rpcapi.py  _build_instance() 1 构造一些数据类型2 修改一些api版本信息3 投入消息队列  /conductor/manager.py  _build_instance()1 过滤信息2 调度模块工作(选出最合适的主机,并返回)3 调用/nova/compute/rpcapi.py::build_and_run_instance() 此时已经拿到最合适主机 /compu

openstack之创建虚拟机

1.创建网络和子网 [[email protected] ~]# source admin-openrc.sh  [[email protected] ~]# neutron net-create flat --shared --provider:physical_network physnet1 --provider:network_type flat Created a new network: +---------------------------+-------------------

红帽虚拟化RHEV3.2创建虚拟机(图文Step by Step)

目录 目录 前言 Install RHEV 创建Data CenterClusterHost 创建存储 创建虚拟机 前言 RHEV3.2的Web管理界面有了很大的改进,更加的简单和便捷,还可以使用中文浏览. Install RHEV Step1:更新系统 yum update -y Step2:安装RHEV并将其report功能也安装上 yum install -y rhevm rhevm-reports rhevm-dwh Step3:配置RHEV [[email protected] ~]#

Android多线程分析之三:Handler,Looper的实现

Android多线程分析之三:Handler,Looper的实现 罗朝辉 (http://blog.csdn.net/kesalin) CC 许可,转载请注明出处 在前文<Android多线程分析之二:Thread的实现>中已经具体分析了Android Thread 是怎样创建,执行以及销毁的,其重点是对对应 native 方法进行分析,今天我将聚焦于 Android Framework 层多线程相关的类:Handler, Looper, MessageQueue, Message 以及它们与

centos7中安装kvm,并连接vnc创建虚拟机

一 环境准备 1 关闭selinux 永久关闭:cd /etc/selinux/config  修改enforcing为disabled后保存退出. 临时关闭,重启失效: setenforce 0 getenforce 显示Permissive 修改完毕 2关闭防火墙 systemctl stop firewalld systemctl disable firewalld 3关闭Network Manager sysetmctl stop Network Manager systemctl di

Centos7KVM的安装与配置及创建虚拟机

我是在VMware Workation上做的实验进入到系统后,关闭iptables或者firewalld,关闭selinux.并且检查cpu参数是否支持虚拟化:[[email protected] ~]# systemctl stop firewalld[[email protected] ~]# systemctl stop iptables[[email protected] ~]# systemctl disable firewalld[[email protected] ~]# syst