在J版的OpenStack上安裝Sahara

聲明:

本博客歡迎轉載,但請保留原作者信息,並請註明出處!

作者:郭德清

團隊:華爲杭州OpenStack團隊


        最近開始接觸Sahara,爲了玩起來,第一步就是要搭建一個Sahara的環境,下面主要是我安裝的過程,裏面大部分參考的是官網的文檔,但是裏面還有一些細節需要注意下。

 

1.   安裝一個openstack的原生環境,這邊是通過之前同事製作好的鏡像,直接起一個虛擬機(Ubuntu 14.04 OpenStack J版)。

2.   環境安裝設置完,設置下IP方便遠程接入,還有配置下nameserver(在/etc/resolv.conf中添加一條記錄:

nameserver 8.8.8.8


3.   更新系統的源,這裏推薦阿里的源,速度不錯。修改前最好先備份下原來的源,路徑是:/etc/apt/ sources.list

deb http://mirrors.aliyun.com/ubuntu/ trusty main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ trusty-security main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ trusty-updates main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ trusty-proposed main restricted universe multiverse
deb http://mirrors.aliyun.com/ubuntu/ trusty-backports main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ trusty main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ trusty-security main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ trusty-updates main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ trusty-proposed main restricted universe multiverse
deb-src http://mirrors.aliyun.com/ubuntu/ trusty-backports main restricted universe multiverse


修改完,執行以下命令,執行更新,時間一般會比較久:

apt-get update
apt-get upgrade
apt-get dist-upgrade


 

4.   安裝需要的軟件包

apt-get install python-setuptools python-virtualenv python-dev


 

5.   從pypi安裝最新版本的Sahara

pip install sahara


也可以通過pip指定地址安裝:

pip install 'http://tarballs.openstack.org/sahara/sahara-master.tar.gz'


 

6.   修啓動服務之前需要先準備一些賬號:

      a、創建keystone賬號,並添加角色

keystone user-password-update --pass openstack sahara
keystone user-role-list --user sahara --tenant service
keystone user-role-add --user sahara --tenant service --role admin


      b、添加keystone的endpoint

keystone service-create --name sahara --type data_processing \
    --description "Sahara Data Processing"

keystone endpoint-create --service sahara --region RegionOne \
    --publicurl "http://192.168.206.190:8386/v1.1/%(tenant_id)s" \
    --adminurl "http://192.168.206.190:8386/v1.1/%(tenant_id)s" \
    --internalurl "http://192.168.206.190:8386/v1.1/%(tenant_id)s"


      這邊有一個需要注意的是,創建service的時候,官方文檔上面service的type是data-rocessing,而時間代碼中用的是data_processing。

      c、修改mysql的配置,把max_allowed_packet大小改爲256M

            vim /etc/mysql/my.cnf

           修改完重啓數據庫服務:

service mysql restart

 

       d、登錄數據庫,創建sahara用戶和sahara數據庫,並添加權限:

create user sahara IDENTIFIED by 'openstack';
grant alert,select,insert,update,delete,create,drop on sahara.* to sahara identified by 'openstack';


            創建sahara的數據庫表:

sahara-db-manage --config-file  /etc/sahara.conf upgrade head

 

7. 進行Shara的配置,配置模板在/usr/local/share/sahara/sahara.conf.sample-basic目錄下

cp /usr/local/share/sahara/sahara.conf.sample-basic /etc/sahara.conf


        修改sahara.conf的配置文件(配置的含義,在/usr/local/share/sahara/sahara.conf.sample-basic中有比較詳細的描述,需要配置rabbit database keystone等配置。

[DEFAULT]
use_neutron=true
use_floating_ips=false
debug=true
verbose=true
log_file=sahara.log
log_dir=/var/log
#plugins=vanilla,hdp,spark
rpc_backend = rabbit
rabbit_host=192.168.206.190
rabbit_port=5672
rabbit_hosts=$rabbit_host:$rabbit_port
rabbit_userid=guest
rabbit_password=openstack
rabbit_virtual_host=/

[database]
connection = mysql://sahara:[email protected]/sahara

[keystone_authtoken]
auth_uri = http://192.168.206.190:5000
identity_uri=http://192.168.206.190:35357/
admin_tenant_name = service
admin_user = sahara
admin_password = openstack

8.   設置policy文件

        在sahara配置文件的同一個目錄(/etc/sahara)下,創建一個policy.json的文件,當然也可以在配置文件中指定policy_file 和 policy_dirs。

默認是運行所有用戶訪問所有的方法:

{
    "default": ""
}


        下面這個配置不允許非admin用戶訪問鏡像的主要方法:

{
    "default": "",
    "images:register": "role:admin",
    "images:unregister": "role:admin",
    "images:add_tags": "role:admin",
    "images:remove_tags": "role:admin"
}


 

9.   啓動sahara服務

sahara-all --config-file /etc/sahara/sahara.conf &


      確認服務是否啓動正常:

sahara --debug cluster-list


 

【參考資料】

http://docs.openstack.org/developer/sahara/userdoc/installation.guide.html#to-install-into-a-virtual-environment

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章