您好,登錄后才能下訂單哦!
本篇內容介紹了“ceph和keystone的配置教程”的有關知識,在實際案例的操作過程中,不少人都會遇到這樣的困境,接下來就讓小編帶領大家學習一下如何處理這些情況吧!希望大家仔細閱讀,能夠學有所成!
一、 背景介紹
Ceph對象存儲模塊rgw與keystone可以對接。從而實現所有的對象存儲帳號信息可以由keystone管理,keystone負責保存和認證swift和s3的賬戶及密碼。這些賬號信息不必在rgw中手動創建。在cliend端連接s3及swift時,rgw會向keystone發送認證請求,是否通過認證由keystone決定。
二、 配置文檔
1.ceph配置
Rgw支持keystone v2及keystone v3認證。針對我的keystone v2生產環境,rgw 所需配置如下:
#開啟s3 keystone認證
rgw_s3_auth_use_keystone = true
#keystone服務認證endpoint地址。s3作為內部服務,社區建議使用35357內部端口。
rgw_keystone_url = http://192.168.242.128:35357
#生產環境建議關閉admin_token認證。采用下列user,password,tenant組合替代
#rgw_keystone_admin_token = 1
#keystone中admin的信息
#如果采用admin_user的方式登錄,需要配置nss_db_path地址
nss_db_path = /var/ceph/nss
rgw_keystone_admin_user = admin
rgw_keystone_admin_password = 1
rgw_keystone_admin_tenant=admin
#keystone v2認證
rgw_keystone_api_version = 2
#目前生產環境keystone沒有開啟ssl認證,所以關閉此認證。
rgw_keystone_verify_ssl=false
#rgw接受keystone中的角色名稱。
rgw_keystone_accepted_roles = _member_, Member, admin
2.keystone配置
修改/etc/keystone/keystone-paste.ini如下字段,為如下紅色字體
[filter:revoke_extension]
paste.filter_factory = keystone.contrib.s3:S3Extension.factory
[pipeline:public_api]
# The last item in this pipeline must be public_service or an equivalent
# application. It cannot be a filter.
pipeline = sizelimit url_normalize request_id build_auth_context token_auth admin_token_auth json_body ec2_extension s3_extension user_crud_extension public_service
[pipeline:admin_api]
# The last item in this pipeline must be admin_service or an equivalent
# application. It cannot be a filter.
pipeline = sizelimit url_normalize request_id build_auth_context token_auth admin_token_auth json_body ec2_extension s3_extension crud_extension admin_service
3.生成PKI(admin_token方式不需要)
keystone-manage pki_setup
4.重啟keystone服務
5.創建swift服務
keystone service-create --name swift --type object-store keystone endpoint-create --service-id <id> --publicurl http://radosgw.example.com/swift/v1 \ --internalurl http://radosgw.example.com/swift/v1 --adminurl http://radosgw.example.com/swift/v1
6.簽名pki(必須切換到root用戶,sudo的方式報錯)
mkdir /var/ceph/nss
openssl x509 -in /etc/keystone/ssl/certs/ca.pem -pubkey | \ certutil -d /var/ceph/nss -A -n ca -t "TCu,Cu,Tuw" openssl x509 -in /etc/keystone/ssl/certs/signing_cert.pem -pubkey | \ certutil -A -d /var/ceph/nss -n signing_cert -t "P,P,P"
7.把生成的/var/ceph/nss/下的文件拷貝到rgw主機下的(nss_db_path )這個目錄并修改為ceph:ceph用戶/組。
8.啟動rgw服務
通過openstack ec2系列命令可以創建下列AWS方式的訪問賬戶。Access Key和Secret Key用來訪問S3。
Rgw 的賬戶對應于Keystone的租戶。Keystone中的user對應Gateway中的subuser。在S3中,沒有subuser的概念,因此ec2命令生成的多個access、secret key如果所屬于一個Project ID,則訪問的是相同的bucket資源。。同時需要注意的是,如果私有云使用s3作為backup或者輕量級io負載,keystone認證是沒問題的。如果io請求負載過大,會使keystone的驗證成為瓶頸,并且導致s3的請求超時。
“ceph和keystone的配置教程”的內容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業相關的知識可以關注億速云網站,小編將為大家輸出更多高質量的實用文章!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。