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

部署OpenStack生成環(huán)境實(shí)戰(zhàn)

2019-08-28 06:52:26中核能源科技有限公司侯圣寶
網(wǎng)絡(luò)安全和信息化 2019年8期
關(guān)鍵詞:環(huán)境

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

編者按:關(guān)于OpenStack的部署有很多方法和社區(qū)項(xiàng)目,筆者公司采用了社區(qū)中的kolla項(xiàng)目作為部署OpenStack的方案,本文會(huì)詳細(xì)介紹使用kolla在基于傳統(tǒng)企業(yè)常用的vlan網(wǎng)絡(luò)環(huán)境下部署OpenStack生產(chǎn)環(huán)境的實(shí)際案例。

圖1 整體架構(gòu)拓?fù)鋱D

簡(jiǎn)單說(shuō)Kolla項(xiàng)目可以做到上百個(gè)節(jié)點(diǎn)開(kāi)箱即用,把OpenStack項(xiàng)目用到的所有組件都容器化,并且所有的組件都具備生產(chǎn)級(jí)別的HA功能,能實(shí)現(xiàn)單個(gè)或整體OpenStack項(xiàng)目平滑的升級(jí),可以說(shuō)解決了OpenStack的一大痛點(diǎn)。

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

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

私有云整體架構(gòu)規(guī)劃

筆者公司私有云項(xiàng)目公分兩個(gè)階段來(lái)進(jìn)行實(shí)施,第一階段先采用的5個(gè)物理節(jié)點(diǎn)來(lái)進(jìn)行試運(yùn)行和性能測(cè)試;第二階段逐步添加存儲(chǔ)和計(jì)算節(jié)點(diǎn)擴(kuò)大規(guī)模; 整體架構(gòu)如圖1所示。

1.服務(wù)器

整個(gè)云架構(gòu)由三臺(tái)控制節(jié)點(diǎn)和N個(gè)計(jì)算節(jié)點(diǎn)組成,為了能夠充分利用服務(wù)器資源,可以將三臺(tái)控制節(jié)點(diǎn)同時(shí)也作為計(jì)算節(jié)點(diǎn)來(lái)使用,對(duì)于作為計(jì)算節(jié)點(diǎn)的服務(wù)器,內(nèi)存容量和CPU的物理核心數(shù)盡量的高一些,以便能承載更多的業(yè)務(wù)。

2.存儲(chǔ)

私有云環(huán)境中可以選擇后端的存儲(chǔ)類(lèi)型很多,可以采用傳統(tǒng)的集中式存儲(chǔ)產(chǎn)品和技術(shù),比如NAS、iscsi等,也可以選擇ceph這樣的分布式存儲(chǔ)系統(tǒng)。

目前ceph與云環(huán)境的集成愈來(lái)愈成熟,其標(biāo)準(zhǔn)的S3接口方便與上層各類(lèi)應(yīng)用對(duì)接,再加上方便動(dòng)態(tài)伸縮、負(fù)載平衡、冗余容災(zāi)等特性,最終筆者選擇ceph作為云環(huán)境的后端存儲(chǔ),用來(lái)承載虛擬機(jī)文件、映像和卷的管理等。

在實(shí)際環(huán)境中,可以根據(jù)自身負(fù)載情況,選擇將ceph的監(jiān)控節(jié)點(diǎn)(monitor)與OpenStack的控制節(jié)點(diǎn)放在同一服務(wù)器上,數(shù)據(jù)存儲(chǔ)節(jié)點(diǎn)與計(jì)算節(jié)點(diǎn)放在同一服務(wù)器上,達(dá)到充分利用服務(wù)器資源的目的,而且可以使用SSD作為cache盤(pán)來(lái)提升性能。

3.網(wǎng)絡(luò)

整個(gè)網(wǎng)絡(luò)采用spineleaf架構(gòu),spine層與leaf層分別采用萬(wàn)兆光纖交換機(jī)進(jìn)行堆疊或者虛擬化技術(shù),對(duì)上與核心交換機(jī)、對(duì)下與服務(wù)器利用端口聚合技術(shù)形成全互聯(lián)網(wǎng)絡(luò)。

spin-leaf網(wǎng)絡(luò)架構(gòu)提供了解決橫向網(wǎng)絡(luò)連接的傳輸瓶頸,還提供了高度的擴(kuò)展性,隨著規(guī)模擴(kuò)大可以將leaf橫向不斷擴(kuò)展,它幾乎能適應(yīng)所有大中小型數(shù)據(jù)中心,當(dāng)然各位可以根據(jù)自己公司和業(yè)務(wù)情況選擇更適合自身的技術(shù)架構(gòu),如更小規(guī)模的云環(huán)境可以將spine與leaf合并起來(lái)也是一種經(jīng)濟(jì)選擇。

在二層網(wǎng)絡(luò)技術(shù)方面,由于筆者公司業(yè)務(wù)規(guī)模不是特別大,同時(shí)為了使現(xiàn)有業(yè)務(wù)和網(wǎng)絡(luò)架構(gòu)能夠盡量不做改動(dòng)的平滑遷移,因此沒(méi)有使用流行的VXLAN,而還是采用了之前一直使用vlan網(wǎng)絡(luò)。

表1 網(wǎng)絡(luò)規(guī)劃表

服務(wù)器網(wǎng)絡(luò)方面,由于筆者公司選擇將計(jì)算節(jié)點(diǎn)與存儲(chǔ)節(jié)點(diǎn)融合在一起,因此服務(wù)器會(huì)有多組不同功能的網(wǎng)卡進(jìn)行配置:

存儲(chǔ)網(wǎng)絡(luò):負(fù)責(zé)ceph存儲(chǔ)節(jié)點(diǎn)之間的數(shù)據(jù)同步,由兩個(gè)萬(wàn)兆網(wǎng)卡做bond,分別連上到堆疊的leaf交換機(jī),實(shí)現(xiàn)鏈路冗余和帶寬負(fù)載。

外部網(wǎng)絡(luò):負(fù)責(zé)虛擬機(jī)與外部通信的網(wǎng)絡(luò),由兩個(gè)千兆/萬(wàn)兆網(wǎng)卡做bond,分別上連到堆疊的leaf交換機(jī),實(shí)現(xiàn)鏈路冗余和帶寬負(fù)載,如果采用vlan方式,該leaf交換機(jī)的聚合端口應(yīng)該配置為trunk模式。

API網(wǎng)絡(luò):負(fù)責(zé)opensack個(gè)組件進(jìn)行通信的,本例中該網(wǎng)絡(luò)同時(shí)融合了各個(gè)組件負(fù)載均衡和Dashboard訪(fǎng)問(wèn)界面,由兩個(gè)千兆/萬(wàn)兆網(wǎng)卡做bond,分別上聯(lián)到堆疊的leaf交換機(jī),實(shí)現(xiàn)鏈路冗余和帶寬負(fù)載。

管理網(wǎng)絡(luò):負(fù)責(zé)部署管理OpenStack物理節(jié)點(diǎn),由一個(gè)千兆網(wǎng)卡上聯(lián)到管理網(wǎng)絡(luò)交換機(jī)上,可以根據(jù)實(shí)際情況同其他網(wǎng)絡(luò)融合。

部署環(huán)境準(zhǔn)備

目前以5個(gè)節(jié)點(diǎn)為例,服務(wù)器系統(tǒng)為CentOS 7.3,將所有網(wǎng)卡根據(jù)前面規(guī)劃,做好bond,接口整理網(wǎng)絡(luò)規(guī)劃如表1所示。

1.部署節(jié)點(diǎn)上環(huán)境

部署節(jié)點(diǎn)用來(lái)控制和部署OpenStack,kolla項(xiàng)目部署OpenStack采用kollaansible的方式,即通過(guò)ansible在各個(gè)物理節(jié)點(diǎn)上部署裝有OpenStack各個(gè)項(xiàng)目的容器。因此要保證部署節(jié)點(diǎn)已經(jīng)安裝了ansible并做了到各個(gè)節(jié)點(diǎn)ssh免密鑰等必備條件。

2.獲取docker鏡像

此前可以通過(guò)http://tarballs.OpenStack.org/kolla/images來(lái) 獲取kolla的docker鏡像,但是從pike版開(kāi)始,所有的鏡像全移到了https://hub.docker.com/u/kolla/官方源中,目的是通過(guò)kolla-ansible安裝的時(shí)候可以直接去下載images,免去還要建立本地源的麻煩。但是由于image較大有時(shí)對(duì)于目前在國(guó)內(nèi)的很多企業(yè)網(wǎng)絡(luò)環(huán)境來(lái)說(shuō)訪(fǎng)問(wèn)官方源會(huì)很慢,造成了部署不便。

為了解決這個(gè)問(wèn)題,建議還是自行在部署節(jié)點(diǎn)建立docker源,那么怎么知道pike需要哪些image呢,如果訪(fǎng)問(wèn)官方docker源的話(huà),會(huì)發(fā)現(xiàn)kolla的各種image都混合在一起,很難找全。

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

表2 節(jié)點(diǎn)磁盤(pán)配置

各節(jié)點(diǎn)環(huán)境準(zhǔn)備

各節(jié)點(diǎn)最小化安裝好OS,網(wǎng)絡(luò)配置好之后,yum update一下系統(tǒng)并重啟,使其保持最新內(nèi)核。

本項(xiàng)目我們使用ceph作為后端存儲(chǔ),需要對(duì)存儲(chǔ)節(jié)點(diǎn)的硬盤(pán)做初始化。

筆者公司采取SSD與SATA混 合 使 用,SSD用 作cache和日志盤(pán),SATA作為后端數(shù)據(jù)存儲(chǔ)。

如果服務(wù)器里面有RAID卡,為了獲得更好性能需要將每個(gè)磁盤(pán)都配置成RAID 0。

每個(gè)節(jié)點(diǎn)磁盤(pán)配置如表2所示。

1.緩存盤(pán)分區(qū)準(zhǔn)備

用作ceph的磁盤(pán)分區(qū)必須要指定LABLE,這樣在部署的時(shí)候kolla才能夠通過(guò)LABLE識(shí)別磁盤(pán),并確定這個(gè)磁盤(pán)的用途

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

2.數(shù)據(jù)和日志盤(pán)分區(qū)準(zhǔn)備

日志盤(pán)可以與數(shù)據(jù)盤(pán)同屬一個(gè)磁盤(pán),也可以指定外部日志磁盤(pán),為了提升性能筆者使用一個(gè)獨(dú)立的SSD作為日志盤(pán),日志盤(pán)的命名與數(shù)據(jù)盤(pán)是有一定關(guān)系的,有多個(gè)數(shù)據(jù)盤(pán)的話(huà),編號(hào)逐漸增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.磁盤(pán)優(yōu)化

為了使磁盤(pán)在ceph環(huán)境下獲得更好的性能,需要修改每個(gè)磁盤(pán)以下參數(shù):

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

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

OpenStack環(huán)境預(yù)配置

在部署節(jié)點(diǎn)上通過(guò)http://tarballs.OpenStack.org/kollaansible/下載穩(wěn)定版本的kolla-ansible,筆者生產(chǎn)環(huán)境用的ocata版本,之后升級(jí)到了pike版本,新部署的可以直接下載pike版本進(jìn)行安裝。

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

1.全局globals配置

編 輯/etc/kola/globals.yml,里面可以定義開(kāi)啟哪些OpenStack組件,可以根據(jù)自己實(shí)際情況,來(lái)選擇要安裝的組件。其中選項(xiàng)做如下修改,如果有注釋需要去掉:

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

OpenStack_release:“pike” #指 定 OpenStack版本

kola_internal_vip_address: “172.16.6.100”#此ip必須沒(méi)有被分配

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

docker_namespace:“kolla” #指定docker源名稱(chēng)

network_interface:“em2” #api,存儲(chǔ)、網(wǎng)絡(luò)接口

storage_interface:"bond0"

cluster_interface:"bond0"

tunnel_interface:"bond0"

neutron_external_interface: “em4”

neutron_plugin_agent:“l(fā)inuxbrige”

enable_ceph : “yes” #開(kāi)啟ceph

enable_cinder: “yes”#開(kāi)啟cinder功能

enable_openvswitch:“no”

ceph_enable_cache:“yes” #啟用ceph緩存

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

2.生成OpenStack密碼

cd kolla-ansible/tools

./generate_passwords.py

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

3.配置ansible主機(jī)文件

編 輯kolla-ansible/a n s i b l e/i n v e n t o r y/multimode文 件,根 據(jù) 各個(gè)節(jié)點(diǎn)功能在[control]、[network]、[compute]、[monitoring]、[storage]選項(xiàng)下將OpenStack節(jié)點(diǎn)信息填入,這樣部署的時(shí)候可以通過(guò)指定這個(gè)文件來(lái)部署節(jié)點(diǎn)信息,當(dāng)然這些節(jié)點(diǎn)的主機(jī)名需要事先通過(guò)DNS或者h(yuǎn)osts文件進(jìn)行解析。比如需要三個(gè)控制節(jié)點(diǎn),因此在[control]項(xiàng)下面只寫(xiě)3個(gè)node信息。

[control]

node1

node2

node3

4.配置neutron網(wǎng)絡(luò)文件

因?yàn)楣P者公司網(wǎng)絡(luò)采用vlan方式,默認(rèn)kollaansible只開(kāi)啟了vxlan和flat模式,因此需要修改neutron的ml2_conf.ini.j2等配置文件添加vlan功能,與此端口對(duì)應(yīng)的交換機(jī)端口應(yīng)配置成trunk模式。

首先開(kāi)啟vlan支持

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

#修改如下選項(xiàng),添加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網(wǎng)絡(luò)所在端口,physnet1默認(rèn)對(duì)應(yīng)著em4外部網(wǎng)絡(luò)接口

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

network_vlan_ranges =physnet1

flat_networks = *

OpenStack節(jié)點(diǎn)環(huán)境初始化

由于kolla是基于docker運(yùn)行的,因此在OpenStack節(jié)點(diǎn)上需要預(yù)先配置好docker環(huán)境。kollaansible提供了這個(gè)功能。進(jìn)入部署節(jié)點(diǎn)上kollaansible/tools文件夾,執(zhí)行如下命令,來(lái)對(duì)節(jié)點(diǎn)初始化。

這個(gè)過(guò)程會(huì)安裝pip,并通過(guò)pip安裝一些組件和相應(yīng)版本的docker等,因此這時(shí)候所有OpenStack節(jié)點(diǎn)建議能夠連接到互聯(lián)網(wǎng)。如果順利執(zhí)行完畢不出現(xiàn)報(bào)錯(cuò),我們?cè)偻ㄟ^(guò)prechecks參數(shù)來(lái)進(jìn)一步驗(yàn)證環(huán)境。

cd kolla-ansible/tools

#準(zhǔn)備環(huán)境

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

#驗(yàn)證環(huán)境

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

部署OpenStack

在上述的環(huán)境都準(zhǔn)備好之后就可以通過(guò)kollaansible進(jìn)行部署了,過(guò)程很簡(jiǎn)單,只需執(zhí)行一條命令,然后等待即可,不需要人為參與。

cd kolla-ansible/tools

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

待執(zhí)行完畢后不出現(xiàn)錯(cuò)誤,那么整個(gè)部署就完成了,可以在瀏覽器訪(fǎng)問(wèn)管理界面http://172.16.6.100,進(jìn)行一系列的管理操作。登錄名為admin,密碼存儲(chǔ)在passwords.yml里 面 的keystone_admin_password項(xiàng)中。

至此,整個(gè)OpenStack部署完成。容易出錯(cuò)的地方就是前期的環(huán)境部署,主要是因?yàn)橄到y(tǒng)有些軟件包與pip安裝的docker某些組件版本沖突,因此盡量最小化安裝OS。

猜你喜歡
環(huán)境
長(zhǎng)期鍛煉創(chuàng)造體內(nèi)抑癌環(huán)境
一種用于自主學(xué)習(xí)的虛擬仿真環(huán)境
孕期遠(yuǎn)離容易致畸的環(huán)境
不能改變環(huán)境,那就改變心境
環(huán)境與保護(hù)
環(huán)境
孕期遠(yuǎn)離容易致畸的環(huán)境
高等院校環(huán)境類(lèi)公選課的實(shí)踐和探討
掌握“三個(gè)三” 兜底環(huán)境信訪(fǎng)百分百
我國(guó)環(huán)境會(huì)計(jì)初探
主站蜘蛛池模板: 婷婷色丁香综合激情| 成年片色大黄全免费网站久久| 国产女人喷水视频| 亚洲无码高清一区| 久久午夜夜伦鲁鲁片不卡| 白浆免费视频国产精品视频| 人妖无码第一页| 免费看美女自慰的网站| 国产欧美日韩18| 国产区福利小视频在线观看尤物| 3D动漫精品啪啪一区二区下载| 亚洲自拍另类| 好吊妞欧美视频免费| 国产日韩精品欧美一区灰| 国产精品福利在线观看无码卡| 四虎影视库国产精品一区| 亚洲欧洲日韩国产综合在线二区| 99尹人香蕉国产免费天天拍| 亚洲天堂网在线观看视频| 国产视频自拍一区| 色香蕉影院| 91精品小视频| 国产欧美精品一区二区| 欧美成人怡春院在线激情| 青青操国产视频| 亚洲美女一区| 国产一区二区三区精品欧美日韩| 国产激爽大片在线播放| av色爱 天堂网| 日本欧美视频在线观看| 成人久久18免费网站| 99热国产在线精品99| 99偷拍视频精品一区二区| 日韩美毛片| 国产无码高清视频不卡| 亚洲国产高清精品线久久| 欧美成人精品一级在线观看| 国产高清在线精品一区二区三区 | 中文字幕无码制服中字| 国产免费久久精品44| 亚洲欧美成人影院| 91丝袜在线观看| 国产综合精品日本亚洲777| 国产毛片高清一级国语| 秘书高跟黑色丝袜国产91在线 | 在线观看亚洲国产| 亚洲国产欧美中日韩成人综合视频| 新SSS无码手机在线观看| 福利视频一区| 精品无码人妻一区二区| 国产激情第一页| 国产小视频网站| 91免费观看视频| 91网在线| 久久香蕉国产线看精品| 国产一国产一有一级毛片视频| 国模极品一区二区三区| 精品综合久久久久久97| 色亚洲成人| 国产香蕉国产精品偷在线观看| 97狠狠操| 亚洲一区无码在线| 天堂亚洲网| 手机在线国产精品| 亚洲欧美成人影院| 97se亚洲综合在线天天| 国产玖玖视频| 欧美成人免费一区在线播放| 国产97视频在线| 国产大片喷水在线在线视频| 狠狠亚洲婷婷综合色香| 麻豆国产精品| 青青草原国产精品啪啪视频| 国产成人免费| 国产无码在线调教| 成年人午夜免费视频| 国产午夜精品一区二区三| 青青青国产视频手机| 亚洲人成日本在线观看| 欧美亚洲第一页| 亚洲va在线观看| 人妻丝袜无码视频|