1. 程式人生 > >菜鳥幫你跳過openstack配置過程中的坑

菜鳥幫你跳過openstack配置過程中的坑

如果 working ack 大坑 nbsp 模式 con ror centos

一:前言

對於一個以前做java全棧工程師而言,而且沒學過Linux,很少用虛擬機(還是在大學的時候簡單的用過),去配置openstack我想我入的坑肯定比有基礎的一定要多,躺在每個坑中徘徊思索的時間一定比老鳥們久。所以現在總結一下openstack在配置過程中的幾大坑點,讓各位在配置過程中不再問天問大地,靈魂一片片雕落。

1. 如果是新手一定要學會用快照,一定要多用快照,從鏡像安裝完成開始,最好每一個章節模塊配置完成後都用上一個快照,人生苦短,快照幫你性感。

2.一定要仔細看配種配置以及環境要求,比如控制節點: 1 處理器, 4 GB 內存, 及5 GB 存儲,環境沒達到只能當練手。

3.一定要選擇自己要配置的版本,openstack目前版本不定更新,所以如果不固定版本,只從官方文檔打開,將給配置帶來很多問題。

二:入坑指南

1.坑一SQL數據庫

技術分享

在為數據庫的root設置適當密碼時一定要註意,一步錯誤後面將直接無法賦予權限,那麽應該怎麽設置嘞?看下面。

技術分享

建議直接運行命令# echo -e "\nY\n123456\n123456\nY\nn\nY\nY\n" | mysql_secure_installation

來代替原來的mysql_secure_installation。這樣將免去中間的設置。

2.坑二配置Linuxbridge代理

技術分享

這兩個地方在compute和controller中將配置什麽嘞?

直接揭曉答案吧,physical_interface_mappings = provider:PROVIDER_INTERFACE_NAME在controller和compute中都配置第二個網盤的名字。

local_ip = OVERLAY_INTERFACE_IP_ADDRESS看名字local_ip本地ip嘛,所以
在controller和compute中分別配置各自的靜態ip。

3.坑三Networking 服務neutron agent-list中不顯示compute

這個可能原因有很多,但從我的錯誤來看,,你關閉了防火墻嗎??你關閉了SELinux嗎?? SELinux怎麽關閉??

查看SELinux狀態:

1、/usr/sbin/sestatus -v ##如果SELinux status參數為enabled即為開啟狀態

SELinux status: enabled

2、getenforce ##也可以用這個命令檢查

關閉SELinux:

1、臨時關閉(不用重啟機器):

setenforce 0 ##設置SELinux 成為permissive模式

##setenforce 1 設置SELinux 成為enforcing模式

2、修改配置文件需要重啟機器:

修改/etc/selinux/config 文件

將SELINUX=enforcing改為SELINUX=disabled

重啟機器即可

4.坑點四openstack中dashboard頁面RuntimeError: Unable to create a new session key. It is likely that the cache is unavailable.

環境是centos7,直接跑在服務器上。

按照官網一步步安裝openstack,到驗證dashborad時出錯。

登錄http://192.168.1.73/dashboard ,輸入域名,用戶名,密碼,出現錯誤,無法進入界面

技術分享

tail -40 /etc/httpd/logs/error_log 查看打印

發現

技術分享
[Sat Aug 12 19:42:16.701521 2017] [:error] [pid 10885] Could not process panel theme_preview: Dashboard with slug "developer" is not registered.
[Sat Aug 12 19:44:41.533207 2017] [:error] [pid 10885] Login successful for user "admin".
[Sat Aug 12 19:45:52.537140 2017] [:error] [pid 10885] Internal Server Error: /dashboard/auth/login/
[Sat Aug 12 19:45:52.556116 2017] [:error] [pid 10885] Traceback (most recent call last):
[Sat Aug 12 19:45:52.556129 2017] [:error] [pid 10885]   File "/usr/lib/python2.7/site-packages/django/core/handlers/base.py", line 223, in get_response
[Sat Aug 12 19:45:52.556135 2017] [:error] [pid 10885]     response = middleware_method(request, response)
[Sat Aug 12 19:45:52.556140 2017] [:error] [pid 10885]   File "/usr/lib/python2.7/site-packages/django/contrib/sessions/middleware.py", line 50, in process_response
[Sat Aug 12 19:45:52.556145 2017] [:error] [pid 10885]     request.session.save()
[Sat Aug 12 19:45:52.556148 2017] [:error] [pid 10885]   File "/usr/lib/python2.7/site-packages/django/contrib/sessions/backends/cache.py", line 53, in save
[Sat Aug 12 19:45:52.556153 2017] [:error] [pid 10885]     return self.create()
[Sat Aug 12 19:45:52.556157 2017] [:error] [pid 10885]   File "/usr/lib/python2.7/site-packages/django/contrib/sessions/backends/cache.py", line 48, in create
[Sat Aug 12 19:45:52.556180 2017] [:error] [pid 10885]     "Unable to create a new session key. "
[Sat Aug 12 19:45:52.556185 2017] [:error] [pid 10885] RuntimeError: Unable to create a new session key. It is likely that the cache is unavailable.
[Sat Aug 12 20:15:27.128247 2017] [:error] [pid 10885] Login successful for user "admin".
[Sat Aug 12 20:15:33.377599 2017] [:error] [pid 10885] Internal Server Error: /dashboard/auth/login/
[Sat Aug 12 20:15:33.377660 2017] [:error] [pid 10885] Traceback (most recent call last):
[Sat Aug 12 20:15:33.377665 2017] [:error] [pid 10885]   File "/usr/lib/python2.7/site-packages/django/core/handlers/base.py", line 132, in get_response
[Sat Aug 12 20:15:33.377668 2017] [:error] [pid 10885]     response = wrapped_callback(request, *callback_args, **callback_kwargs)
[Sat Aug 12 20:15:33.377671 2017] [:error] [pid 10885]   File "/usr/lib/python2.7/site-packages/django/views/decorators/debug.py", line 76, in sensitive_post_parameters_wrapper
[Sat Aug 12 20:15:33.377674 2017] [:error] [pid 10885]     return view(request, *args, **kwargs)
[Sat Aug 12 20:15:33.377677 2017] [:error] [pid 10885]   File "/usr/lib/python2.7/site-packages/django/utils/decorators.py", line 110, in _wrapped_view
[Sat Aug 12 20:15:33.377680 2017] [:error] [pid 10885]     response = view_func(request, *args, **kwargs)
[Sat Aug 12 20:15:33.377682 2017] [:error] [pid 10885]   File "/usr/lib/python2.7/site-packages/django/views/decorators/cache.py", line 57, in _wrapped_view_func
[Sat Aug 12 20:15:33.377685 2017] [:error] [pid 10885]     response = view_func(request, *args, **kwargs)
[Sat Aug 12 20:15:33.377688 2017] [:error] [pid 10885]   File "/usr/lib/python2.7/site-packages/openstack_auth/views.py", line 103, in login
[Sat Aug 12 20:15:33.377691 2017] [:error] [pid 10885]     **kwargs)
[Sat Aug 12 20:15:33.377694 2017] [:error] [pid 10885]   File "/usr/lib/python2.7/site-packages/django/views/decorators/debug.py", line 76, in sensitive_post_parameters_wrapper
[Sat Aug 12 20:15:33.377697 2017] [:error] [pid 10885]     return view(request, *args, **kwargs)
[Sat Aug 12 20:15:33.377699 2017] [:error] [pid 10885]   File "/usr/lib/python2.7/site-packages/django/utils/decorators.py", line 110, in _wrapped_view
[Sat Aug 12 20:15:33.377702 2017] [:error] [pid 10885]     response = view_func(request, *args, **kwargs)
[Sat Aug 12 20:15:33.377704 2017] [:error] [pid 10885]   File "/usr/lib/python2.7/site-packages/django/views/decorators/cache.py", line 57, in _wrapped_view_func
[Sat Aug 12 20:15:33.377707 2017] [:error] [pid 10885]     response = view_func(request, *args, **kwargs)
[Sat Aug 12 20:15:33.377709 2017] [:error] [pid 10885]   File "/usr/lib/python2.7/site-packages/django/contrib/auth/views.py", line 51, in login
[Sat Aug 12 20:15:33.377712 2017] [:error] [pid 10885]     auth_login(request, form.get_user())
[Sat Aug 12 20:15:33.377714 2017] [:error] [pid 10885]   File "/usr/lib/python2.7/site-packages/django/contrib/auth/__init__.py", line 110, in login
[Sat Aug 12 20:15:33.377717 2017] [:error] [pid 10885]     request.session.cycle_key()
[Sat Aug 12 20:15:33.377720 2017] [:error] [pid 10885]   File "/usr/lib/python2.7/site-packages/django/contrib/sessions/backends/base.py", line 285, in cycle_key
[Sat Aug 12 20:15:33.377723 2017] [:error] [pid 10885]     self.create()
[Sat Aug 12 20:15:33.377725 2017] [:error] [pid 10885]   File "/usr/lib/python2.7/site-packages/django/contrib/sessions/backends/cache.py", line 48, in create
[Sat Aug 12 20:15:33.377728 2017] [:error] [pid 10885]     "Unable to create a new session key. "
[Sat Aug 12 20:15:33.377730 2017] [:error] [pid 10885] RuntimeError: Unable to create a new session key. It is likely that the cache is unavailable.
技術分享

意思大概是:

因為它周期性連接到非本地緩存有問題。官網寫的有bug。

/etc/openstack-dashboard/local_settingsSESSION_ENGINE = ‘django.contrib.sessions.backends.cache‘ 應改為
SESSION_ENGINE = ‘django.contrib.sessions.backends.file‘

重啟服務,然後重新登錄成功。

技術分享

三: 提問榜

以上是我在部署openstack過程中遇到的幾個疑問點,可能“亂拳打死老師傅”一般避開了各位的疑難點,各位可在留言中向我提問,願意向各位討教!----yh

菜鳥幫你跳過openstack配置過程中的坑