• KVM openstack


    1.什么是云计算

    云计算是一种按量付费的模式!云计算的底层是通过虚拟化技术来实现的!

    2.云计算的服务类型

    IAAS 基础设施即服务  虚拟机 ecs云主机
    PAAS平台即服务  python ,java 容器
    SAAS软件即服务,企业邮箱服务,cdn,redis数据库
    

    3.为什么要用云计算

    小公司:
    #10台  20w+ idc  5w + 100M   10W, 10台云主机,前期投入小,扩展灵活,风险小
    
    大公司:
    #闲置服务器计算资源,虚拟机,出租(超卖)
    #64G 服务器  64台1G   320台1G      64台  大公司自己的业务   264台  租出去
    
    国企,银行
    #公有云:  谁都可以租
    #私有云:  只有公司内部使用
    #混合云: 有自己的私有云 + 租的公有云
    

    4.云计算的基础KVM虚拟化

    宿主机:
    内存4G+  纯净的系统CentOS-7(关闭selinux,firewalld和NetworkManager)
    

    4.1.什么是虚拟化?

    虚拟化,通过模拟计算机的硬件,来实现在同一台计算机上同时运行多个不同的操作系统的技术。

    4.2 .linux虚拟化软件

    KVM(linux)

    全虚拟机,它有硬件支持cpu,内置在linux内核模块,而且不需要使用专门的内核   centos6 kvm 性能较好,兼容较好
    

    4.3.安装kvm虚拟化管理工具

    主机名 ip地址 内存 虚拟机
    kvm01 10.0.0.11 4G cpu开启vt虚拟化
    kvm02 10.0.0.12 4G cpu开启vt虚拟化

    测试是否开启的虚拟化

    lsmod |grep kvm
    
    #yum install libvirt virt-install qemu-kvm -y
    

    libvirt 作用:

    虚拟机的管理软件 libvirt: kvm,xen,qemu,lxc....
    

    virt-install virt-clone 作用:

    虚拟机的安装工具和克隆工具 
    

    qemu-kvm qemu-img (qcow2,raw)作用:

    管理虚拟机的虚拟磁盘
    

    环境要求:

    centos 7.4   7.6  7.8(不要使用7.5)
    vmware   宿主机  kvm虚拟机
    内存4G,cpu开启虚拟化
    

    iP:10.0.0.11

    curl -o /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
    

    安装软件包

    yum install libvirt virt-install qemu-kvm -y
    

    下载镜像

    wget https://mirrors.tuna.tsinghua.edu.cn/centos-vault/7.0.1406/isos/x86_64/CentOS-7.0-1406-x86_64-Minimal.iso
    

    4.4.安装一台kvm虚拟机

    启动服务

    systemctl start libvirtd.service 
    systemctl enable libvirtd.service 
    

    创建

    virt-install --virt-type kvm --os-type=linux --os-variant rhel7 --name centos7 --memory 1024 --vcpus 1 --disk /opt/centos7.raw,format=raw,size=10 --cdrom /opt/CentOS-7.0-1406-x86_64-Minimal.iso --network network=default --graphics vnc,listen=0.0.0.0 --noautoconsole
    
    --virt-type kvm    #虚拟化的类型(qemu) 
    --os-type=linux    #系统类型 
    --os-variant rhel7 #系统版本 
    --name centos7     #虚拟机的名字 (必须唯一)
    --memory 1024      #虚拟机的内存
    --vcpus 1          #虚拟cpu的核数 
    --disk /opt/centos2.raw,format=raw,size=10(必须唯一) 
    --cdrom /opt/CentOS-7.0-1406-x86_64-Minimal.iso
    --network network=default   #使用默认NAT的网络 
    --graphics vnc,listen=0.0.0.0   #用vnc展示
    --noautoconsole #(可有可无)
    

    vnc 下载之后 连接 ip:5900

    然后界面版安装操作系统

    4.5.kvm虚拟机的virsh日常管理和配置

    列表list(--all) 
    开机start 
    关机shutdown(虚拟机有系统) 
    拔电源关机destroy 
    重启reboot(虚拟机有系统)
    

    备份xml配置文件

    #默认生成 /etc/libvirt/qemu/centos7.xml
    virsh dumpxml centos7 >/opt/kvm_centos7.xml
    
    raw:俗称裸格式,占用空间比较大,不支持快照功能,不方便传输 ,读写性能较好
    在 /opt下的 centos7.raw
    #备份这两个文件足以
    

    删除虚拟机

    virsh shutdown centos7 #关闭
    virsh undefine  centos7 #删除
    

    恢复虚拟机

    virsh define /opt/kvm_centos7.xml
    

    修改配置文件,禁止直接vim

    virsh edit centos7
    

    修改虚拟机的名字

    #必须关机从命名,
    virsh domrename  centos7  centos7.6
    

    查看进程

    ps -ef |grep qemu
    

    挂起suspend

    恢复resume

    挂起之后会导致虚拟机和宿主机时间不同会造成业务故障
    systemctl   restart     chronyd  
    #或者定时任务中同步
    #ntpdate ntp.aliyun.com  
    

    查询vnc端口号

    virsh  vncdisplay  虚拟机名字
    

    虚拟机开机启动

    前提:systemctl enable libvirtd;

    virsh autostart centos7
    

    取消开机启动

    virsh autostart --disable centos7
    

    console 控制台 登录

    centos7的kvm虚拟机:
    #备份内核配置
    cp /boot/grub2/grub.cfg  /tmp/
    #修改,重启
    grubby --update-kernel=ALL --args="console=ttyS0,115200n8"
    reboot
    

    登录

    virsh console  centos7
    

    其实可以在host 中加入虚拟机IP,别名 SSH登录也可

    4.6.kvm虚拟机虚拟磁盘管理和快照管理

    raw:  俗称裸格式,占用空间比较大,不支持快照功能,不方便传输 ,读写性能较好
    
    qcow2: qcow(copy on write)占用空间小,支持快照,性能比raw差一点,方便传输 
    
    virt-install --virt-type kvm --os-type=linux --os-variant rhel7 --name centos7 --memory 1024 --vcpus 1 --disk /opt/centos2.raw,format=raw,size=10 --cdrom /opt/CentOS-7-x86_64-DVD-1708.iso --network network=default --graphics vnc,listen=0.0.0.0 --noautoconsole
    
    virt-install --virt-type kvm --os-type=linux --os-variant rhel7 --name centos7 --memory 1024 --vcpus 1 --disk /opt/oldboy.qcow2,format=qcow2,size=10 --cdrom /data/CentOS-7.2-x86_64-DVD-1511.iso --network network=default --graphics vnc,listen=0.0.0.0 --noautoconsole
    

    4.6.1磁盘工具的常用命令

    #查看命令信息
    qemu-img convert  -f raw     -O qcow2
    qemu-img  
    #查看虚拟磁盘信息
    qemu-img info  /opt/centos7.raw 
    #创建一块qcow2格式的虚拟硬盘
    qemu-img create -f qcow2 /opt/centos76.qcow2 5G
    #调整磁盘磁盘容量
    qemu-img  resize  /opt/centos76.qcow2 +2G
    qemu-img  resize  /opt/centos76.qcow2 10G #只能增不能减 会丢数据
    #raw转qcow2 
    qemu-img convert  -f raw   -O qcow2   centos7.raw   centos7.qcow2
    #修改配置文件指定硬盘
    
    virsh edit centos7
    <disk type='file' device='disk'>
          <driver name='qemu' type='qcow2'/>
          <source file='/data/centos2.qcow2'/>
          <target dev='vda' bus='virtio'/>
          <address type='pci' domain='0x0000' bus='0x00' slot='0x06' function='0x0'/>
    </disk>
    #virsh start web01	启动 进系统测试
    

    4.6.2快照管理

    #创建快照
    virsh snapshot-create-as centos7 --name centos7_20201
    #查看快照
    virsh snapshot-list centos7
    #还原快照
    virsh snapshot-revert centos7 --snapshotname centos7_20201 
    #删除快照
    virsh snapshot-delete centos7 --snapshotname centos7_20201
    
    
    #raw不支持做快照,qcow2支持快照,并且快照就保存在qcow2的磁盘文件中
    

    4.7.kvm虚拟机克隆

    4.7.1. 完整克隆

    自动挡:

    virt-clone --auto-clone -o centos7 -n web02 (完整克隆) 
    

    手动挡:

    qemu-img convert -f qcow2 -O qcow2 -c centos7.qcow2 web02.qcow2
    # - -c除去快照 压缩
    virsh dumpxml centos7 >web02.xml
    vim web02.xml
    #修改虚拟机的名字
    #删除虚拟机uuid
    #删除mac地址mac add
    #修改磁盘路径disk
    virsh define web02.xml 
    virsh start web02
    

    4.7.2.链接克隆

    a:生成虚拟机磁盘文件

     qemu-img  create  -f qcow2  -b  /opt/web01.qcow2   /opt/web03.qcow2
    

    b:生成虚拟机的配置文件

    virsh dumpxml web01 >web03.xml
    vim web03.xml
    #修改虚拟机的名字
    <name>web03</name>
    #删除虚拟机uuid
    <uuid>8e505e25-5175-46ab-a9f6-feaa096daaa4</uuid>
    #删除mac地址
    <mac address='52:54:00:4e:5b:89'/>
    #修改磁盘路径
    <source file='/opt/web03.qcow2'/>
    

    c:导入虚拟机并进行启动测试

    virsh define web03.xml 
    virsh start web03
    

    全自动链接克隆脚本:

    [root@kvm01 scripts]# cat link_clone.sh 
    #!/bin/bash
    old_vm=$1
    new_vm=$2
    #a:生成虚拟机磁盘文件
    old_disk=`virsh dumpxml $old_vm|grep "<source file"|awk -F"'" '{print $2}'`
    disk_tmp=`dirname $old_disk`
    qemu-img create -f qcow2 -b $old_disk  ${disk_tmp}/${new_vm}.qcow2
    #b:生成虚拟机的配置文件
    virsh dumpxml $old_vm >/tmp/${new_vm}.xml
    #修改虚拟机的名字
    sed -ri "s#(<name>)(.*)(</name>)#1${new_vm}3#g" /tmp/${new_vm}.xml
    #删除虚拟机uuid
    sed -i '/<uuid>/d' /tmp/${new_vm}.xml
    #删除mac地址
    sed -i '/<mac address/d' /tmp/${new_vm}.xml
    #修改磁盘路径
    sed -ri "s#(<source file=')(.*)('/>)#1${disk_tmp}/${new_vm}.qcow23#g" /tmp/${new_vm}.xml
    #c:导入虚拟机并进行启动测试
    virsh define /tmp/${new_vm}.xml
    virsh start ${new_vm}
    

    4.8.kvm虚拟机的桥接网络

    默认的虚拟机网络是NAT模式,网段192.168.122.0/24

    4.8.1:创建桥接网卡

    宿主机eth0配置文件更改,才能创建桥接模式

    TYPE="Ethernet"
    BOOTPROTO="none"
    NAME="eth0"
    DEVICE="eth0"
    ONBOOT="yes"
    IPADDR="xxx.xxx.xxx.xxx"
    PREFIX="24"
    GATEWAY="xxx.xxx.xxx.xxx"
    DNS1="223.5.5.5"
    

    创建桥接网卡命令

     virsh iface-bridge eth0 br0
    

    取消桥接网卡命令

    virsh iface-unbridge br0
    

    4.8.2 新虚拟机使用桥接模式

    默认NAT模式

    virt-install --virt-type kvm --os-type=linux --os-variant rhel7 --name web04 --memory 1024 --vcpus 1 --disk /opt/web04.qcow2 --boot hd --network network=default --graphics vnc,listen=0.0.0.0 --noautoconsole
    

    桥接模式

    virt-install --virt-type kvm --os-type=linux --os-variant rhel7 --name web04 --memory 1024 --vcpus 1 --disk /data/web04.qcow2 --boot hd --network bridge=br0 --graphics vnc,listen=0.0.0.0 --noautoconsole
    

    4.8.3 将已有虚拟机网络修改为桥接模式

    a:关机状态下修改虚拟机配置文件:

    例如:virsh edit centos7

    <interface type='bridge'>
      <source bridge='br0'/>
    

    b:启动虚拟机,测试虚拟机网络

    virsh start centos7
    #如果上层没有开启dhcp,需要手动配置ip地址,IPADDR,NATMASK.GATEWAY,DNS1
    

    4.9. 热添加技术

    热添加硬盘、网卡、内存、cpu

    4.9.1 kvm热添加硬盘

    添加硬盘

    qemu-img create -f qcow2 /opt/centos76_01.qcow2 5G
    

    临时立即生效

    virsh attach-disk centos /opt/centos76_01.qcow2 vdb --subdriver qcow2
    #raw格式 不需要指定 --subdriver qcow2
    

    永久生效(需要重启)

    virsh attach-disk web01 /data/web01-add.qcow2 vdb --subdriver qcow2 --config
    #raw格式 不需要指定 --subdriver qcow2 
    

    临时剥离硬盘

    virsh detach-disk centos7 vdb
    

    永久剥离硬盘

    virsh detach-disk web01 vdb --config
    

    挂载硬盘

    #查看硬盘
    fdisk -l
    #格式化
    mkfs.xfs /dev/vdb
    #挂载
    mount /dev/vdb   /mnt 
    

    扩容:

    #在虚拟机里把扩容盘的挂载目录,卸载掉 
    umount /mnt
    #在宿主机上剥离硬盘
    virsh detach-disk web01 vdb 
    #在宿主机上调整容量
    qemu-img resize /opt/web01_01.qcow2  8G
    #在宿主机上再次附加硬盘
    virsh attach-disk web01 /data/web01_01.qcow2 vdb --subdriver qcow2 
    #在虚拟机里再次挂载扩容盘 在虚拟机里用xfs_growfs更新扩容盘超级块信息
    mount  /dev/vdb  /mnt 
    xfs_growfs  /dev/vdb
    

    4.9.2 kvm虚拟机在线热添加网卡

    #临时生效
    virsh attach-interface web04  --type bridge --source br0 --model virtio 
    
    #加配置文件
    virsh attach-interface web04  --type bridge --source br0 --model virtio  --config
    
    ip a  #查看mac
    #删除网卡
    virsh detach-interface web04 --type bridge --mac 52:54:00:35:d3:71
    #查看配置文件的mac 
    virsh detach-interface web04 --type bridge --mac 52:54:00:35:23:71   --config
    

    4.9.3 kvm虚拟机在线热添加内存

    virt-install --virt-type kvm --os-type=linux --os-variant rhel7 --name web04 --memory 512,maxmemory=2048 --vcpus 1 --disk /data/web04.qcow2 --boot hd --network bridge=br0 --graphics vnc,listen=0.0.0.0 --noautoconsole
    ---maxmemory #指定最大内存
    

    临时热减内存

    virsh  setmem web04 1024M  
    

    永久减内存

    virsh  setmem web04 1024M --config
    

    调整虚拟机内存最大值

    #关机
    virsh setmaxmem web04 4G   #默认永久
    #然后增加
    virsh  setmem web04 2G  
    virsh  setmem web04 2G --config
    

    4.9.4 kvm虚拟机在线热添加cpu

    virt-install --virt-type kvm --os-type=linux --os-variant rhel7 --name web04 --memory 512,maxmemory=2048 --vcpus 1,maxvcpus=10 --disk /data/web04.qcow2 --boot hd --network bridge=br0 --graphics vnc,listen=0.0.0.0 --noautoconsole 
    #maxvcpus最大盒数
    

    热添加cpu核数

     virsh setvcpus web04 4 
    

    永久添加cpu核数

    virsh setvcpus web04 4 --config
    

    调整虚拟机cpu的最大值

    virsh setvcpus web01  --maximum 4 --config
    

    4.10.virt-manager和kvm虚拟机热迁移(共享的网络文件系统)

    4.11.冷迁移kvm虚拟机:

    注意环境一致

    kvm01 
    #虚拟机关机
    #迁移配置文件,磁盘文件
    
    kvm02
    #导入
    virsh define vm_web01.xml
    #创建桥接网卡
    virsh iface-bridge eth0 br0
    #启动
    virsh start web01
    

    4.12.热迁移kvm虚拟机:

    配置文件,nfs共享,不停机迁移
    

    1.实现共享存储(nfs)kvm01和kvm02都执行

    yum  install nfs-utils rpcbind  -y
    
    vim /etc/exports
    /data  10.0.0.0/24(rw,async,no_root_squash,no_all_squash
    
    systemctl start rpcbind  nfs
    
    #kvm01和kvm02
    mount -t nfs 10.0.0.31:/data /opt
    

    登录改网卡文件

    TYPE="Ethernet"
    BOOTPROTO="none"
    NAME="eth0"
    DEVICE="eth0"
    ONBOOT="yes"
    IPADDR="xxx.xxx.xxx.xxx"
    PREFIX="24"
    GATEWAY="xxx.xxx.xxx.xxx"
    DNS1="223.5.5.5"
    

    2.在线热迁移

    #临时迁移
    virsh migrate --live --verbose centos7 qemu+ssh://10.0.0.11/system --unsafe
    #永久迁移
    virsh migrate --live --verbose centos7 qemu+ssh://10.0.0.100/system --unsafe --persistent --undefinesource
    

    加host 解析

    10.0.0.11    kvm01
    10.0.0.12   kvm02
    

    5.ESXI虚拟化系统

    5.1 安装ESXI

    一路回车,直到 按F11 出现

    按F2,选择网卡配置

    配置好了

    image-20200914181451400

    5.2连接

    5.2安装一台ESXI虚拟机

    方式一、通过导入OVA文件创建虚拟机

    方式二、使用镜像创建虚拟机

    上传ios镜像

    创建虚拟机

    配置服务器

    正常安装即可

    克隆虚拟机

    1.开启ssh服务

    ssh连接

    #进入虚拟机文件夹中
    df -h
    cd   ****
    mkdir web02
    cp  web01/web01.vmx   web02/web02.vmx
    vmfstools -i web01/web01.vmdk   web02/web02.vmdk
    #修改vmx文件
    将所有的web01改为web02
    

    5.7 将kvm虚拟机迁移到esxi上

    kvm宿主机:

    #将qcow2格式转换为 vmdk格式
    qemu-img convert -f qcow2 web01.qcow2 -O vmdk web01.vmdk
    #scp  发送到esxi上
    

    #可能不需要

    #后置被 转换为精简制备 在esxi
    vmkfstools  -i  web01.vmdk  web01.vmdk -d thin
    

    5.8 将ESXI虚拟机迁移到kvm上

    将虚拟机导出ova文件

    物理机转换为虚拟机  p2v
    虚拟机转换为虚拟机  v2v
    虚拟机转换为云主机  v2c
    云主机转换为云主机  c2c
    yum install  virt-v2v
    virt-v2v -i ova centos-dev-test01-v2v.ova -o local -os /opt/test  -of qcow2
    
    virsh define  /opt/test/centos7.xml
    
    #改为桥接模式
    virsh edit centos7
    把nat 该我br0
    listen='0.0.0.0' 
    #启动
    virsh  start centos7
    
    kvm宿主机 2000台 查看每一个宿主机有多少台虚拟机? 查看每一个宿主机还剩多少资源? 查看每一台宿主机,每一个虚拟机的ip地址?
    excel 资产管理  cmdb
    kvm管理平台,数据库工具
    信息:宿主机,总配置,剩余的总配置     虚拟机的信息,配置信息,ip地址,操作系统  
    带计费功能的kvm管理平台,openstack  	ceilometer计费   ecs   IAAS层 自动化管理kvm宿主机,云主机定制化操作
    服务器, 20核心  1T内存    96T
    资源浪费,linux环境特别乱,,kvm虚拟机
    

    6.部署一个openstack集群

    6.1 DevStack

    DevStack 在相当长一段时间内,DevStack仍将是众多开发者的首选安装工具。该方式主要是通过配置一个安装脚本,执行Shell命令来安装OpenStack的开发环境,支持CentOS、Debian等系列系统
    

    6.2 RDO

    RDO RDO是由Red Hat红帽开源的一个自动化部署OpenStack的工具,支持单节点(all-in-one)和多节点(multi-node)部署。但RDO只支持CentOS系列操作系统。需要注意的是,该项目并不属于OpenStack官方社区项目。
    

    6.3Kolla

    Kolla是具有广阔应用前景和市场的一个自动化部署工具。相比于其他部署工具,Kolla完全革新地使用了Docker容器技术,将每一个OpenStack服务运行在不同的Docker容器中。
    

    6.4packstack

    上古工具,最为简单
    

    7.使用openstack

    7.1开通帐号

    1.创建项目 ---限制资源

    2.创建用户 --分配权限

    7.2增加计算资源

    添加node节点:

    1.修改ip地址 
    2.hostnamectl set-hostname compute1 
    3.重新登录让新主机名生效 
    4.上传openstack_rpm.tar.gz到/root下, 
    5.tar xf openstack_rpm.tar.gz -C /opt/ 
    6.mount  /dev/cdrom  /mnt
    7.上传脚本openstack_compute_install.sh
    8.sh openstack_compute_install.sh
    
    openstack  controller主控制节点,node节点, kvm宿主机
    node节点, kvm宿主机
    node节点, kvm宿主机
    node节点, kvm宿主机  
    
    #!/bin/bash
    
    #ip地址
    IP=`ifconfig eth0|awk -F "[ ]+"  'NR==2{print $3}'`
    
    #增加控制节点的host解析
    echo '10.0.0.11 controller' >>/etc/hosts
    
    #挂载光盘
    mount /dev/cdrom /mnt &>/dev/null
    if [ $? -ne 0 ];then
       umount /mnt &>/dev/null
       mount /dev/cdrom /mnt &>/dev/null
       if [ $? -ne 0 ];then
          echo "mount: no medium found on /dev/sr0"
          exit 7
       fi
    fi
    k
    #yum源配置
    mkdir -p /etc/yum.repos.d/test
    mv /etc/yum.repos.d/*.repo /etc/yum.repos.d/test
    echo '[openstack]
    name=openstack
    baseurl=file:///opt/repo
    gpgcheck=0
    
    [local]
    name=local
    baseurl=file:///mnt
    gpgcheck=0' >/etc/yum.repos.d/openstack.repo
    
    #时间同步配置
    sed -i '/^server/d' /etc/chrony.conf
    sed -i '3i server 10.0.0.11 iburst' /etc/chrony.conf 
    systemctl restart chronyd
    
    #安装openstack客户端
    yum install python-openstackclient.noarch  -y
    
    #nova-compute
    yum install openstack-nova-compute -y
    yum install openstack-utils.noarch -y
    cp /etc/nova/nova.conf{,.bak}
    grep -Ev '^$|#' /etc/nova/nova.conf.bak >/etc/nova/nova.conf
    openstack-config --set /etc/nova/nova.conf  DEFAULT enabled_apis  osapi_compute,metadata
    openstack-config --set /etc/nova/nova.conf  DEFAULT rpc_backend  rabbit
    openstack-config --set /etc/nova/nova.conf  DEFAULT auth_strategy  keystone
    openstack-config --set /etc/nova/nova.conf  DEFAULT my_ip  $IP
    openstack-config --set /etc/nova/nova.conf  DEFAULT use_neutron  True
    openstack-config --set /etc/nova/nova.conf  DEFAULT firewall_driver  nova.virt.firewall.NoopFirewallDriver
    openstack-config --set /etc/nova/nova.conf  glance api_servers  http://controller:9292
    openstack-config --set /etc/nova/nova.conf  keystone_authtoken  auth_uri  http://controller:5000
    openstack-config --set /etc/nova/nova.conf  keystone_authtoken  auth_url  http://controller:35357
    openstack-config --set /etc/nova/nova.conf  keystone_authtoken  memcached_servers  controller:11211
    openstack-config --set /etc/nova/nova.conf  keystone_authtoken  auth_type  password
    openstack-config --set /etc/nova/nova.conf  keystone_authtoken  project_domain_name  default
    openstack-config --set /etc/nova/nova.conf  keystone_authtoken  user_domain_name  default
    openstack-config --set /etc/nova/nova.conf  keystone_authtoken  project_name  service
    openstack-config --set /etc/nova/nova.conf  keystone_authtoken  username  nova
    openstack-config --set /etc/nova/nova.conf  keystone_authtoken  password  NOVA_PASS
    openstack-config --set /etc/nova/nova.conf  oslo_concurrency lock_path  /var/lib/nova/tmp
    openstack-config --set /etc/nova/nova.conf  oslo_messaging_rabbit   rabbit_host  controller
    openstack-config --set /etc/nova/nova.conf  oslo_messaging_rabbit   rabbit_userid  openstack
    openstack-config --set /etc/nova/nova.conf  oslo_messaging_rabbit   rabbit_password  RABBIT_PASS
    openstack-config --set /etc/nova/nova.conf  libvirt  virt_type qemu
    openstack-config --set /etc/nova/nova.conf  libvirt  cpu_mode none
    openstack-config --set /etc/nova/nova.conf  vnc enabled  True
    openstack-config --set /etc/nova/nova.conf  vnc vncserver_listen  0.0.0.0
    openstack-config --set /etc/nova/nova.conf  vnc vncserver_proxyclient_address  '$my_ip'
    openstack-config --set /etc/nova/nova.conf  vnc novncproxy_base_url  http://controller:6080/vnc_auto.html
    openstack-config --set /etc/nova/nova.conf  neutron url  http://controller:9696
    openstack-config --set /etc/nova/nova.conf  neutron auth_url  http://controller:35357
    openstack-config --set /etc/nova/nova.conf  neutron auth_type  password
    openstack-config --set /etc/nova/nova.conf  neutron project_domain_name  default
    openstack-config --set /etc/nova/nova.conf  neutron user_domain_name  default
    openstack-config --set /etc/nova/nova.conf  neutron region_name  RegionOne
    openstack-config --set /etc/nova/nova.conf  neutron project_name  service
    openstack-config --set /etc/nova/nova.conf  neutron username  neutron
    openstack-config --set /etc/nova/nova.conf  neutron password  NEUTRON_PASS
    
    #5:安装neutron-linuxbridge-agent
    yum install openstack-neutron-linuxbridge ebtables ipset -y
    cp /etc/neutron/neutron.conf{,.bak}
    grep -Ev '^$|#' /etc/neutron/neutron.conf.bak >/etc/neutron/neutron.conf
    openstack-config --set /etc/neutron/neutron.conf  DEFAULT rpc_backend  rabbit
    openstack-config --set /etc/neutron/neutron.conf  DEFAULT auth_strategy  keystone
    openstack-config --set /etc/neutron/neutron.conf  keystone_authtoken auth_uri  http://controller:5000
    openstack-config --set /etc/neutron/neutron.conf  keystone_authtoken auth_url  http://controller:35357
    openstack-config --set /etc/neutron/neutron.conf  keystone_authtoken memcached_servers  controller:11211
    openstack-config --set /etc/neutron/neutron.conf  keystone_authtoken auth_type  password
    openstack-config --set /etc/neutron/neutron.conf  keystone_authtoken project_domain_name  default
    openstack-config --set /etc/neutron/neutron.conf  keystone_authtoken user_domain_name  default
    openstack-config --set /etc/neutron/neutron.conf  keystone_authtoken project_name  service
    openstack-config --set /etc/neutron/neutron.conf  keystone_authtoken username  neutron
    openstack-config --set /etc/neutron/neutron.conf  keystone_authtoken password  NEUTRON_PASS
    openstack-config --set /etc/neutron/neutron.conf  oslo_concurrency lock_path  /var/lib/neutron/tmp
    openstack-config --set /etc/neutron/neutron.conf  oslo_messaging_rabbit rabbit_host  controller
    openstack-config --set /etc/neutron/neutron.conf  oslo_messaging_rabbit rabbit_userid  openstack
    openstack-config --set /etc/neutron/neutron.conf  oslo_messaging_rabbit rabbit_password  RABBIT_PASS
    
    cp /etc/neutron/plugins/ml2/linuxbridge_agent.ini{,.bak}
    grep '^[a-Z[]' /etc/neutron/plugins/ml2/linuxbridge_agent.ini.bak >/etc/neutron/plugins/ml2/linuxbridge_agent.ini
    openstack-config --set /etc/neutron/plugins/ml2/linuxbridge_agent.ini  linux_bridge physical_interface_mappings  provider:eth0
    openstack-config --set /etc/neutron/plugins/ml2/linuxbridge_agent.ini  securitygroup enable_security_group  True
    openstack-config --set /etc/neutron/plugins/ml2/linuxbridge_agent.ini  securitygroup firewall_driver  neutron.agent.linux.iptables_firewall.IptablesFirewallDriver
    openstack-config --set /etc/neutron/plugins/ml2/linuxbridge_agent.ini  vxlan enable_vxlan  False
    
    #启动服务
    systemctl start  libvirtd openstack-nova-compute neutron-linuxbridge-agent
    systemctl enable  libvirtd openstack-nova-compute neutron-linuxbridge-agent
    

    7.3手动管理虚拟机

    yum  install  libvirt -y 
    

    7.4上传镜像

  • 相关阅读:
    perl文本输出对齐
    putty配色方案
    java线程 同步与异步 线程池
    android为什么不允许新开启一个线程来更新UI,而是用handler来更新界面
    真正能获得基站LBS定位的android程序包括GSM、CDMA
    Android之TelephonyManager&GsmCellLocation类的方法详解
    网络编程之同步,阻塞,异步,非阻塞
    Android私有文件资源文件的存取
    [转]android 获取手机GSM/CDMA信号信息
    json格式转换
  • 原文地址:https://www.cnblogs.com/zdqc/p/13705552.html
Copyright © 2020-2023  润新知