前言:因爲openstack框架的龐大,因此人工的源碼安裝基本只能適用於小規模的集羣,而稍微上點規模的集羣都是須要個安裝工具的(只要你願意,固然也能夠源碼安裝。。。),fuel即是其中一員,可是尷尬的是,mirantis上面都找不到fuel9.0的相關文檔了T_T,由於mirantis打算推本身的mcp,放棄fuel了,而mcp是什麼呢?在k8s上面裝openstack,雖然看起來更復雜了,但其實更"方便"了,這幾乎也是一個趨勢了。html
正文node
我所說的openstack生態指啥?恩,這個詞又是我杜撰的。ios
若是隻是搭一個openstack集羣,其實很危險,特別是規模比較大的時候,由於靠手工的檢查或者腳本的檢查是很難感知整個openstack集羣的狀態的,因此要能時時刻刻感知到openstack集羣的狀態纔算一個完整的生態。web
怎麼感知呢?bootstrap
日誌ubuntu
收集openstack節點的服務日誌,因爲排查,追溯錯誤。centos
性能指標bash
發現openstack的性能瓶頸,或者定位問題。服務器
監控報警微信
用於及時響應openstack發現的錯誤,能夠第一時間解決。
關於上述的感知,其實fuel已經提供了比較完善的插件了,因此不須要一項一項的配置,雖然fuel有點被放棄的意思,可是仍是可以用的。。。。
無圖無真相,感知效果以下
日誌
服務狀態
性能指標
虛擬機性能指標
nagios監控報警
值得說明的是,還有zabbix的監控報警能夠選擇。
準備文件
iso文件: MirantisOpenStack-9.0.iso
離線源: fuel9.0-repo-0624.tar.gz
bootstrap鏡像: bc3e3b14-0845-4804-b913-7405751765f2.tar.gz
下載連接:
http://pan.baidu.com/s/1nuEWwxb 密碼:njr4
Lma插件:
下載連接: https://www.mirantis.com/software/openstack/fuel-plugins/
elasticsearch_kibana-0.10-0.10.2-1.noarch.rpm
influxdb_grafana-0.10-0.10.2-1.noarch.rpm
lma_infrastructure_alerting-0.10-0.10.3-1.noarch.rpm
virtualbox安裝
節點分配表
節點類型 | 內存 | Cpu | 網卡1 | 網卡2 | 網卡3 | 磁盤 (最低) |
實際配置大小 | |
Node1 | Fuel | 2 | 1 | Pxe/Admin | mgmt | n/a | 50GB | 50GB |
Node2 | 控制節點 | 4 | 1 | Pxe/Admin | mgmt | Prv/stg/public | 50GB | 100GB |
Node3 | 計算節點 | 2 | 1 | Pxe/Admin | mgmt | Prv/stg/public | 50GB | 100GB |
Node4 | Lma節點 | 4 | 1 | Pxe/Admin | mgmt | Prv/stg/public | 120GB | 300GB |
網絡環境準備
1.建立三個host-only網絡
依次將其ip地址設置爲10.20.0.1,172.16.0.1,192.168.0.1並取消dhcp,示例以下。
而後根據節點分配表,建立相應規格的虛擬機,並配置相應的網卡。
示意以下。
每一個節點的第一塊網卡中的混雜模式都設置爲不容許,而後其餘網卡設置成全容許,示例以下。
將準備的iso鏡像文件掛在到fuel虛擬機。
注意:openstack節點的系統設置中的」啓動順序」裏面要勾選」網絡」
啓動fuel。
等待大概十五到二十分鐘後fuel節點就會將fuel節點相關的服務安裝完成,而後重啓。
重啓以後就會在啓動後跳轉到如下界面。
配置fuel menu
Fuel User
配置fuel的用戶名密碼,默認是admin/admin,根據實際需求更改。
Network Setup
配置相應網卡的ip地址。
eth0:
eth1:
Security Setup
fuel的ssh鏈接設置,默認只有pxe網段的ip可以ssh鏈接。
這裏改爲任意網段。
PXE Setup
可設置dhcp地址以及dhcp分配的ip地址範圍。
DNS & Hostname
因爲在內網,且沒有內部dns服務器,因此不須要設置。
注:這裏dns能夠設置成8.8.8.8或者留空。
Fuel的配置文件更改,可用fuel settings更改
[root@fuel ~]# fuel settings -h usage: fuel settings [-h] --env ENV (--download | --default | --upload) [--dir DIR] [--force] optional arguments: -h, --help show this help message and exit --env ENV, --env-id ENV environment id --download, -d Modify current configuration. --default Open default configuration. --upload, -u Save current changes in configuration. --dir DIR Directory with configuration data. --force, -f Force settings upload. Examples: To upload settings for some environment from some directory: fuel --env 1 settings --upload --dir path/to/directory To download default settings for some environment in some directory: fuel --env 1 settings --default --dir path/to/directory To download settings for some environment in this directory: fuel --env 1 settings --download
Bootstrap Image
選擇 Skip building bootstrap p_w_picpath,後面會離線導入,再者內網沒有網絡鏈接,且軟件源在國外,在線建立幾乎不會成功。
Time Sync
將ntp服務器指向fuel服務器的ip地址
注意:點擊check的時候會失敗,可是不要緊。
Root Password
Fuel 服務器的root密碼
後面Feature groups,Shell Login,Restore settings都不須要設置。
最後Quit Setup選擇 Quit and Save
至此,fuel會根據上面的配置項配置fuel的安裝環境。
根據虛擬機的硬件規格的不一樣,安裝配置的時間不定,一個小時或者更長。
安裝完成後,會提示如下頁面
將準備的文件,除了iso鏡像所有傳入進去。
新建本地源(openstack軟件包之類的):
[root@fuel ~]# mv fuel9.0-repo-0624.tar.gz /var/www/nailgun/ [root@fuel nailgun]# ls bootstraps centos dump error.html extra-repos fuel9.0-repo-0624.tar.gz index.html mitaka-9.0 mos-centos targetp_w_picpaths ubuntu [root@fuel nailgun]# tar xf fuel9.0-repo-0624.tar.gz [root@fuel nailgun]# ls bootstraps centos dump error.html extra-repos fuel9.0-repo-0624.tar.gz index.html mirrors mitaka-9.0 mos-centos targetp_w_picpaths ubuntu
能夠看到,多了一個mirros的文件夾。
執行fuel-createmirros命令。
注:報錯是正常的,由於fuel會試圖去網上下載。
導入bootstrap鏡像(Openstack節點的系統鏡像)並激活:
[root@fuel ~]# fuel-bootstrap import bc3e3b14-0845-4804-b913-7405751765f2.tar.gz Try extract bc3e3b14-0845-4804-b913-7405751765f2.tar.gz to /tmp/tmp5zDunq Bootstrap p_w_picpath bc3e3b14-0845-4804-b913-7405751765f2 has been imported. [root@fuel ~]# fuel-bootstrap list +--------------------------------------+--------------------------------------+--------+ | uuid | label | status | +--------------------------------------+--------------------------------------+--------+ | bc3e3b14-0845-4804-b913-7405751765f2 | bc3e3b14-0845-4804-b913-7405751765f2 | | +--------------------------------------+--------------------------------------+--------+ [root@fuel ~]# fuel-bootstrap activate bc3e3b14-0845-4804-b913-7405751765f2 Starting new HTTP connection (1): 10.20.0.2 Starting new HTTP connection (1): 10.20.0.2 Starting new HTTP connection (1): 10.20.0.2 Starting new HTTP connection (1): 10.20.0.2 Bootstrap p_w_picpath bc3e3b14-0845-4804-b913-7405751765f2 has been activated.
注意:必定要激活。
安裝插件
[root@fuel ~]# fuel plugins --install lma_infrastructure_alerting-0.10-0.10.3-1.noarch.rpm [root@fuel ~]# fuel plugins --install elasticsearch_kibana-0.10-0.10.2-1.noarch.rpm [root@fuel ~]# fuel plugins --install influxdb_grafana-0.10-0.10.2-1.noarch.rpm
列出已裝插件
[root@fuel ~]# fuel plugins id | name | version | package_version | releases ---+-----------------------------+---------+-----------------+---------------------------------------------- 1 | lma_infrastructure_alerting | 0.10.3 | 4.0.0 | ubuntu (liberty-8.0, liberty-9.0, mitaka-9.0) 2 | elasticsearch_kibana | 0.10.2 | 4.0.0 | ubuntu (liberty-8.0, liberty-9.0, mitaka-9.0) 3 | influxdb_grafana | 0.10.2 | 4.0.0 | ubuntu (liberty-8.0, liberty-9.0, mitaka-9.0)
Fuel web界面建立opens tack環境
點擊 「新建openstack環境」
填入環境名,環境名不能重複
由於節點有限,因此選擇lvm做爲塊存儲。
而後依次啓動各個openstack節點。
啓動各個節點後,各個節點會經過pxe自動安裝導入的bootstrap鏡像,系統安裝完成後,就在在fuel web頁面看到節點加入的消息。
命令行下查看
[root@fuel ~]# fuel nodes id | status | name | cluster | ip | mac | roles | pending_roles | online | group_id ---+----------+------------------+---------+-----------+-------------------+-------+---------------+--------+--------- 1 | discover | Untitled (9c:6b) | | 10.20.0.3 | 08:00:27:50:9c:6b | | | 1 | 2 | discover | Untitled (c1:b4) | | 10.20.0.4 | 08:00:27:0b:c1:b4 | | | 1 | 3 | discover | Untitled (d9:95) | | 10.20.0.5 | 08:00:27:b5:d9:95 | | | 1 |
在添加節點以前
在「設置」標籤頁面選擇其餘配置,將所裝的插件,都啓用並根據須要進行相關配置,如用戶名密碼,郵箱之類的。
效果以下
進入環境,添加節點,依次以下。
選擇全部節點,配置網絡接口
因爲都只有一塊磁盤,不用配置磁盤,不過也能夠自定義各個部分的大小,fuel會自動的分配了。
示例以下。
在deploy changes以前先進行網絡驗證。
最後點擊Deploy Changes,當點擊以後就是漫長的等待了。根據電腦的配置不一樣,通常兩到三個小時不等。
安裝完後的效果
後記:
因爲資源有限,失敗乃兵家常事,再次deploy吧。。。。
或者檢查一下是否真的配置有問題。
若是以爲不錯,並有所收穫,請我喝杯茶唄