快速部署openstack,並且安裝window系統

系統環境 VMware workstation

系統 CentOS-7-x86_64-DVD-1810

以下需注意:本文由多篇博客組成,作者爲了防止忘記而記錄,途中有些有誤地方,比如10.10.10.0/24網段的,應該改成10.1.1.0/24網段,爲了節省時間,部分圖取決於https://www.linuxprobe.com/chapter-22.html

安裝前需要修改 /etc/hosts文件,添加 127.0.0.1 op.sealin.top(op.sealin.top爲當前機器名)

# yum install -y http://rdo.fedorapeople.org/rdo-release.rpm

# yum install -y openstack-packstack

# packstack --allinone    //在執行此處報錯,一個是關於NetworkManager,關閉即可,但執行到control.pp報錯,後來把demo模塊關閉即可,命令如下:

# packstack --allinone --provision-demo=n

Welcome to Installer setup utility

Installing:
Clean Up                                             [ DONE ]
Setting up ssh keys                                  [ DONE ]
Discovering hosts' details                           [ DONE ]
Adding pre install manifest entries                  [ DONE ]
Preparing servers                                    [ DONE ]
Adding AMQP manifest entries                         [ DONE ]
Adding MySQL manifest entries                        [ DONE ]
Adding Keystone manifest entries                     [ DONE ]
Adding Glance Keystone manifest entries              [ DONE ]
Adding Glance manifest entries                       [ DONE ]
Adding Cinder Keystone manifest entries              [ DONE ]
Adding Cinder manifest entries                       [ DONE ]
Checking if the Cinder server has a cinder-volumes vg[ DONE ]
Adding Nova API manifest entries                     [ DONE ]
Adding Nova Keystone manifest entries                [ DONE ]
Adding Nova Cert manifest entries                    [ DONE ]
Adding Nova Conductor manifest entries               [ DONE ]
Creating ssh keys for Nova migration                 [ DONE ]
Gathering ssh host keys for Nova migration           [ DONE ]
Adding Nova Compute manifest entries                 [ DONE ]
Adding Nova Scheduler manifest entries               [ DONE ]
Adding Nova VNC Proxy manifest entries               [ DONE ]
Adding Openstack Network-related Nova manifest entries[ DONE ]
Adding Nova Common manifest entries                  [ DONE ]
Adding Neutron API manifest entries                  [ DONE ]
Adding Neutron Keystone manifest entries             [ DONE ]
Adding Neutron L3 manifest entries                   [ DONE ]
Adding Neutron L2 Agent manifest entries             [ DONE ]
Adding Neutron DHCP Agent manifest entries           [ DONE ]
Adding Neutron LBaaS Agent manifest entries          [ DONE ]
Adding Neutron Metering Agent manifest entries       [ DONE ]
Adding Neutron Metadata Agent manifest entries       [ DONE ]
Checking if NetworkManager is enabled and running    [ DONE ]
Adding OpenStack Client manifest entries             [ DONE ]
Adding Horizon manifest entries                      [ DONE ]
Adding Swift Keystone manifest entries               [ DONE ]
Adding Swift builder manifest entries                [ DONE ]
Adding Swift proxy manifest entries                  [ DONE ]
Adding Swift storage manifest entries                [ DONE ]
Adding Swift common manifest entries                 [ DONE ]
Adding Provisioning Demo manifest entries            [ DONE ]
Adding MongoDB manifest entries                      [ DONE ]
Adding Ceilometer manifest entries                   [ DONE ]
Adding Ceilometer Keystone manifest entries          [ DONE ]
Adding Nagios server manifest entries                [ DONE ]
Adding Nagios host manifest entries                  [ DONE ]
Adding post install manifest entries                 [ DONE ]
Installing Dependencies                              [ DONE ]
Copying Puppet modules and manifests                 [ DONE ]
Applying 192.168.1.105_prescript.pp
192.168.1.105_prescript.pp:                          [ DONE ]        
Applying 192.168.1.105_amqp.pp
Applying 192.168.1.105_mysql.pp
192.168.1.105_amqp.pp:                               [ DONE ]    
192.168.1.105_mysql.pp:                              [ DONE ]    
Applying 192.168.1.105_keystone.pp
Applying 192.168.1.105_glance.pp
Applying 192.168.1.105_cinder.pp
192.168.1.105_keystone.pp:                           [ DONE ]        
192.168.1.105_glance.pp:                             [ DONE ]        
192.168.1.105_cinder.pp:                             [ DONE ]        
Applying 192.168.1.105_api_nova.pp
192.168.1.105_api_nova.pp:                           [ DONE ]        
Applying 192.168.1.105_nova.pp
192.168.1.105_nova.pp:                               [ DONE ]    
Applying 192.168.1.105_neutron.pp
192.168.1.105_neutron.pp:                            [ DONE ]      
Applying 192.168.1.105_neutron_fwaas.pp
Applying 192.168.1.105_osclient.pp
Applying 192.168.1.105_horizon.pp
192.168.1.105_neutron_fwaas.pp:                      [ DONE ]            
192.168.1.105_osclient.pp:                           [ DONE ]            
192.168.1.105_horizon.pp:                            [ DONE ]            
Applying 192.168.1.105_ring_swift.pp
192.168.1.105_ring_swift.pp:                         [ DONE ]          
Applying 192.168.1.105_swift.pp
Applying 192.168.1.105_provision_demo.pp
192.168.1.105_swift.pp:                              [ DONE ]              
192.168.1.105_provision_demo.pp:                     [ DONE ]              
Applying 192.168.1.105_mongodb.pp
192.168.1.105_mongodb.pp:                            [ DONE ]      
Applying 192.168.1.105_ceilometer.pp
Applying 192.168.1.105_nagios.pp
Applying 192.168.1.105_nagios_nrpe.pp
192.168.1.105_ceilometer.pp:                         [ DONE ]          
192.168.1.105_nagios.pp:                             [ DONE ]          
192.168.1.105_nagios_nrpe.pp:                        [ DONE ]          
Applying 192.168.1.105_postscript.pp
192.168.1.105_postscript.pp:                         [ DONE ]          
Applying Puppet manifests                            [ DONE ]
Finalizing                                           [ DONE ]

**** Installation completed successfully******                
Additional information:
irectory.
。。。。。

創建雲平臺的網卡配置文件:
 [root@op ~]#  
DEVICE=br-ex 
IPADDR=192.168.3.91 
NETMASK=255.255.255.0 
BOOTPROTO=static 
DNS1=192.168.3.1 
GATEWAY=192.168.3.1 
BROADCAST=192.168.3.254 
NM_CONTROLLED=no 
DEFROUTE=yes IPV4_FAILURE_FATAL=yes 
IPV6INIT=no 
ONBOOT=yes 
DEVICETYPE=ovs 
TYPE="OVSIntPort" 
OVS_BRIDGE=br-ex 
 修改網卡參數信息爲:
 [root@openstack ~]#   
DEVICE="ens33" 
ONBOOT=yes 
TYPE=OVSPort 
DEVICETYPE=ovs 
OVS_BRIDGE=br-ex 
NM_CONTROLLED=no 
IPV6INIT=no 
將網卡設備添加到OVS網絡中:
[root@openstack ~]#   
[root@openstack ~]#  
55501ff1-856c-46f1-8a00-5c61e48bb64d     
Bridge br-ex       
  Port br-ex          
    Interface br-ex           
      type: internal        

   
 Bridge br-int    
     fail_mode: secure     
   Port br-int       
      Interface br-int           
      type: internal   
   Port patch-tun           
       Interface patch-tun         
       type: patch           
      options: {peer=patch-int}  
 Bridge br-tun    
    Port patch-int       
      Interface patch-int          
       type: patch        
         options: {peer=patch-tun}   
     Port br-tun    
         Interface br-tun     
            type: internal
     ovs_version: "2.1.3" 
 重啓系統讓網絡設備同步:
 [root@op ~]# reboot

//登陸平臺http://192.168.3.91/dashboard

查看密碼

# cat /root/keystonerc_admin
export OS_USERNAME=admin
export OS_TENANT_NAME=admin
export OS_PASSWORD=3b63bde2721349d0
export OS_AUTH_URL=http://192.168.1.105:5000/v2.0/


Openstack創建網絡:

第22章 使用openstack部署雲計算服務環境。第22章 使用openstack部署雲計算服務環境。

點擊創建子網:

第22章 使用openstack部署雲計算服務環境。第22章 使用openstack部署雲計算服務環境。

子網詳情:

創建私有網絡

第22章 使用openstack部署雲計算服務環境。第22章 使用openstack部署雲計算服務環境。第22章 使用openstack部署雲計算服務環境。第22章 使用openstack部署雲計算服務環境。第22章 使用openstack部署雲計算服務環境。第22章 使用openstack部署雲計算服務環境。

增加路由信息

第22章 使用openstack部署雲計算服務環境。第22章 使用openstack部署雲計算服務環境。

填寫路由名稱:

第22章 使用openstack部署雲計算服務環境。第22章 使用openstack部署雲計算服務環境。

設置路由的網關信息:

第22章 使用openstack部署雲計算服務環境。第22章 使用openstack部署雲計算服務環境。

設置網關:

第22章 使用openstack部署雲計算服務環境。第22章 使用openstack部署雲計算服務環境。

在網絡拓撲中添加接口:

第22章 使用openstack部署雲計算服務環境。第22章 使用openstack部署雲計算服務環境。

添加接口信息:

第22章 使用openstack部署雲計算服務環境。第22章 使用openstack部署雲計算服務環境。

openstack安裝windown系統

原理,通過kvm安裝好,然後上傳到openstack,網上大多數都是以這種方式安裝,但是要先下載virtio的驅動,網上搜一下就有了

virt-install --connect qemu:///system --name win7 --ram 4080 --vcpus 2 --network=default,model=virtio --disk path=/tmp/win7.qcow2,format=qcow2,device=disk,bus=virtio --cdrom /tmp/win7.iso --disk path=/tmp/virtio-win-0.1.160.iso,device=cdrom --graphics spice,listen=0.0.0.0 --boot cdrom

在此遇到兩個問題,一個是無法讀取cdrom,原因是win7.iso和win-0.1.160.iso的設備名稱顛倒,把win7.iso設爲hda,win-0.1.160.iso設爲hdb即可。另一個是卡在start windows ,起初據網上說把 --video 值改爲cirrus,但毫無作用,後來才發現是仿真機的問題,由於我的環境是vmware所以仿真機要改

virsh destroy win7   停止win7

vi /etc/libvirt/qemu/win7.xml

dev選項互換即可,途中已經互換

virsh define /etc/libvirt/qemu/win7.xml

virsh destroy win7 && virsh start win7

進入系統正常驅動viostor對應的驅動,一開始我還以爲是vioscsi,還以爲驅動不行,之後就可以正常安裝了,安裝完還要再裝其他驅動,比如網卡,顯卡等

這時候就大功告成了,我們成功的製作了一個qcow2的鏡像。接下來部署到glance上去

glance image-create --name "windows7" --file home/house/windows7.qcow2 --disk-format qcow2 --container-format bare --visibility public --progress

錯誤:you must provide a username via either --os-username or env[OS_USERNAME]

由於我之前改了密碼

解決辦法 在root用戶下執行如下命令

source  keystonerc_admin

再執行上傳命令

完成後就可以在openstack平臺看到該鏡像,然後就可以開始創建虛擬機了


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章