共計 2956 個字符,預計需要花費 8 分鐘才能閱讀完成。
行業資訊
服務器
云計算
基于 owncloud9.1.1 如何開發實現 owncloud 支持 ceph s3 作為 primary storage 功能
本篇文章給大家分享的是有關基于 owncloud9.1.1 如何開發實現 owncloud 支持 ceph s3 作為 primary storage 功能,丸趣 TV 小編覺得挺實用的,因此分享給大家學習,希望大家閱讀完這篇文章后可以有所收獲,話不多說,跟著丸趣 TV 小編一起來看看吧。
Owncloud 對象存儲部署文檔
一. 前言
通過對 owncloud 的開發,使其支持后端 S3 存儲,在部署架構上,S3 存儲端完全可以支持 owncloud 部署要求的“Large Enterprises and Service Providers”,從功能、性能、可靠性、可擴展性、容量等方面滿足大規模云存儲網盤的使用規模。
二. 部署方法
本文以“Small Workgroups or Departments”為例描述單機 owncloud 對接 S3 的部署方式,其他部署方式可以參考 ownclud admin 手冊。本文檔部署環境使用 Ubuntu14.04 x64。
1. 安裝 owncloud 之前,首先需要 Apache, MySQL/MariaDB, PHP 的支持,以下使用 MySQL 作為數據庫進行安裝。
sudo apt-get install apache2 mysql-server libapache2-mod-php5
sudo apt-get install php5-gd php5-json php5-mysql php5-curl
sudo apt-get install php5-intl php5-mcrypt php5-imagick
第一行 安裝運行完之后,MySQL 需要配置 root 用戶的密碼。
2. 安裝 ownCloud,從我的 https://github.com/YangFanlinux/owncloud 下載 owncloud 源碼包,解壓縮到 /var/www 目錄下。至此,owncloud 安裝完畢。
3. Apache 服務器配置, 首先切換到 root 用戶
su root
cd /etc/apache2/sites-available/
vim owncloud.conf
4. 將以下文字復制進 owncloud.conf 配置文件。
Alias /owncloud /var/www/owncloud/
Directory /var/www/owncloud
Options +FollowSymLinks
AllowOverride All
IfModule mod_dav.c
Dav off
/IfModule
Satisfy Any
SetEnv HOME /var/www/owncloud
SetEnv HTTP_HOME /var/www/owncloud
/Directory
Directory /var/www/owncloud/data/
# just in case if .htaccess gets disabled
Require all denied
/Directory
5. 將配置文件 symlink 到 /etc/apache2/sites-enabled 下。
ln -s /etc/apache2/sites-available/owncloud.conf /etc/apache2/sites-enabled/owncloud.conf
6. 創建文件鏈接后,可以看到 /etc/apache2/sites-enabled/ 文件夾下多了一個 owncloud.conf 文件,此文件的更改和 /etc/apache2/sites-available/ 下 owncloud.conf 文件的更改同步。
7. 接下來為可選設置,但建議還是設置一下
a2enmod rewrite
a2enmod headers
a2enmod env
a2enmod dir
a2enmod mime
8. 重啟 Apache
service apache2 restart
9. 開啟 SSL
a2enmod ssl
a2ensite default-ssl
service apache2 reload
10. ownCloud 配置,首先,把 owncloud 目錄的給你的 HTTP user,默認為 www-data
chown -R www-data:www-data /var/www/owncloud/
11. 接下來,使用瀏覽器訪問以下地址,其中 localhost 使用主機內網 IP 代替。注意,先不要創建管理員帳號并登錄。只登錄一下系統,這樣在 /var/www/owncloud/config/ 目錄下會生成默認配置文件。
http://localhost/owncloud
12. 修改配置文件 /var/www/owncloud/config/config.php,如果使用 multibucket 特性可以參考 config.multibucket.php 的配置。如果使用單 bucket 可以參考 config-singbucket.php。以 multibucket 為例,在 config.php 中加入如下配置:
objectstore_multibucket = array (
class = OC\\Files\\ObjectStore\\CephS3 ,
arguments = array (
autocreate = true,// 自動創建 bucket,默認為 true
version = 2006-03-01 ,//AWS s3 版本號
region = ,// 連接 AWS 需要設置,ceph s3 不需要設置
key = E60Z7V7OW9Y1U8WFI9T3 , //s3 rgw 的 key
secret = yf , // s3 rgw 的 secret
endpoint = http://192.168.74.128:80/ ,//ceph s3 的訪問地址
PathStyle = true,// 連接 ceph 為 true,aws 為 false
prefix = neunnowncloud- ,//multi-bucket 需要填寫生成 bucket 的前綴,注意,需要參考 s3 bucket 命名規范。
hashlength = 3 ,// 系統自動生成的 bucket 名字為 prefix+hash,默認取 userid md5 值的前三位作為 hash 值。
),
integrity.check.disabled = true,// 由于進行了代碼二次開發,關閉程序完整性校驗功能
enable_previews = false,// 文件預覽功能有 bug,暫時關閉
13. 設置完后訪問 http://localhost/owncloud,創建管理員并填寫數據庫信息后,即可登錄,owncloud 的所有部署工作完成。
三. 關于 owncloud 版本升級
本次開發基于 owncloud 最新穩定版本 9.1.1,源碼進行了一定的改動并沒有合并入 owncloud 主線版本,所以后續升級不支持官方的自動升級,需要手動把修改代碼 merge 到 owncloud 新版本的代碼。
以上就是基于 owncloud9.1.1 如何開發實現 owncloud 支持 ceph s3 作為 primary storage 功能,丸趣 TV 小編相信有部分知識點可能是我們日常工作會見到或用到的。希望你能通過這篇文章學到更多知識。更多詳情敬請關注丸趣 TV 行業資訊頻道。