fuel9.0離線安裝openstack,一個完整的openstack生態

前言:因爲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有點被放棄的意思,可是仍是可以用的。。。。

無圖無真相,感知效果以下

日誌

wKiom1mBi82gCM9fAAJ9dNBgov8134.png-wh_50

服務狀態

wKiom1mBi87A31gLAAFY4C3Hz54569.png-wh_50

性能指標

wKioL1mBi8_SwmqvAAK5_aPE1ZU671.png-wh_50

虛擬機性能指標

wKiom1mBi9DyYmjeAAC6QSPqhvY421.png-wh_50

nagios監控報警

wKioL1mBjP3itxjqAANaWUJAbR8021.png-wh_50

值得說明的是,還有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.1172.16.0.1192.168.0.1並取消dhcp,示例以下。

而後根據節點分配表,建立相應規格的虛擬機,並配置相應的網卡。

示意以下。


每一個節點的第一塊網卡中的混雜模式都設置爲不容許,而後其餘網卡設置成全容許,示例以下。


將準備的iso鏡像文件掛在到fuel虛擬機。

注意:openstack節點的系統設置中的啓動順序裏面要勾選網絡


啓動fuel

等待大概十五到二十分鐘後fuel節點就會將fuel節點相關的服務安裝完成,而後重啓。

重啓以後就會在啓動後跳轉到如下界面。



配置fuel menu

Fuel User

配置fuel的用戶名密碼,默認是admin/admin,根據實際需求更改。

Network Setup

配置相應網卡的ip地址。

eth0:

eth1:


Security Setup

fuelssh鏈接設置,默認只有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,當點擊以後就是漫長的等待了。根據電腦的配置不一樣,通常兩到三個小時不等。


安裝完後的效果

wKioL1mBpJvCAPL9AAGhWN_CGLo006.jpg-wh_50


後記:

因爲資源有限,失敗乃兵家常事,再次deploy吧。。。。

或者檢查一下是否真的配置有問題。



若是以爲不錯,並有所收穫,請我喝杯茶唄


wKioL1lU4MXwELckAADg-gB3Tsc583.jpg-wh_50wKiom1lU4Mqg8rxIAADzypnX0FU518.jpg-wh_50

相關文章
相關標籤/搜索