Centos7安裝部署openstack--啟動實例


一、命令行啟動一個實例

  1、創建網絡

neutron net-create --shared --provider:physical_network provider \         公共的網絡,所有項目都能用,provider和配置文件/etc/neutron/plugins/ml2/ml2_conf.ini一致
--provider:network_type flat oldboy oldboy網絡名稱

  創建子網,划分網段

 neutron subnet-create --name oldgirl \
  --allocation-pool start=10.0.0.101,end=10.0.0.250 \
  --dns-nameserver 223.5.5.5 --gateway 10.0.0.2 \
  oldboy 10.0.0.0/24
  

  2、創建m1.nano規格的主機

openstack flavor create --id 0 --vcpus 1 --ram 64 --disk 1 m1.nano

  3、生成一個鍵值對

ssh-keygen -q -N "" -f ~/.ssh/id_rsa                                        生成密鑰對
openstack keypair create --public-key ~/.ssh/id_rsa.pub mykey               上傳至openstack上
openstack keypair list                                                      查看所有密鑰對

  4、添加規則到 default 安全組

openstack security group rule create --proto icmp default
openstack security group rule create --proto tcp --dst-port 22 default

  5、啟動實例

neutron net-list                                                             查看net-id號
openstack server create --flavor m1.nano --image cirros \
--nic net-id=2b3394db-a083-424e-86fa-c373f247a60f --security-group default \
--key-name mykey ceshishili

 二、web頁面啟動一個實例

  1、計算,在實例頁面選擇創建實例,填寫實例名稱,選擇可用域。

   2、選擇鏡像

   3、選擇規格

   4、選擇網絡,選擇了網絡,就不用選擇網絡接口了。

   5、選擇默認安全組

   6、選擇密鑰對

     7、點擊創建實例,就可以了。

  8、實例目錄

   9、解決控制台找不到controller地址問題

    在win主機中的hosts文件中添加解析

   10、解決磁盤進不去問題

   修改計算節點配置文件

vim /etc/nova/nova.conf                                       修改配置文件,添加如下配置
[libvirt]
virt_type = qemu
cpu_mode = none
systemctl restart openstack-nova-compute.service 重啟服務,並重啟實例

   11、解決主機compute沒有映射到任何單元問題。

    錯誤:主機compute沒有映射到任何單元
    compute節點日志: Instance xxx has allocations against this compute host but is not found in the database.
    解決:添加計算節點到cell數據庫:

su -s /bin/sh -c "nova-manage cell_v2 discover_hosts --verbose" nova

  12、解決創建虛擬機報錯問題

    openstack queens 創建虛擬機的時候 查看狀態為error,發現計算的節點和控制節點的nove日志都報錯,報錯如下:
    UnicodeDecodeError: ‘ascii’ codec can’t decode byte 0xe6 in position 0: ordinal not in range(128)

解決辦法:
在python 文件/usr/lib/python2.7/site-packages/tenacity/init.py增加字符處理代碼:
import sys
default_encoding = 'utf-8'
if sys.getdefaultencoding() != default_encoding:
reload(sys)
sys.setdefaultencoding(default_encoding)
再次創建虛擬機成功

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM