openstack-allinone-使用方法

安裝OpenStack客戶端並創建一個雲主機
查看創建好的openstack項目中的信息和雲主機網絡連通性
openstack web界面使用方法

openstack-allinone-使用方法

安裝OpenStack客戶端並創建一個雲主機
安裝OpenStack client端,方便後期使用命令行操作openstack

[root@test63 ~]# pip install python-openstackclient 
報錯:已經安裝PyYAML 3.10,但是我們需要PyYAML 
Found existing installation: PyYAML 3.10 
Cannot uninstall 'PyYAML'. It is a distutils installed project and thus we cannot accurately determine which files belong to it which would lead to only a partial uninstall. 
#注:找到現有安裝:PyYAML 3.10 
無法卸載'PyYAML'。 這是一個distutils安裝的項目,因此我們無法準確確定哪些文件屬於它,這將導致僅部分卸載。 
[root@test63 ~]# pip install PyYAML --ignore-installed PyYAML #忽略安裝的PyYAML,進行安裝 
[root@test63 ~]# pip install python-openstackclient #再次安裝 
報錯: 
Found existing installation: ipaddress 1.0.16 
Cannot uninstall 'ipaddress'. It is a distutils installed project and thus we cannot accurately determine which files belong to it which would lead to only a partial uninstall. 
[root@test63 ~]# pip install ipaddress --ignore-installed ipaddress 
[root@test63 ~]# pip install python-openstackclient 
[root@test63 ~]# pip install python-neutronclient #安裝openstack網絡相關的命令 
報錯,提示已經安裝pyinotify 
[root@test63 ~]# pip install pyinotify --ignore-installed pyinotify 
[root@test63 ~]# pip install python-neutronclient #最終安裝成功。

使用init-runonce腳本創建一個openstack雲項目
在這裏插入圖片描述
1、修改init-runonce腳本,指定浮動IP地址範圍
init-runonce是在openstack中快速創建一個雲項目例子的腳本。浮動IP就是雲主機的公網IP。

[root@test63 ~]# vim /usr/share/kolla-ansible/init-runonce #網絡需要根據實際情況修改 
改: 
12 EXT_NET_CIDR='10.0.2.0/24' 
13 EXT_NET_RANGE='start=10.0.2.150,end=10.0.2.199' 
14 EXT_NET_GATEWAY='10.0.2.1' 
爲: 
EXT_NET_CIDR='192.168.1.0/24' 
EXT_NET_RANGE='start=192.168.1.230,end=192.168.1.240' 
EXT_NET_GATEWAY='192.168.1.1' 

注:192.168.1.0的網絡,就是我上面ens38接入的局域網中的地址,這個網絡是通過局域網絡中的路由器訪問互聯網。配置好這個,裝完雲主機實例就可以直接ping通。
2、使用init-runonce腳本創建一個openstack雲項目

[root@test63 ~]# source /etc/kolla/admin-openrc.sh #必須先加載這個文件,把文件中的環境變量加入系統中,纔有權限執行下面的命令 
[root@test63 ~]# cd /usr/share/kolla-ansible 
[root@test63 kolla-ansible]# ./init-runonce #最後彈出以下

在這裏插入圖片描述
3、在openstack中創建一個虛擬機

[root@test63 kolla-ansible]# openstack server create --image cirros --flavor m1.tiny --key-name mykey --nic net-id=a60a94b3-d1da-44c3-9c35-7505e1411378 demo1 #注: -nic net-id=xxxxxx ,這個ID每個人是不一樣的,你需要寫成你自己的。

4、給雲主機分配浮動IP地址
登錄鏈接:http://192.168.1.63/auth/login/?next=/ ,給虛擬機分配一個floating ip(浮動IP),這樣就可以直接ping 通 floating ip的地址。

在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
測試:
ping 192.168.1.32 #發現可以ping通

查看創建好的openstack項目中的信息和雲主機網絡連通性

查看路由信息

[root@test63 ~]# source /etc/kolla/admin-openrc.sh #要讀一下這個環境變量配置文件。丌然後,後期在執行命令時,會報如下錯: 
Missing value auth-url required for auth plugin password 
[root@test63 ~]# openstack router list 
[root@test63 ~]# openstack router show demo-router 

查看網絡列表:

[root@test63 ~]# openstack network list 
[root@test63 ~]# openstack subnet list 
[root@test63 ~]# openstack server show demo1 #查看雲主機實例的信息 
查看已有的網絡的NameSpace: 
[root@test63 ~]# ip netns 
qrouter-0ff30de6-6ee8-4d33-a695-b5e3935b4b78 
qdhcp-a60a94b3-d1da-44c3-9c35-7505e1411378 
通過“Floating IP”訪問虛擬機(用戶名"cirros",密碼"cubswin:)"): 
[root@test63 ~]# ssh [email protected] #發現需要輸入密碼,是因爲我們在創建雲主機時,綁定了私鑰,就可以實現無密碼。 只限test63這臺機器。 因爲私鑰是test63的。 

現在開始測試:
登錄上後,測試網絡:
$ ping 192.168.1.1
$ ping 8.8.8.8
$ ping baidu.com

openstack web界面使用方法

使用web界面來管理雲主機。下面將完成以下操作:
1、 設置顯示語言
2、 修改addmin密碼
3、 創建一個新項目
4、 創建主機模版
5、 創建新用戶
6、 創建外網、內網及路由器
7、 創建安全策略組
8、 創建密鑰對
9、 分配浮動IP地址
10、 創建實例

準備雲主機的基礎環境

1、設置顯示語言:漢語
在這裏插入圖片描述
2、修改admin命令
查看當前密碼:

[root@test63 ~]# cat /etc/kolla/admin-openrc.sh 
export OS_PROJECT_DOMAIN_NAME=Default 
export OS_USER_DOMAIN_NAME=Default 
export OS_PROJECT_NAME=admin 
export OS_TENANT_NAME=admin 
export OS_USERNAME=admin 
export OS_PASSWORD=123456

在這裏插入圖片描述
3、創建一個openstack項目
實戰1:項目描述,test-web網站運維部,需要6臺雲主機,6個公網IP,80G硬盤。 另一個遊戲部門的需要數十臺雲主機,運行遊戲。 你需要在openstack私有云,給兩個部門分出相應的資源。
在openstack中創建一個子項目test-web,再創建一個adm1管理帳號,後期用於管理test-web項目。創建出項目和管理員帳號,後期把adm1帳號給網站運維部,讓他自己維護就可以了。
注:一個openstack項目中,指定你可以佔有openstack私有云中資源。
在這裏插入圖片描述
配置項目配額
在這裏插入圖片描述
在這裏插入圖片描述
4、創建一個配置比較低的雲主機類型:m2.tiny
tiny [ˈtaɪni] 極小的,微小的
在這裏插入圖片描述
在這裏插入圖片描述
注:模版中的根磁盤必須小於存儲組件所在服務的剩餘空間。內存和cpu也必須小於物理機上真實可用的資源。
在這裏插入圖片描述
說明:從這裏你可以改變當前的主機類型模版的大小。注意:這不會影響分配給使用該模版的任何現有實Ephemeral disk :臨時磁盤 數據盤 Ephemeral( əˈfem(ə)rəl) 創建臨時磁盤,ephemeral disk指的是除了系統盤和swap disk之外的空間,就是數據盤
5、爲項目test-web創建一個普通帳號用戶:
在這裏插入圖片描述
在這裏插入圖片描述
爲項目test-web創建一個管理員帳號用戶:
在這裏插入圖片描述
在這裏插入圖片描述
6、實戰:以adm1登錄,創建images鏡像;創建內網int,創建路由器router1, 最終在openstack上創建好實例www.test.cn雲主機。
退出admin ,以adm1登錄:
在這裏插入圖片描述
在這裏插入圖片描述
查看test-web的概況:
在這裏插入圖片描述
創建一個www.test.cn和web.img鏡像
cp cirros-0.3.4-x86_64-disk.img web1.img
注:默認:cirros鏡像格式是 qcow2格式。
可以本地上傳:C:\Users\shen\Desktop\test\soft\web1.img
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
#Minimum Disk : 最小磁盤。指使用這個鏡像,最少需要多大空間。
在這裏插入圖片描述
互動:我們在做什麼?
注:想在openstack啓一臺雲主機實例,你需要一些基礎設施:主機的硬件模版,鏡像,網絡,安全組等,最後纔是創建一臺雲主機。
7、創建兩個網絡:一個內網,一個外網。
注:外網在之前已經使用腳本創建好:public1 了。這裏我就不用創建外網了。 另外,在web界面創建的外網是上不了公網的。必須使用腳本創建纔可以。
切換到test-web 這一列,配置網絡:
添加一個內網網段:
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
IP地址池:以逗號分隔
在這裏插入圖片描述
在這裏插入圖片描述
查看拓撲圖時,在chrome上查看,其他瀏覽器上查看時,有時看不到
在這裏插入圖片描述
8、創建一個路由器來連接兩個網絡
在這裏插入圖片描述
在這裏插入圖片描述
注:這個已經設置路由器一個接口連接到外部網絡。
在這裏插入圖片描述
設置路由器router1的另一個接口,連接內網:
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
內網接口一開始是關閉,刷新一下頁面,就運行中了,現在兩個接口都運行了
在這裏插入圖片描述
查看網絡拓撲圖:
在這裏插入圖片描述
9、創建安全策略組web-ssh-ping,放行tcp,udp,icmp協議
在這裏插入圖片描述
web-ssh-ping
放行web-ssh-ping這些服務
在這裏插入圖片描述
在這裏插入圖片描述
放行80端口
在這裏插入圖片描述
放行22-443 tcp協議端口
在這裏插入圖片描述
放行icmp協議,才能ping
在這裏插入圖片描述
出口方向放行icmp協議:
在這裏插入圖片描述
在這裏插入圖片描述
注:對於出口方向,直接使用默認規則就可以了。放行所有數據包
10、創建web-key1
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
11、分配浮勱IP地址 ,指得是公網IP地址。例如:
在這裏插入圖片描述
在這裏插入圖片描述
先分出1個IP
在這裏插入圖片描述
12、創建實例, 雲主機
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
注: 還使用cirros鏡像。
在這裏插入圖片描述
在這裏插入圖片描述
在這裏插入圖片描述
這個默認就可以 ,直接下一步。
在這裏插入圖片描述
密鑰對,默認就可以了,使用web-key1
在這裏插入圖片描述
剩下的直接默認就可以了。
在這裏插入圖片描述
在這裏插入圖片描述
報錯:
在這裏插入圖片描述
解決:
原因1:一般是因爲內存丌夠用,這時free -m 查看一下物理機上實際可以用的內存,是否小於1G,如果小於1G肯定丌行。因爲創建實例web1,需要使用1G內存。
原因2: 創建實例所使用的主機模版中的根磁盤必須小於存儲組件所在服務的剩餘空間。內存和cpu也必須小於物理機上真實可用的資源。
在這裏插入圖片描述
在這裏插入圖片描述
分配一個外網IP(浮動IP)地址
在這裏插入圖片描述
在這裏插入圖片描述
等1分鐘,測試連通性:在物理機上,可以ping通
在這裏插入圖片描述
打開一個實例:
在這裏插入圖片描述
在這裏插入圖片描述
注:在windows下可以chrome瀏覽器實現正常訪問
登錄用戶: cirros 密碼: cubswin:)
在這裏插入圖片描述
在這裏插入圖片描述
在Linux的瀏覽器下訪問時openstack,如果無法顯示雲主機的虛擬終端,就安裝軟件包:

[root@test63 Packages]# cd /mnt/Packages/
[root@test63 Packages]# rpm -ivh gnome-python2-canvas-2.28.1-14.el7.x86_64.rpm
[root@test63 Packages]# rpm -ivh libgnomecanvas-2.30.3-8.el7.x86_64.rpm

擴展:
canvas 用於在網頁實時生成圖像,並且可以操作圖像內容,基本上它是一個可以用JavaScript操作的位圖
Canvas [ˈkænvəs] 帆布油畫(布)

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