OpenStack(Queens)詳細安裝部署(一)-基礎環境安裝
本系列文章將在CentOS7環境下手動安裝OpenStack Q版本,手動安裝對大家問題定位能力有極大的幫助。文章如果有不正確的地方歡迎大家留言指出。
一、安裝環境準備
OpenStack官方的硬體要求如下圖所示,其中虛線節點是可選部分,是塊儲存節點與物件儲存節點,本次我們暫不安裝。
本次將搭建一個簡單的OpenStack平臺,你需要伺服器或虛擬機器兩臺,一臺作為OpenStack的控制節點,一臺作為計算節點。
其中,控制節點將完成訊息佇列、資料庫、ntp以及OpenStack相關的認證服務、映象服務、計算服務、網路服務、介面服務的安裝。計算節點將完成計算服務、網路服務的安裝。
博主條件有限,使用virtual box建立了兩臺虛擬機器具體配置如下:
1.1 硬體配置
- 控制節點: cpu 1 ,記憶體 2G,網絡卡 2張,儲存 25G
- 計算節點: cpu 1 ,記憶體 2G,網絡卡 2張,儲存 25G
1.2 作業系統
1.3 配置ip地址
ip地址大家根據自己實際情況而定
- 控制節點第一張網絡卡:192.168.0.77
- 控制節點第二張網絡卡:
- 計算節點第一張網絡卡:192.168.0.78
- 計算幾點第二張網絡卡:
1.4 修改主機名
編輯檔案/etc/hostname,刪除原有內容,然後新增自己的主機名
控制節點
controller
計算節點
compute
注意:修改完成之後如果沒生效,可以退出登入一次或者重啟一次。
1.5 增加主機名解析
在控制節點和計算節點編輯/etc/hosts,在其中增加如下內容:
192.168.0.77 controller
192.168.0.78 compute
完成這步後,即可通過主機名互相訪問。
1.6 關閉防火牆
關閉防火牆是因為踩了很多坑!
在控制節點與計算節點執行下面的操作。
# systemctl disable firewalld
# systemctl stop firewalld
禁用selinux,避免踩坑!編輯/etc/selinux/config,將enforcing修改為disabled。
SELINUX=disabled
selinux的設定需要重啟節點才能生效。
1.7 準備yum本地源
安裝OpenStack的過程中下載安裝包是比較慢的,因此OpenStack核心元件所有需要用到的rpm包我們已經下載並製作成了iso檔案,有了這個iso檔案我們就可以完全本地安裝了。掃描文章下方二維碼,關注扶艾微信公眾號,回覆fuAi_qrpm即可獲取!
- 將下載完成的fuai_openstack_q.iso拷貝到控制節點與計算節點
- 建立iso掛載檔案目錄,並掛載iso
# mkdir /opt/fuAi
# mount fuai_openstack_q.iso /opt/fuAi
- 設定開機自動掛載
# echo 'mount /root/fuai_openstack_q.iso /opt/fuAi' >>/etc/rc.local
# chmod -R 777 /etc/rc.d/rc.local
- 備份原有的repo檔案,並建立fuAi.repo檔案
# cd /etc/yum.repos.d/
# mkdir bak
# mv CentOS* bak
# vi fuAi.repo
[fuAi]
name=fuAi
baseurl=file:///opt/fuAi/
gpgcheck=0
- 測試下本地源是否生效了,先安裝個vim壓壓驚!
# yum install vim -y
不出意外,vim安裝成功。
至此,我們所有的準備工作已經完成,接下來就將進入OpenStack的正式安裝。
二、OpenStack基礎環境安裝
注意:後面的安裝的步驟中,博主會在標題前的括號中註明該步驟在哪個節點執行,這個很重要!
2.1 (控制節點)安裝ntp服務
因為設定了本地源,後面的yum安裝應該都很爽!
- 安裝chrony
# yum install chrony -y
- 編輯配置檔案/etc/chrony.conf增加以下內容:
server controller iburst
allow 192.168.0.0/24 #這個根據自己子網情況
- 設定服務的開機啟動,並啟動服務
# systemctl enable chronyd
# systemctl start chronyd
2.2 (計算節點)安裝ntp服務
- 安裝chrony
# yum install chrony -y
- 編輯配置檔案/etc/chrony.conf增加如下內容:
server controller iburst
- 設定服務的開機啟動,並啟動服務
# systemctl enable chronyd
# systemctl start chronyd
2.3 (控制節點、計算節點)升級軟體包,安裝OpenStack客戶端
- 升級軟體包
# yum upgrade
注意:升級完成之後重啟節點
- 安裝OpenStack客戶端
# yum install python-openstackclient -y
- 安裝openstack-selinux
# yum install openstack-selinux -y
2.4 (控制節點)sql資料庫安裝
- 安裝軟體包
# yum install mariadb mariadb-server python2-PyMySQL -y
- 建立並編輯檔案/etc/my.cnf.d/openstack.cnf增加如下內容:
[mysqld]
bind-address = 192.168.0.77
default-storage-engine = innodb
innodb_file_per_table = on
max_connections = 4096
collation-server = utf8_general_ci
character-set-server = utf8
- 設定資料庫服務的開機啟動,並啟動服務
# systemctl enable mariadb.service
# systemctl start mariadb.service
- 為資料庫設定密碼
# mysql_secure_installation
NOTE: RUNNING ALL PARTS OF THIS SCRIPT IS RECOMMENDED FOR ALL MariaDB
SERVERS IN PRODUCTION USE! PLEASE READ EACH STEP CAREFULLY!
In order to log into MariaDB to secure it, we'll need the current
password for the root user. If you've just installed MariaDB, and
you haven't set the root password yet, the password will be blank,
so you should just press enter here.
Enter current password for root (enter for none): #這裡直接回車
OK, successfully used password, moving on...
Setting the root password ensures that nobody can log into the MariaDB
root user without the proper authorisation.
Set root password? [Y/n] y
New password:
Re-enter new password: #設定資料庫的root密碼,我設定的fuai123
Password updated successfully!
Reloading privilege tables..
... Success!
By default, a MariaDB installation has an anonymous user, allowing anyone
to log into MariaDB without having to have a user account created for
them. This is intended only for testing, and to make the installation
go a bit smoother. You should remove them before moving into a
production environment.
Remove anonymous users? [Y/n] y
... Success!
Normally, root should only be allowed to connect from 'localhost'. This
ensures that someone cannot guess at the root password from the network.
Disallow root login remotely? [Y/n] y
... Success!
By default, MariaDB comes with a database named 'test' that anyone can
access. This is also intended only for testing, and should be removed
before moving into a production environment.
Remove test database and access to it? [Y/n] y
- Dropping test database...
... Success!
- Removing privileges on test database...
... Success!
Reloading the privilege tables will ensure that all changes made so far
will take effect immediately.
Reload privilege tables now? [Y/n] y
... Success!
Cleaning up...
All done! If you've completed all of the above steps, your MariaDB
installation should now be secure.
Thanks for using MariaDB!
2.5 (控制節點)安裝訊息佇列
- 安裝軟體包
# yum install rabbitmq-server -y
- 設定訊息佇列服務的開機自啟,並啟動服務
# systemctl enable rabbitmq-server.service
# systemctl start rabbitmq-server.service
- 新增openstack使用者並設定openstack使用訊息佇列的許可權
注意:下面的fuai123是我自己設定的openstack使用訊息佇列的密碼,可以自行設定
# rabbitmqctl add_user openstack fuai123
Creating user "openstack" ...
# rabbitmqctl set_permissions openstack ".*" ".*" ".*"
Setting permissions for user "openstack" in vhost "/" ...
2.6 (控制節點)安裝memcached服務
- 安裝軟體包
# yum install memcached python-memcached -y
- 編輯/etc/sysconfig/memcached檔案設定以下內容
OPTIONS="-l 127.0.0.1,::1,controller"
- 設定服務開機自啟動,並啟動服務
# systemctl enable memcached.service
# systemctl start memcached.service
2.7 (控制節點)安裝etcd服務
- 下載軟體包
# yum install etcd -y
- 編輯檔案/etc/etcd/etcd.conf設定以下內容
#[Member]
#ETCD_CORS=""
ETCD_DATA_DIR="/var/lib/etcd/default.etcd"
#ETCD_WAL_DIR=""
ETCD_LISTEN_PEER_URLS="http://localhost:2380"
ETCD_LISTEN_CLIENT_URLS="http://localhost:2379"
#ETCD_MAX_SNAPSHOTS="5"
#ETCD_MAX_WALS="5"
ETCD_NAME="controller"
#ETCD_SNAPSHOT_COUNT="100000"
#ETCD_HEARTBEAT_INTERVAL="100"
#ETCD_ELECTION_TIMEOUT="1000"
#ETCD_QUOTA_BACKEND_BYTES="0"
#ETCD_MAX_REQUEST_BYTES="1572864"
#ETCD_GRPC_KEEPALIVE_MIN_TIME="5s"
#ETCD_GRPC_KEEPALIVE_INTERVAL="2h0m0s"
#ETCD_GRPC_KEEPALIVE_TIMEOUT="20s"
#
#[Clustering]
ETCD_INITIAL_ADVERTISE_PEER_URLS="http://localhost:2380"
ETCD_ADVERTISE_CLIENT_URLS="http://localhost:2379"
#ETCD_DISCOVERY=""
#ETCD_DISCOVERY_FALLBACK="proxy"
#ETCD_DISCOVERY_PROXY=""
#ETCD_DISCOVERY_SRV=""
ETCD_INITIAL_CLUSTER="controller=http://localhost:2380"
ETCD_INITIAL_CLUSTER_TOKEN="etcd-cluster-01"
ETCD_INITIAL_CLUSTER_STATE="new"
- 設定開機服務自啟動,並啟動服務
# systemctl enable etcd
# systemctl start etcd
至此,OpenStack基礎環境已經安裝完成,下面將進行認證服務的安裝,具體請參見文章《OpenStack(Queens)詳細安裝部署(二)》
更多精彩內容,OpenStack乾貨請掃描下方二維碼,關注我們微信公眾號“扶艾”!
相關推薦
OpenStack(Queens)詳細安裝部署(一)-基礎環境安裝
本系列文章將在CentOS7環境下手動安裝OpenStack Q版本,手動安裝對大家問題定位能力有極大的幫助。文章如果有不正確的地方歡迎大家留言指出。 一、安裝環境準備 OpenStack官方的硬體要求如下圖所示,其中虛線節點是可選部分,是塊儲存節點
自動化運維工具安裝部署 chef (一) - 測試環境配置
系統/運維 Linux 最近一直在做tensorflow的研究,看書看視頻群內討論什麽的,有些頭大,抽空刷朋友圈看到有朋友一直關註devops,市面上也有相關人員需求,索性抽空玩一個自動化運維的產品chef,加上之前也有開發過相關運維產品,對比下rundeck,看看這個有什麽好玩。官網https://
Exchange Server 2016安裝部署系列一:Exchange 簡述,環境需求及部署規劃
exchange 2016 先決條件 exchange 2016 準備ad和 exchange 2016 郵箱服務 exchange 2016 安裝 exchange 邊緣服務器部署 Exchange Server 2016簡述MicrosoftExchange Server 2016
OpenStack(Queens)詳細安裝部署(三)-映象服務(glance)安裝
本篇文章是本系列的第三篇文章,將繼續進行OpenStack映象服務的安裝 四、安裝映象服務 4.1 (控制節點)配置映象資料庫 連線資料庫 # mysql -u root -pfuai123 建立glance資料庫並設定訪問許可權
OpenStack(Queens)詳細安裝部署(五)-網路服務(neutron)安裝
本篇文章是本系列的第五篇文章,將繼續進行OpenStack網路服務的安裝 六、安裝網路服務 6.1 (控制節點)配置資料庫 - 連線資料庫 # mysql -u root -pfuai123 建立資料庫並配置許可權 MariaDB
OpenStack(Queens)詳細安裝部署(六)-介面(horizon)安裝
本篇文章是本系列的第六篇文章,將繼續進行OpenStack介面的安裝 七、安裝介面 7.1 (控制節點)安裝軟體包並配置相關檔案 - 安裝軟體包 # yum install open
OpenStack(Queens)詳細安裝部署(四)-計算服務(nova)安裝
本篇文章是本系列的第四篇文章,將繼續進行OpenStack計算服務的安裝 五、安裝計算服務 5.1 (控制節點)配置資料庫 - 連線資料庫 # mysql -u root -pfuai123 建立nova相關資料庫並設定訪問許可權
Openstack 安裝部署指南翻譯系列 之 Horizon服務安裝(Dashboad)
openstack 翻譯 horizon安裝1.1.1.1. Horizon服務安裝(Dashboad)本節介紹如何在控制器節點上安裝和配置儀表板。儀表板所需的唯一核心服務是身份服務。您可以使用儀表板與其他服務(如鏡像服務,計算和網絡)結合使用。您還可以在具有獨立服務(如對象存儲)的環境中使用儀表板。註意:本
Openstack 安裝部署指南翻譯系列 之 Keystone服務安裝(Identity)
openstack 翻譯 keystone安裝OpenStack系統由分開安裝的幾個關鍵服務組成。這些服務可根據其他雲需求一起工作,包括計算(Compute),身份(Identity),網絡(Networking),鏡像(Image),塊存儲(Block Storage),對象存儲(Object Storag
Openstack 安裝部署指南翻譯系列 之 Cinder服務安裝(Block Storage)
openstack 翻譯 cinder安裝1.1.1.1. Cinder服務安裝(Block Storage)塊存儲服務(cinder)為訪客實例提供塊存儲設備。存儲設置方法由塊存儲驅動程序確定,或者在多後端配置的情況下確定驅動程序。有各種可用的驅動程序:NAS / SAN,NFS,iSCSI,Ceph等。塊
hadoop3.1.0 HA高可用完全分散式叢集的安裝部署(詳細教程)
1.環境介紹 伺服器環境:CentOS 7 5臺伺服器 兩臺namenode 三臺datanode 節點 IP NN DN ZK ZKFC
spark2.10安裝部署(集成hadoop2.7+)
use star temp 保存 local export per home hadoop 這裏默認你的hadoop是已經安裝好的,master是node1,slaver是node2-3,hdfs啟動在node1,yarn啟動在node2,如果沒安裝好hadoop可以看我前
jenkins實戰之jenkins安裝部署(二)
自動化運維 上一小節介紹了Jenkins安裝(Linux/uninx平臺),這節我們講講Jenkins界面操作(包括系統設置,工具安裝,插件管理,系統升級,安全設置等等操作); 登錄jenkins首頁,分別有以下選項欄,從左側看起,點擊Jenkins系統管理我們會看到右側list欄,內
詳解zabbix安裝部署(Server端篇)
官網下載 libc 發現 trapper 分布式系統 .so libcurl figure database Linux下常用的系統監控軟件有Nagios、Cacti、Zabbix、Monit等,這些開源的軟件,可以幫助我們更好的管理機器,在第一時間內發現,並警告系統
zabbix系列之服務端的安裝部署(一)
zabbix zabbix_server zabbix1、zabbix的定義zabbix是一個基於WEB界面的提供分布式系統監視以及網絡監視功能的企業級的開源解決方案。zabbix能監視各種網絡參數,保證服務器系統的安全運營;並提供靈活的通知機制以讓系統管理員快速定位/解決存在的各種問題。zabbix
Centos7 zabbix3.4.6的安裝部署 (二)
pos gpo 監控服務器 技術分享 color conf blog sys nbsp 接著安裝zabbix客戶端 直接安裝在服務器上 監控服務器 ip 192.168.161.25 yum -y install zabbix-agent #通過Yum安裝zabbix
Ansible -的安裝部署(Redhat&Centos)
tab configure oca packages pda cut ins linux 驗證 Ansible 的安裝部署PIP 方式安裝(Redhat&Centos)1,安裝python-pip&python-devel,yum install pyth
xtrabackup安裝部署(二)
最新 生成 完全 操作 amp 是否 net end mkdir 在官網中,復制相關鏈接下載最新版本(建議使用當前發布版本前6個月左右的穩定版本) https://www.percona.com/downloads/XtraBackup/LATEST/ 1、下載和安裝
redis安裝部署(Centos6.9)
redis1 下載redis包,編譯安裝 wget http://download.redis.io/redis-stable.tar.gz tar xf redis-stable.tar.gz && cd redis-stable make (若有報錯安裝對應的依賴包;然後先執行
Supervisor的安裝部署(Centos7)
pip安裝 serve enable tmp proc clu etc res viso Supervisor(http://supervisord.org/)是用Python開發的一個client/server服務,是Linux/Unix系統下的一個進程管理工具,不支持W