码迷,mamicode.com
首页 > Web开发 > 详细

zimg和TFS搭建分布式图片服务器---tfs安装

时间:2015-08-10 20:23:00      阅读:800      评论:0      收藏:0      [点我收藏+]

标签:tfs   图片   zimg   

1、挂载ISO,在最后增加如下一行

[root@localhost ~]# vi /etc/fstab

/dev/cdrom/mediaiso9660 defaults0 0

2、更改yum源

[root@localhost ~]# vi /etc/yum.repos.d/CentOS-Media.repo

[c6-media]
name=CentOS-$releasever - Media
baseurl=file://
/media
gpgcheck=1
enabled=
1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-6


3、删除其他yum源文件

[root@localhost yum.repos.d]# rm -rf CentOS-Base.repo CentOS-Debuginfo.repo CentOS-Vault.repo

只保留一个

-rw-r--r--. 1 root root 559 8月   3 23:49 CentOS-Media.repo


4、清空yum缓存

[root@localhost yum.repos.d]# yum clean all


5、挂载硬盘(已增加1块硬盘为例)

现在虚拟机上或实际机器中增加一块硬盘

[root@localhost yum.repos.d]# fdisk -l

技术分享

6、分区

[root@localhost /]# fdisk /dev/sdb

依次输入“n”,“p”“1”,两次回车,“w”

7、格式化

[root@localhost /]# mkfs.ext4 /dev/sdb1

技术分享

8、给/dev/sdb1磁盘,创建挂载目录

[root@localhost /]# mkdir -p /data/tfs1


9、挂载/dev/sdb1磁盘到/data/tfs1上

[root@localhost /]# mount /dev/sdb1 /data/tfs1

10、验证是否挂载成功

[root@localhost /]# df -h

技术分享

11、加入启动时自动挂载

技术分享

之后可以重启机器,看是否正常挂载

[root@localhost ~]# mount -l

技术分享

-------------------------------分隔线---------------------------------------

下面正式安装TFS及相关服务

一、安装依赖的软件包

1、automake TFS基于automake工具构建

[root@localhost ~]# yum install automake.noarch

提示 Package automake-1.11.1-4.el6.noarch already installed and latest version (已安装)

[root@localhost ~]# rpm -qa | grep automake
automake-1.11.1-4.el6.noarch


2、libtool automake需要使用libtool

[root@localhost ~]# yum install libtool

[root@localhost ~]# rpm -qa | grep libtool
libtool-2.2.6-15.5.el6.x86_64
libtool-ltdl-2.2.6-15.5.el6.x86_64


3、realine 用于命令行编辑的库

[root@localhost ~]# yum install readline-devel

[root@localhost ~]# rpm -qa | grep readline
readline-devel-6.0-4.el6.x86_64
readline-6.0-4.el6.x86_64


4、libz-devel 用于数据压缩/解压缩

[root@localhost ~]# yum install zlib-devel

[root@localhost ~]# rpm -qa | grep zlib-devel
zlib-devel-1.2.3-29.el6.x86_64


5、uuid-devel 用于生成全局唯一ID

[root@localhost ~]# yum install e2fsprogs-devel

[root@localhost ~]# rpm -qa | grep e2fsprogs
e2fsprogs-libs-1.41.12-14.el6.x86_64
e2fsprogs-devel-1.41.12-14.el6.x86_64
e2fsprogs-1.41.12-14.el6.x86_64


[root@localhost ~]# yum install libuuid-devel

[root@localhost ~]# rpm -qa | grep libuuid
libuuid-2.17.2-12.9.el6.x86_64
libuuid-devel-2.17.2-12.9.el6.x86_64


6、tcmalloc google的内存管理库(可选)

二、安装tb-common-utils

TFS使用tb-common-utils软件包,tb-common-utils包含淘宝使用的基础系统库tbsys和网络库tbnet两个组件;安装tb-common-utils前需要设置环境变量TBLIB_ROOT,tbsys和tbnet将会被安装TBLIB_ROOT对应的路径(必须是绝对路径)下,TFS会在这个路径下查找tbsys、tbnet头文件和库。
设置TBLIB_ROOT环境变量:
1、在~/.bash_profile文件中加入,export TBLIB_ROOT=path_to_tbutil , 然后执行source

[root@localhost ~]# vi /root/.bash_profile

技术分享

[root@localhost ~]# source /root/.bash_profile 


2、下载tb-common-utils源码

注意: 这里不要checkout最新版本,version18以后的修改导致部分接口不能前向兼容

[root@localhost ~]# svn co -r 18 http://code.taobao.org/svn/tb-common-utils/trunk tb-common-utils

技术分享

[root@localhost tb-common-utils]# sh build.sh

如果一切顺利,tb-common-utils已经安装成功到$TBLIB_ROOT路径下

技术分享

三、安装TFS

1、下载源码,2.2.0版本

[root@localhost ~]# svn co http://code.taobao.org/svn/tfs/branches/dev_for_outer_users tfs

技术分享

2、初始化

[root@localhost tfs-2.2.9]# sh build.sh init

技术分享

初始化成功

3、编译

–prefix 指定tfs安装路径,默认会被安装到~/tfs_bin目录
–with-release 指定按release版本的参数进行编译,如果不指定这个参数,则会按开发版本比较严格的参数编译,包含-Werror参数,所有的警告都会被当错误,在高版本gcc下会导致项目编译不过,很多开源用户反馈的编译问题都跟这个有关,因为gcc高版本对代码的检查越来越严格,淘宝内部使用的gcc版本是gcc-4.1.2

[root@localhost tfs]# ./configure --prefix=/usr/local/taobaoFS --with-release --without-tcmalloc

[root@localhost tfs]# make

[root@localhost tfs]# make install

技术分享

四、配置文件:

ns.conf:

ds.conf:

注意:挂载目录是/data/tfs1至/data/tfs(i),其中i为磁盘号。
而ds.conf配置文件中的配置  mount_name =  /data/tfs  没有加(i)


配置文件具体查看《tfs介绍及配置文件详解》


五、启动说明:
1、运行TFS
启动nameserver
执行scripts目录下的tfs:

[root@localhost scripts]# ./tfs start_ns
 nameserver is up SUCCESSFULLY pid: 36609


2、启动DS
现有TFS可以在一台服务器上启动多个DataServer进程。一般每个DataServer进程负责一个磁盘。
将数据盘格式化成EXT4文件系统,并挂载到/data/tfs1至/data/tfs(i),其中i为磁盘号。
启动步骤:
A、存储区预分配。执行scripts下的stfs format n (n为挂载点的序号,具体用法见stfs的Usage)。例如stfs format 2,4-6 则会对/data/tfs2,
/data/tfs4,/data/tfs5,/data/tfs6,进行预分配。运行完后会在生成/data/tfs2, /data/tfs4,/data/tfs5,/data/tfs6下预先创建主块,扩展块及相应的统计信息。

[root@localhost scripts]# ./stfs clear 1

[root@localhost scripts]# ./stfs format 1

B、运行data server。有两种方法:
通过adminserver来启动dataserver(推荐): 执行scripts下的./tfs admin_ds
直接启动dataserver,执行scripts下的./tfs start_ds 2,4-6, 则会启动dataserver2,dataserver4,dataserver5,dataserver6

[root@localhost scripts]# ./tfs start_ds 1



zimg和TFS搭建分布式图片服务器---tfs安装

标签:tfs   图片   zimg   

原文地址:http://meitangyanyan.blog.51cto.com/8768306/1683294

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!