ownCloud 内核是用PHP5写的,支持SQLite、MySQL、Oracle以及PostgreSQL等数据库。为了简单,我们将用MySQL数据库。在你的Linux系统下你需要安装以下软件:
PHP 安装包:php5, php5-gd, php-xml- parser,php5-intl
数据库驱动:php5-mysql(如果你使用其他数据库,需要安装相应的数据库以及驱动)
Curl 安装包:curl, libcurl3, php5-curl
SMB 客户端:smbclient (这个用来挂载windows共享文件夹的)
Web 服务器:apache2
如果你的Linux是基于Debian的,你可以运行下面的命令一键安装所有的软件:
$ sudo apt-get install apache2 php5 php5-gd php-xml-parser php5-intl php5-sqlite php5-mysql smbclient curl libcurl3 php5-curl mysql-server
第二步:安装ownCloud——设置web 根目录。
从http://owncloud.org/releases/ 网站上下载最新版的ownCloud,对于本教程,我们使用owncloud-4.5.6 版本。到此,我们需要设置web服务器的根目录,对于基于Debian发行版的Linux系统,根目录为/var/www,将ownCloud安装包解压到此目录下。如下命令:
$ tar xjf owncloud-4.5.6.tar.bz2
$ cp -r -v owncloud/ /var/www/guohlcloud/
在我们的例子中,以guohlcloud作为安装的根目录。
OwnCloud在安装的过程中需要对一些目录有写的权限,为此,web服务器用户(www-data对于基于Debian的系统)必须要拥有apps、data、config目录的权限。运行以下命令完成:
$ cd /var/www/ludcloud
#这个文件夹不存在,但在安装过程中需要,应该先建立。
$ sudo mkdir data/
$ sudo chown -R www-data:www-data data
$ sudo chown -R www-data:www-data config
$ sudo chown -R www-data:www-data apps
第三步:安装ownCloud——配置web服务器。
这一步我们要为 ownCloud配置Apache服务器,OwnCloud需要启用 Apache上 .htaccess 文件,.htaccess文件(或者"分布式配置文件")提供了针对目录改变配置的方法。为了启用web服务器上的.htaccess,可以通过 Apache配置文件(基于Debain系统是/etc/apache2/sites-enabled/000-default)的 AllowOverride指令来设置。
var/www/>
Options Indexes
FollowSymLinks MultiViews
AllowOverride All
Order allow,deny
allow from all
下一步我们需要启动Apache的mod_rewrite模块,mod_rewrite模块提供了实时地将访问者请求的静态URL地址映射为动态查询字符串的一种规则。运行下面的命令来启动这个模块:
$ sudo a2enmod rewrite
$ sudo a2enmod headers
一旦你使能了这个必要的模块,你可以重启apache服务来使之生效:
$ sudo service apache2 restart
众说周知Amazon EC2是一个公共云的计算平台,属于IaaS(基础设施即服务)这类.现在有一款开源的项目Eucalyptus(Elastic Utility Computing Architecture for Linking Your Programs To Useful Systems),同样实现了Amazon EC2的功能,由于其开源性,注定了搭建一个私有的云计算平台成为可能. 更方便的是Ubuntu9.10服务器版已经集成了Eucalyptus这个开源软件,使的搭建企业私有的云计算平台变得方便而简单.
下面我们将一步步来搭建这个私有的云计算平台.
一 准备工作
1) 至少准备两台机器, 当然我这里是用虚拟机软件(Sun VirtualBox)来虚拟出两台实际的机器 (如果你也采用Sun VirtualBox,有些注意事项,可以参见后面的附录一)
2) 底层操作系统: Ubuntu9.10 服务器版 (http://www.ubuntu.com/cloud)
3) 云服务环境 : Eucalyptus , ( Ubuntu9.10 服务器版 内置) http://eucalyptus.com/
4) Eucalyptus 命令行客户端
5) Eucalyptus客户端: Elastic Fox ,这是一个firefox插
件 : http://developer.amazonwebservices.com/connect/entry.jspa?externalID=609
--------------------------------------------------------------------------
二 云计算服务的搭建(使用Ubuntu自带的向导,十分简单的哦)
1) 一台机器, 作为Cluster(Front End) , 命名为: ubuntu-cluster , 它包含了如下部分
1. Cloud Controller (clc)
2. Cluster Controller (cc)
3. Walrus (the S3-like storage service)
4. Storage Controller (sc)
5.
2) 至少一台机器作为Node, 命名为: ubuntu-node1,它包含了如下部分
Node Controller (nc)
3) 在作为Cluster的机器上 ,安装基本系统: Ubuntu9.10 服务器版
1.安装引导时,要选择 "Install Ubuntu Enterprise Cloud"
2. 安装过程中,如果提示"Cluster" 还是"Node",一定要选择Cluster
3.安装过程中,提示"Configure postfix" 时 选择 internet Site
4. 安装过程中,提示"Name your cluster" 时 ,请取一个合适的名字,比如我取之为: cluster1
5. 安装过程中,提示"a list of available IP addresses on your network", 一定要选择一个可用的公共IP段.
4) 在作为Node的机器上 ,也安装基本系统: Ubuntu9.10 服务器版
1.安装引导时,要选择 "Install Ubuntu Enterprise Cloud"
2. 安装过程中,如果提示"Cluster" 还是"Node",一定要选择Node, (如果Cluster正在运行,这一步可能不会出现,自动会选择Node
3.安装完一个节点后,,后续的节点可以采用克隆方法,参见后面的 附录二
5) 在Cloud Controller(位于ubuntu-cluster)上注册所有的Node机器: 在ubuntu-cluster上执行:
1. sudo euca_conf --no-rsync --discover-nodes
2.
至此,一个私有的云计算平台已经搭建好了,下面就开始说,如何使用了,很简单吧!
三 云计算平台管理之命令行工具(Euca2ools)
1)在 https://YourIP:8443 中注册个人信息然后登录下载 证书 euca2-yourname-x509 .zip
2) 在客户端机器上执行
1. $ mkdir ~/.euca
2. $ cd ~/.euca
3. $ unzip euca2-yourname-x509 .zip
4. $ chmod 0700 ~/.euca
5. $ chmod 0600 ~/.euca/*
6.
3) 在客户端机器上执行, 安装 Euca2ools 和 EC2-API-Tools
1. . ~/.euca/eucarc
2. echo "[ -r ~/.euca/eucarc ] &&. ~/.euca/eucarc" >>~/.bashrc
3. sudo apt-get install euca2ools
4. sudo apt-get install ec2-api-tools
5. sudo reboot
6.
4)在客户端机器,使用 Euca2ools 上传 Kernel / Ramdisk / FS Image (使用者可注册 Image,但只有管理者才可注册 kernel/ramdisks)
1. 目前 Eucalyptus 系统上没有 Kernel、Ramdisk 和 FS Image,所以我们使用官方提供的 Image (上传需要用到三个指令)
1. euca-bundle-image - 打包好将要上传的档案
2. euca-upload-bundle - 上传到 Eucalyptus
3. euca-register - 注册上传的档案
4.
2. 上传Kernel,如:
1. euca-bundle-image -i /boot/vmlinuz-2.6.31-14-generic-pae --kernel true
2. euca-upload-bundle -b kernel -m /tmp/vmlinuz-2.6.31-14-generic-pae.man
ifest.xml
3. euca-register kernel/vmlinuz-2.6.31-14-generic-pae.manifest.xml
4.
3.上传 Ramdisk
1. euca-bundle-image -i /boot/initrd.img-2.6.31-14-generic-pae --ramdisk
true
2. euca-upload-bundle -b ramdisks -m /tmp/initrd.img-2.6.31-14-generic-pa
e.manifest.xml
3. euca-register ramdisks/initrd.img-2.6.31-14-generic-pae.manifest.xml 4.
4. 查看已上传到档案:
方法一: https://YourIP:8443/#images
方法二: euca-describe-images
5. 根据查看的结果,上传FS Images:(分配 Kernel 和 Ramdisks 给 VMs 有三种方法,见附录三)
1. tar zxvf karmic-server-uec-i386.tar.gz
2. euca-bundle-image -i karmic-server-uec-i386.img --kernel eki-977213C6
--ramdisk eri-0CBA157D
3. euca-upload-bundle -b images -m /tmp/karmic-server-uec-i386.img.manife
st.xml
4. euca-register images/karmic-server-uec-i386.img.manifest.xml
5.
5) 申请 key pair,以便 ssh 登入 instance
1. ec2-add-keypair mykey >mykey.private
2. chmod 0600 mykey.private
3.
6) 在客户端机器,开启虚拟机.
1.查看 euca-describe-images ,获得希望启动Image emi
2.启动一个虚拟机:
1. euca-run-instances -k mykey -n 1 emi-8022139D
2.
3.查看这个虚拟机的基本信息,比如IP地址,和 此实例id
1. euca-describe-instances
2.
4.登录这个新启动的虚拟机
1. ssh -i mykey.private root@192.168.100.X
2.
5.终止这个虚拟机实例
1. euca-describe-instances(获得instance-id)
2. euca-terminate-instances <instance-id>
3.
附录一: 虚拟测试环境的搭建:
1.虚拟机软件: Sun VirtualBox
2.管理 ->全局设定 ->网络 中 选择 "Host-Only" 点编辑,然后选择 "DHCP服务器", 禁用"启用服务器"
3建立两台虚拟机, Linux/Ubuntu ,网络选择Host-Only方式
4在宿主机器上,将可以联互联网的 网卡设置为 针对 Host-Only 网卡的共享
说明,这里之所以采用 , Host-Only + 通过宿主机器共享上网 ,而不采用Bridged的联网方式,是前者可以在离开网络支持的情况下, 虚拟机之间的关系保持不变.
推荐使用KodExplorer可道云+花生壳+旧电脑(智能路由器/NAS等)方案,可以完美地构建私有云。可道云是一个在线文档管理系统,可以用来架设私有云,体验很牛逼,有点web OS的概念,和Windows体验高度一致,几乎相当于在线操作系统,支持在线浏览各种格式文件,全格式解压,快捷键操作,拖拽上传,远程下载等功能,个人觉得比国外owncloud的使用和配置上比还要更好用一点,比百度云某些方面还牛逼些。
芒果云可以安装在旧电脑上,也可以装在像联想newifi路由器上,或者放在群晖,威联通之类的NAS上。
安装好了KodExplorer以后,因为设备一般在内网,需要通过花生壳穿透内网。可以去花生壳注册个二级域名,这样就可以随时随地享受自己搭建的私有云了。
p.s.这个方案唯一的bug在于花生壳免费版支持太弱,想用的爽需要买服务。不过内网搭建都会遭遇穿透问题,哎,反正想不花钱搞,怎么弄弄到最后都有些膈应。
另外,如果手头有银子,请自觉将旧电脑换成服务器,或者至少是个群晖啥的
欢迎分享,转载请注明来源:夏雨云
评论列表(0条)