999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

部署OpenStack生成環境實戰

2019-08-28 06:52:26中核能源科技有限公司侯圣寶
網絡安全和信息化 2019年8期
關鍵詞:環境

■ 中核能源科技有限公司 侯圣寶

編者按:關于OpenStack的部署有很多方法和社區項目,筆者公司采用了社區中的kolla項目作為部署OpenStack的方案,本文會詳細介紹使用kolla在基于傳統企業常用的vlan網絡環境下部署OpenStack生產環境的實際案例。

圖1 整體架構拓撲圖

簡單說Kolla項目可以做到上百個節點開箱即用,把OpenStack項目用到的所有組件都容器化,并且所有的組件都具備生產級別的HA功能,能實現單個或整體OpenStack項目平滑的升級,可以說解決了OpenStack的一大痛點。

Kolla分為一下幾個模塊,每個模塊做一件事情 :(1)Kolla,主要是負責Docker的鏡像制作;(2)kolla-Ansible負 責 容器的配置管理;(3)Kolla-Kubernetes,也是負責容器集群的配置管理。

本文我們主要采用kolla-ansible來進行部署OpenStack。Kolla本身提供了生產級別的容器的鏡像,除非有定制化要求,否則完全可以直接使用。

私有云整體架構規劃

筆者公司私有云項目公分兩個階段來進行實施,第一階段先采用的5個物理節點來進行試運行和性能測試;第二階段逐步添加存儲和計算節點擴大規模; 整體架構如圖1所示。

1.服務器

整個云架構由三臺控制節點和N個計算節點組成,為了能夠充分利用服務器資源,可以將三臺控制節點同時也作為計算節點來使用,對于作為計算節點的服務器,內存容量和CPU的物理核心數盡量的高一些,以便能承載更多的業務。

2.存儲

私有云環境中可以選擇后端的存儲類型很多,可以采用傳統的集中式存儲產品和技術,比如NAS、iscsi等,也可以選擇ceph這樣的分布式存儲系統。

目前ceph與云環境的集成愈來愈成熟,其標準的S3接口方便與上層各類應用對接,再加上方便動態伸縮、負載平衡、冗余容災等特性,最終筆者選擇ceph作為云環境的后端存儲,用來承載虛擬機文件、映像和卷的管理等。

在實際環境中,可以根據自身負載情況,選擇將ceph的監控節點(monitor)與OpenStack的控制節點放在同一服務器上,數據存儲節點與計算節點放在同一服務器上,達到充分利用服務器資源的目的,而且可以使用SSD作為cache盤來提升性能。

3.網絡

整個網絡采用spineleaf架構,spine層與leaf層分別采用萬兆光纖交換機進行堆疊或者虛擬化技術,對上與核心交換機、對下與服務器利用端口聚合技術形成全互聯網絡。

spin-leaf網絡架構提供了解決橫向網絡連接的傳輸瓶頸,還提供了高度的擴展性,隨著規模擴大可以將leaf橫向不斷擴展,它幾乎能適應所有大中小型數據中心,當然各位可以根據自己公司和業務情況選擇更適合自身的技術架構,如更小規模的云環境可以將spine與leaf合并起來也是一種經濟選擇。

在二層網絡技術方面,由于筆者公司業務規模不是特別大,同時為了使現有業務和網絡架構能夠盡量不做改動的平滑遷移,因此沒有使用流行的VXLAN,而還是采用了之前一直使用vlan網絡。

表1 網絡規劃表

服務器網絡方面,由于筆者公司選擇將計算節點與存儲節點融合在一起,因此服務器會有多組不同功能的網卡進行配置:

存儲網絡:負責ceph存儲節點之間的數據同步,由兩個萬兆網卡做bond,分別連上到堆疊的leaf交換機,實現鏈路冗余和帶寬負載。

外部網絡:負責虛擬機與外部通信的網絡,由兩個千兆/萬兆網卡做bond,分別上連到堆疊的leaf交換機,實現鏈路冗余和帶寬負載,如果采用vlan方式,該leaf交換機的聚合端口應該配置為trunk模式。

API網絡:負責opensack個組件進行通信的,本例中該網絡同時融合了各個組件負載均衡和Dashboard訪問界面,由兩個千兆/萬兆網卡做bond,分別上聯到堆疊的leaf交換機,實現鏈路冗余和帶寬負載。

管理網絡:負責部署管理OpenStack物理節點,由一個千兆網卡上聯到管理網絡交換機上,可以根據實際情況同其他網絡融合。

部署環境準備

目前以5個節點為例,服務器系統為CentOS 7.3,將所有網卡根據前面規劃,做好bond,接口整理網絡規劃如表1所示。

1.部署節點上環境

部署節點用來控制和部署OpenStack,kolla項目部署OpenStack采用kollaansible的方式,即通過ansible在各個物理節點上部署裝有OpenStack各個項目的容器。因此要保證部署節點已經安裝了ansible并做了到各個節點ssh免密鑰等必備條件。

2.獲取docker鏡像

此前可以通過http://tarballs.OpenStack.org/kolla/images來 獲取kolla的docker鏡像,但是從pike版開始,所有的鏡像全移到了https://hub.docker.com/u/kolla/官方源中,目的是通過kolla-ansible安裝的時候可以直接去下載images,免去還要建立本地源的麻煩。但是由于image較大有時對于目前在國內的很多企業網絡環境來說訪問官方源會很慢,造成了部署不便。

為了解決這個問題,建議還是自行在部署節點建立docker源,那么怎么知道pike需要哪些image呢,如果訪問官方docker源的話,會發現kolla的各種image都混合在一起,很難找全。

我們可以通過http://tarballs.OpenStack.org/kolla下載pike版本的kolla。因為kolla本身是用來生成image的,因此解壓縮后在其中的docker文件夾下就包含了kolla所支持的所有組件名稱,由于我們要使用centos的 source方式部署,因此image的格式就是centos-source-[組件名稱],大家可以通過腳本把這些組件名稱提取出來,然后就可以將image批量pull下來,再push到我們自己建立的docker源上,關于docker image的pull和push,以及自己建立本地docker源我們就不討論了。

表2 節點磁盤配置

各節點環境準備

各節點最小化安裝好OS,網絡配置好之后,yum update一下系統并重啟,使其保持最新內核。

本項目我們使用ceph作為后端存儲,需要對存儲節點的硬盤做初始化。

筆者公司采取SSD與SATA混 合 使 用,SSD用 作cache和日志盤,SATA作為后端數據存儲。

如果服務器里面有RAID卡,為了獲得更好性能需要將每個磁盤都配置成RAID 0。

每個節點磁盤配置如表2所示。

1.緩存盤分區準備

用作ceph的磁盤分區必須要指定LABLE,這樣在部署的時候kolla才能夠通過LABLE識別磁盤,并確定這個磁盤的用途

parted /dev/sdb -s --mklabel gpt mkpart KOLLA_CEPH_OSD_CACHE_BOOTSTRAP 1 -1

2.數據和日志盤分區準備

日志盤可以與數據盤同屬一個磁盤,也可以指定外部日志磁盤,為了提升性能筆者使用一個獨立的SSD作為日志盤,日志盤的命名與數據盤是有一定關系的,有多個數據盤的話,編號逐漸增1。

parted /dev/sdd -s --mklabel gpt mkpart KOLLA_CEPH_OSD_BOOTSTRAP_1 1 -1

parted /dev/sde -s --mklabel gpt mkpart KOLLA_CEPH_OSD_BOOTSTRAP_2 1 -1

parted /dev/sdc -s --mklabel gpt mkpart KOLLA_CEPH_OSD_BOOTSTRAP_1_J 1-50000

parted /dev/sdc -s --mklabel gpt mkpart KOLLA_CEPH_OSD_BOOTSTRAP_2_J 50000 -100000

3.磁盤優化

為了使磁盤在ceph環境下獲得更好的性能,需要修改每個磁盤以下參數:

echo “8192” > /sys/block/sdb/queue/read_ahead_kb

echo “deadline” >/sys/block/sdb/queue/scheduler

OpenStack環境預配置

在部署節點上通過http://tarballs.OpenStack.org/kollaansible/下載穩定版本的kolla-ansible,筆者生產環境用的ocata版本,之后升級到了pike版本,新部署的可以直接下載pike版本進行安裝。

將下載的kollaansible/etc/kolla目錄復制到/etc下。在kolla下面有兩個文件 globals.yml和passwords.yml,一個是部署OpenStack環境配置文件,包括指定安裝源,定義安裝哪些OpenStack組件等功能,一個是OpenStack中所用到的所有密碼。

1.全局globals配置

編 輯/etc/kola/globals.yml,里面可以定義開啟哪些OpenStack組件,可以根據自己實際情況,來選擇要安裝的組件。其中選項做如下修改,如果有注釋需要去掉:

kola_install_type:“source” #指定部署方式,我們采用source方式

OpenStack_release:“pike” #指 定 OpenStack版本

kola_internal_vip_address: “172.16.6.100”#此ip必須沒有被分配

docker_registry:“172.16.245.20:4000” #本地docker源地址,如果使用公有源可以不配置此項

docker_namespace:“kolla” #指定docker源名稱

network_interface:“em2” #api,存儲、網絡接口

storage_interface:"bond0"

cluster_interface:"bond0"

tunnel_interface:"bond0"

neutron_external_interface: “em4”

neutron_plugin_agent:“linuxbrige”

enable_ceph : “yes” #開啟ceph

enable_cinder: “yes”#開啟cinder功能

enable_openvswitch:“no”

ceph_enable_cache:“yes” #啟用ceph緩存

glance_backend_ceph:“yes” #指定glance后端使用ceph存儲

2.生成OpenStack密碼

cd kolla-ansible/tools

./generate_passwords.py

生成的密碼會填充到/etc/kolla/passwords.yml中。

3.配置ansible主機文件

編 輯kolla-ansible/a n s i b l e/i n v e n t o r y/multimode文 件,根 據 各個節點功能在[control]、[network]、[compute]、[monitoring]、[storage]選項下將OpenStack節點信息填入,這樣部署的時候可以通過指定這個文件來部署節點信息,當然這些節點的主機名需要事先通過DNS或者hosts文件進行解析。比如需要三個控制節點,因此在[control]項下面只寫3個node信息。

[control]

node1

node2

node3

4.配置neutron網絡文件

因為筆者公司網絡采用vlan方式,默認kollaansible只開啟了vxlan和flat模式,因此需要修改neutron的ml2_conf.ini.j2等配置文件添加vlan功能,與此端口對應的交換機端口應配置成trunk模式。

首先開啟vlan支持

vi kolla-ansible/ansible/group_vars/all.yml

#修改如下選項,添加vlan

n e u t r o n_t e n a n t_n e t w o r k_t y p e s:"vxlan,flat,vlan"

添加vlan網絡所在端口,physnet1默認對應著em4外部網絡接口

vi kolla-ansible/ansible/roles/neutron/templates/ml2_conf.ini.j2

network_vlan_ranges =physnet1

flat_networks = *

OpenStack節點環境初始化

由于kolla是基于docker運行的,因此在OpenStack節點上需要預先配置好docker環境。kollaansible提供了這個功能。進入部署節點上kollaansible/tools文件夾,執行如下命令,來對節點初始化。

這個過程會安裝pip,并通過pip安裝一些組件和相應版本的docker等,因此這時候所有OpenStack節點建議能夠連接到互聯網。如果順利執行完畢不出現報錯,我們再通過prechecks參數來進一步驗證環境。

cd kolla-ansible/tools

#準備環境

./kolla-ansible –i ../ansible/inventory/multimode bootstrapservers

#驗證環境

./ kolla-ansible –i ../ansible/inventory/multimode prechecks

部署OpenStack

在上述的環境都準備好之后就可以通過kollaansible進行部署了,過程很簡單,只需執行一條命令,然后等待即可,不需要人為參與。

cd kolla-ansible/tools

./kolla-ansible –i ../ansible/inventory/multimode deploy

待執行完畢后不出現錯誤,那么整個部署就完成了,可以在瀏覽器訪問管理界面http://172.16.6.100,進行一系列的管理操作。登錄名為admin,密碼存儲在passwords.yml里 面 的keystone_admin_password項中。

至此,整個OpenStack部署完成。容易出錯的地方就是前期的環境部署,主要是因為系統有些軟件包與pip安裝的docker某些組件版本沖突,因此盡量最小化安裝OS。

猜你喜歡
環境
長期鍛煉創造體內抑癌環境
一種用于自主學習的虛擬仿真環境
孕期遠離容易致畸的環境
不能改變環境,那就改變心境
環境與保護
環境
孕期遠離容易致畸的環境
高等院校環境類公選課的實踐和探討
掌握“三個三” 兜底環境信訪百分百
我國環境會計初探
中國商論(2016年33期)2016-03-01 01:59:38
主站蜘蛛池模板: 免费Aⅴ片在线观看蜜芽Tⅴ | 人妻一本久道久久综合久久鬼色| 制服丝袜在线视频香蕉| 国产精品999在线| 亚洲无码一区在线观看| 久久黄色小视频| 国产成人综合网| 影音先锋丝袜制服| 亚洲色图综合在线| 午夜福利亚洲精品| 亚洲精品无码AⅤ片青青在线观看| 亚洲精品福利视频| 中文字幕在线日本| 亚洲av无码牛牛影视在线二区| 亚洲成在人线av品善网好看| 成年人国产视频| 欧美亚洲第一页| 伊人久久久大香线蕉综合直播| 亚洲视频在线网| 91国内视频在线观看| 全部免费毛片免费播放 | 免费Aⅴ片在线观看蜜芽Tⅴ| 亚洲精品中文字幕无乱码| 国产成人永久免费视频| 国产高清免费午夜在线视频| 五月婷婷导航| 国产精品美人久久久久久AV| 蜜臀av性久久久久蜜臀aⅴ麻豆| 亚洲色无码专线精品观看| 国产精选小视频在线观看| 欧洲亚洲一区| 国产精品手机在线播放| 国产精品尤物在线| 福利在线免费视频| 制服丝袜一区| 欧美精品亚洲精品日韩专区va| 午夜一区二区三区| 毛片网站在线播放| 欧美成在线视频| 91在线视频福利| AV天堂资源福利在线观看| 蜜芽国产尤物av尤物在线看| 国产十八禁在线观看免费| 久久超级碰| 特级aaaaaaaaa毛片免费视频 | 中文字幕无码中文字幕有码在线| 成人久久精品一区二区三区| 中文字幕有乳无码| 国产第一福利影院| 亚洲伦理一区二区| 天天躁日日躁狠狠躁中文字幕| 免费可以看的无遮挡av无码| 亚洲伊人久久精品影院| 免费a级毛片视频| 欧美在线网| 免费一级毛片不卡在线播放| 国产精品第5页| 五月天在线网站| 国产一区二区三区免费观看| 色婷婷成人| 亚洲第一区精品日韩在线播放| 天天摸夜夜操| 亚洲乱码视频| 91九色最新地址| 丁香亚洲综合五月天婷婷| 欧美一级专区免费大片| 无码一区中文字幕| 人妻出轨无码中文一区二区| 在线观看国产黄色| 国内精品小视频在线| 波多野结衣一区二区三区四区| 国产SUV精品一区二区| 99视频在线看| 欧美亚洲欧美| 夜夜操天天摸| 国产sm重味一区二区三区| 在线免费亚洲无码视频| 日韩无码视频网站| 99色亚洲国产精品11p| 中文字幕精品一区二区三区视频| 国产香蕉国产精品偷在线观看| 国产一级特黄aa级特黄裸毛片|