Centos7+Packstack安裝部署Openstack Mitaka之(一) 安裝Packstack
學習Openstack的前兩個月, 時間都花在環境部署上了, 主要是版本的問題, 導致了一系列的麻煩. 之前使用devstack已經部署成功了, 但是manila不能用, 殘念, 問題主要出在網路上, 研究完manila的網路模組之後再回頭找原因吧. 不打算繼續在環境上花時間了, 這裡給了一套可以重複的安裝部署流程, 使用packstack.
1. 安裝環境
虛擬機器軟體: VirtualBox
Centos映象: CentOS-7-x86_64-DVD-1511(1).iso
網路: 一張NAT網絡卡 (預設IP: 10.0.2.15)
2. packstack安裝過程
2.1 增加對packstack
的解析
安裝過程中可能會出現以下錯誤:
* unable to connect to epmd (port 4369) on packstack
原因是因為配置檔案裡將該程序放到了packstack
這臺主機上. 為了解決這個問題, 增加域名解析就行了:
[root@packstack ~]# uname -a
[root@packstack ~]# vim /etc/hosts
10.0.2.15 packstack
192.168.9.217 server
其中, server是我自己搭建的Centos7的本地源. 不使用本地源的不用增加這一項.
2.2 修改Centos和epel源
(1) Centos源
[root@packstack ~]# cd /etc/yum.repos.d/
[root@packstack ~]# mkdir bak
[root@packstack ~]# mv CentOS-* bak/
[root@packstack ~]# mv local_mitaka.repo /etc/yum.repos.d/
這裡我使用了本地源. 沒有搭建本地源的朋友直接修改成阿里雲開源映象即可. 方法類似下面的epel源.
(2) epel源
[root@packstack ~]# wget -O /etc/yum.repos.d/epel.repo http://mirrors.aliyun.com/repo/epel-7.repo
[root@packstack ~]# yum clean all
[root@packstack ~]# yum makecache
2.3 關防火牆和seliunx
[root@packstack ~]# systemctl stop firewalld
[root@packstack ~]# systemctl disable firewalld
[root@packstack ~]# vim /etc/selinux/config
SELINUX=disabled
2.4 安裝packstack包
[root@packstack ~]# yum -y install centos-release-openstack-mitaka epel-release
[root@packstack ~]# yum -y install openstack-packstack
2.5 準備answer檔案
answer檔案根據我自己的環境修改過, 在下一篇部落格中我將給出完整的檔案.
[root@packstack ~]# touch packstack-answers-20160915-011640.txt_serverworld第二個版本有manila
[root@packstack ~]# vim packstack-answers-20160915-011640.txt_serverworld第二個版本有manila
2.6 開始安裝
[root@packstack ~]# packstack --answer-file packstack-answers-20160915-011640.txt_serverworld第二個版本有manila
2.7 切換許可權
[root@packstack ~]# source keystonerc_admin
[root@packstack ~]# cat keystonerc_admin
[root@packstack ~(keystone_admin)]# manila pool-list
+------+------+---------+------+
| Name | Host | Backend | Pool |
+------+------+---------+------+
+------+------+---------+------+
因為我的重點是研究manila模組, 所以安裝成功之後第一時間檢查了manila模組. 很遺憾, manila模組安裝失敗. 原因應該是版本的問題, 沒有時間去具體研究指令碼, 下面直接給出解決方案. 這一步成功安裝, 或者不需要manila服務的朋友, 可以不用繼續向下了.
3. manila服務安裝錯誤排查
3.1 檢視日誌
[[email protected] ~]# cat /var/log/manila/share.log | grep ERROR
2016-09-16 11:50:08.123 15388 ERROR oslo_service.periodic_task Traceback (most recent call last):
2016-09-16 11:50:08.123 15388 ERROR oslo_service.periodic_task File "/usr/lib/python2.7/site-packages/oslo_service/periodic_task.py", line 220, in run_periodic_tasks
2016-09-16 11:50:08.123 15388 ERROR oslo_service.periodic_task task(self, context)
2016-09-16 11:50:08.123 15388 ERROR oslo_service.periodic_task File "/usr/lib/python2.7/site-packages/manila/utils.py", line 615, in wrapper
2016-09-16 11:50:08.123 15388 ERROR oslo_service.periodic_task raise exception.DriverNotInitialized(driver=driver_name)
2016-09-16 11:50:08.123 15388 ERROR oslo_service.periodic_task DriverNotInitialized: Share driver 'GenericShareDriver' not initialized.
查看了manila幾個程序的日誌後發現, 是manila-share程序出現錯誤. 其實可以理解, 因為manila pool為空, 說明share程序沒有成功管理後端儲存. 更詳細的錯誤資訊如下:
2016-09-15 17:44:06.281 2732 ERROR manila.share.manager [req-c7388245-8da4-44d8-b11a-0788defc2fcc - - - - -] Error encountered during initialization of driver 'GenericShareDriver' on '[email protected]' host. Class CIFSHelper cannot be found (['Traceback (most recent call last):\n', ' File "/usr/lib/python2.7/site-packages/oslo_utils/importutils.py", line 32, in import_class\n return getattr(sys.modules[mod_str], class_str)\n', "AttributeError: 'module' object has no attribute 'CIFSHelper'\n"])
2016-09-15 17:44:06.281 2732 ERROR manila.share.manager Traceback (most recent call last):
2016-09-15 17:44:06.281 2732 ERROR manila.share.manager File "/usr/lib/python2.7/site-packages/manila/share/manager.py", line 248, in init_host
2016-09-15 17:44:06.281 2732 ERROR manila.share.manager self.driver.do_setup(ctxt)
2016-09-15 17:44:06.281 2732 ERROR manila.share.manager File "/usr/lib/python2.7/site-packages/manila/share/drivers/generic.py", line 177, in do_setup
2016-09-15 17:44:06.281 2732 ERROR manila.share.manager self._setup_helpers()
2016-09-15 17:44:06.281 2732 ERROR manila.share.manager File "/usr/lib/python2.7/site-packages/manila/share/drivers/generic.py", line 208, in _setup_helpers
2016-09-15 17:44:06.281 2732 ERROR manila.share.manager helper = importutils.import_class(import_str)
2016-09-15 17:44:06.281 2732 ERROR manila.share.manager File "/usr/lib/python2.7/site-packages/oslo_utils/importutils.py", line 36, in import_class
2016-09-15 17:44:06.281 2732 ERROR manila.share.manager traceback.format_exception(*sys.exc_info())))
2016-09-15 17:44:06.281 2732 ERROR manila.share.manager ImportError: Class CIFSHelper cannot be found (['Traceback (most recent call last):\n', ' File "/usr/lib/python2.7/site-packages/oslo_utils/importutils.py", line 32, in import_class\n return getattr(sys.modules[mod_str], class_str)\n', "AttributeError: 'module' object has no attribute 'CIFSHelper'\n"])
2016-09-15 17:44:06.281 2732 ERROR manila.share.manager
2016-09-15 17:45:44.317 2732 ERROR oslo_service.periodic_task [req-a24899f7-4d96-4780-9f52-1d381654ee74 - - - - -] Error during ShareManager._report_driver_status
2016-09-15 17:45:44.317 2732 ERROR oslo_service.periodic_task Traceback (most recent call last):
2016-09-15 17:45:44.317 2732 ERROR oslo_service.periodic_task File "/usr/lib/python2.7/site-packages/oslo_service/periodic_task.py", line 220, in run_periodic_tasks
2016-09-15 17:45:44.317 2732 ERROR oslo_service.periodic_task task(self, context)
2016-09-15 17:45:44.317 2732 ERROR oslo_service.periodic_task File "/usr/lib/python2.7/site-packages/manila/utils.py", line 615, in wrapper
2016-09-15 17:45:44.317 2732 ERROR oslo_service.periodic_task raise exception.DriverNotInitialized(driver=driver_name)
2016-09-15 17:45:44.317 2732 ERROR oslo_service.periodic_task DriverNotInitialized: Share driver 'GenericShareDriver' not initialized.
很明顯, 錯誤的根本原因是找不到CIFSHelper這個類. 檢視manila.conf配置檔案, 發現對generic這個後端儲存有如下配置:
share_helpers = CIFS=manila.share.drivers.generic.CIFSHelper,NFS=manila.share.drivers.generic.NFSHelper
這個配置檔案是由packstack生成的, 應該是版本不一致導致了配置檔案資訊有誤. 檢視Liberty版本的manila/manila/share/drivers/generic.py
檔案, 發現該檔案有CIFSHelper類. 但是到了Mitaka版本, 該檔案已經沒有這個類了. 因此導致了錯誤. 配置檔案是針對Liberty版本生成的.
下面手動修改配置檔案.
3.2 殺掉share程序
3.3 修改配置檔案
[[email protected] ~(keystone_admin)]# vim /etc/manila/manila.conf
share_helpers = CIFS=manila.share.drivers.helpers.CIFSHelperIPAccess,NFS=manila.share.drivers.helpers.NFSHelper
3.4 重啟manila-share服務
[root@packstack ~]# /usr/bin/python2 /usr/bin/manila-share --config-file /usr/share/manila/manila-dist.conf --config-file /etc/manila/manila.conf --logfile /var/log/manila/share.log
此時再檢視manila pool:
[[email protected] ~(keystone_admin)]# manila pool-list
+---------------------------+-----------+---------+---------+
| Name | Host | Backend | Pool |
+---------------------------+-----------+---------+---------+
| [email protected]generic#generic | packstack | generic | generic |
+---------------------------+-----------+---------+---------+
4. Permission denied: ‘/var/log/nova/nova-manage.log’
安裝成功後可能還會遇到一個問題, 如下:
[root@packstack ~]# cat /var/spool/mail/root
time: 2016年09月15日 星期四 12時01分05秒
cmdline: /usr/bin/python2 /bin/nova-manage db archive_deleted_rows --max_rows 100
uid: 162 (nova)
abrt_version: 2.1.11
event_log:
executable: /bin/nova-manage
hostname: packstack
kernel: 3.10.0-327.el7.x86_64
last_occurrence: 1473998463
pid: 24458
pkg_arch: noarch
pkg_epoch: 1
pkg_name: openstack-nova-common
pkg_release: 1.el7
pkg_version: 13.1.0
runlevel: N 5
username: nova
backtrace:
:__init__.py:925:_open:IOError: [Errno 13] Permission denied: '/var/log/nova/nova-manage.log'
:
:Traceback (most recent call last):
: File "/bin/nova-manage", line 10, in <module>
: sys.exit(main())
: File "/usr/lib/python2.7/site-packages/nova/cmd/manage.py", line 1517, in main
: logging.setup(CONF, "nova")
: File "/usr/lib/python2.7/site-packages/oslo_log/log.py", line 243, in setup
: _setup_logging_from_conf(conf, product_name, version)
: File "/usr/lib/python2.7/site-packages/oslo_log/log.py", line 319, in _setup_logging_from_conf
: filelog = file_handler(logpath)
: File "/usr/lib64/python2.7/logging/handlers.py", line 392, in __init__
: logging.FileHandler.__init__(self, filename, mode, encoding, delay)
: File "/usr/lib64/python2.7/logging/__init__.py", line 902, in __init__
: StreamHandler.__init__(self, self._open())
: File "/usr/lib64/python2.7/logging/__init__.py", line 925, in _open
: stream = open(self.baseFilename, self.mode)
:IOError: [Errno 13] Permission denied: '/var/log/nova/nova-manage.log'
解決如下:
[root@packstack ~]# chmod 777 /var/log/nova/nova-manage.log
[root@packstack ~]# su -s /bin/sh -c "nova-manage db sync" nova
相關推薦
Centos7+Packstack安裝部署Openstack Mitaka之(一) 安裝Packstack
學習Openstack的前兩個月, 時間都花在環境部署上了, 主要是版本的問題, 導致了一系列的麻煩. 之前使用devstack已經部署成功了, 但是manila不能用, 殘念, 問題主要出在網路上, 研究完manila的網路模組之後再回頭找原因吧. 不打
Centos7手動部署Openstack Mitaka版安裝配置--(三)安裝keystone認證服務
安裝keystone認證服務 1、建立keystone資料庫 #mysql -uroot -phncgo110 -e "CREATE DATABASE keystone;" 注意將hncgo110替換為自己的資料庫密碼 2、建立資料庫使用者及賦予許可
Centos7手動部署Openstack Mitaka版安裝配置--(八)命令建立並使用例項
使用命令建立一臺虛擬機器例項 1、在控制節點上,載入 admin 憑證來獲取管理員能執行的命令訪問許可權 #source /root/admin-openrc 2、建立網路介面 #neutron net-create --shared --pro
Centos7手動部署Openstack Mitaka版安裝配置--(七)安裝dashboard
安裝dashboard WEB控制檯 1、安裝dashboard服務 #yum install openstack-dashboard -y 2、修改配置檔案/etc/openstack-da
Centos7安裝部署openstack--nova計算服務
一、概述 使用OpenStack計算服務來託管和管理雲端計算系統。OpenStack計算服務是基礎設施即服務(IaaS)系統的主要部分,模組主要由Python實現。 OpenStack計算元件請求OpenStack Identity服務進行認證;請求OpenStack Image服務提供磁碟映象;為O
Fuel 9.0 部署Openstack Mitaka詳細
fuel-9.0 openstack 漫漫求索Openstack路---Fuel 9.0 部署Openstack Mitaka詳細(排坑版)0、前言不想搭建環境,官方提供測試Fuel 9.0的demo環境 http://demo.fuel-infra.org:8000(只要你電腦能上外網)默認用戶名、
照著官網來安裝openstack pike之glance安裝
for 本地 net 文件系統 reg poi glance服務 來安 rate 鏡像服務image service(glance)的安裝還是在控制節點上進行: 1、前提條件,數據庫為glance創建庫和賬戶密碼來連接數據庫 # mysql -u root -p Mar
使用Fuel 9.0快速部署Openstack Mitaka(其實也就用了五六個小時吧)
testing send onf perf nds 鍵盤 operation 如何 and 關於什麽是Fuel以及Fuel的作用和構架可以參考下面Openstack官方給出的Wiki鏈接. https://wiki.openstack.org/wiki/Fuel. 在安
CentOS7下安裝部署ES及head外掛安裝
1.新建一個使用者elasticsearch,當然也可以不建立使用者,直接用系統使用者來安裝和執行elasticserach [[email protected] ~]#useradd elasticsearch 接下來修改系統配置,這裡不修改的話es執行會報錯:
Mirantis fuel 9.0 離線快速部署 Openstack Mitaka
MOS 9.0是Mirantis公司開發 openstack自動化安裝工具,這個工具還有個專門的名字,叫做Fuel。 離線安裝時不需要更新Ubuntu和MOS包,即不需要網際網路連線。在同等網路頻寬情況下可以比線上安裝更快地部署。運氣不好的話,用線
CityEngine2011安裝部署 for Windows(一)
安裝CityEngine之前,首先得下載CityEngine安裝程式並且獲得授權許可(啟用碼或許可檔案)。注:試用版本不需要授權許可,安裝完成即可試用30天。 1、軟體安裝 首先,瀏覽到CityEngine安裝程式。 雙擊CityEngine安裝程式,開始安裝。 點選【
PRESTO安裝部署和引數說明(一)
PRESTO部署和引數說明(一) 一,概要 在部署和使用presto的過程中,在此記錄一下部署記錄和使用記錄以及需要注意的事項。本人使用的presto版本是0.214,3臺redhat虛擬機器。使用背景:客戶需要定期查詢大批量的資料,最後選擇了sqoop工具定期匯入hive,並且定期刪除定期更新,因為沒有
Amabri 2.1安裝HDP2.3.2 之 一、HDP介紹
一、HDP (一)簡介 HDP全稱是Hortonworks Data Platform,是由一家美國大資料公司Hortonworks開發的企業級Hadoop平臺。 Hortonworks致力於幫助客戶利用Hadoop開源大資料平臺管理資料。HDP是完全
ubuntu1404單機安裝部署openstack-juno
Redhat上可以很快的使用All-in-one的方式安裝openstack,先安裝packstack,然後通過packstack --allinone這條命令 就可以一步安裝openstack,最後設定IP和網橋,就可以完成安裝,但是在ubuntu卻無法通過一步就
【安裝部署】Linus小工具安裝
1.Telnet命令安裝 rpm -qa | grep xinetd yum -y install xinetd rpm -qa telnet-server yum install telnet  
ArchLinux 安裝+美化--2018.8.24(一.安裝系統)
簡要介紹 : Win10 + Arch 雙系統安裝步驟,關於雙系統,會在接下來的篇章裡介紹。 下文介紹的是Arch 單獨系統安裝,關於雙系統要注意的也會寫上的。 我會一步步寫出 ,不要覺得複雜,按部就班還是很容易上手的 。 分割槽採用的GPT+UEFI 包括雙顯示
Linux安裝MySQL8.0.12之二進位制安裝
開發十年,就只剩下這套架構體系了! >>>
Hadoop學習------Hadoop安裝方式之(一):單機部署
root權限 出錯 密碼登錄 例子 .tar.gz sta /usr 成功 tput Hadoop 默認模式為單機(非分布式模式),無需進行其他配置即可運行。非分布式即單 Java 進程,方便進行調試。 1、創建用戶 1.1創建hadoop用戶組和用戶 一般我們不會
Openstack 安裝部署指南翻譯系列 之 網絡
openstack 翻譯 網絡網絡包括兩種類型,網絡選項1:提供商網絡(Provider networks)和網絡選項2:自助網絡(Self-service networks),其中網絡選項2:自助網絡(Self-service networks)能夠實現更加高級的網絡功能,能夠實現網絡選項1的所有功能,因此
Openstack安裝部署指南翻譯系列 之 硬件需求
openstack 翻譯1.1.1.1. 控制節點控制器節點運行身份服務,鏡像服務,計算的管理部分,網絡的管理部分,各種網絡代理和儀表板。它還包括支持服務,如SQL數據庫,消息隊列和NTP。可選地,控制節點運行塊存儲,對象存儲,編排和計量服務的部分。控制器節點至少需要兩個網絡接口。1.1.1.2. 計算節點計