任何人都有在 EC2 实例上安装 Facebook 的 Scribe 的详细步骤?
通过搜索找到的大多数说明都有些过时了。
在过去的 6 个月中,我在 Amazon Linux AMI 和 Fedora 映像上都使用了这里的配方。只要那个食谱是,它确实需要那么大的努力。仍然让我感到震惊的是,有多少公司建立了自己的抄写 RPM,但在野外却没有好的公司存在。
我找到了这些较旧的安装说明并将它们用作起点:
http://www.design-ireland.net/?http%3A//www.design-ireland.net/article/Installing_Facebook_Scribe_on_Fedora_8 http://boost.2283326.n4.nabble.com/1-42-0-Release -candidates-available-td2626376.html
安装
# download scribe code (I opted for /local)
cd /local
git clone https://github.com/facebook/scribe.git scribe
# install libevent
yum install libevent
yum install libevent-devel
# install boost - the version installed by 'yum boost' didn't seem to be work with scribe
# had to build my own from one revision back, v1.45, as there was a bug with current version
mkdir boost
cd boost
wget http://sourceforge.net/projects/boost/files/boost/1.45.0/boost_1_45_0.tar.gz
tar zxvf boost_1_45_0.tar.gz
boostrap.sh
./bjam -sNO_COMPRESSION=1
# Install thrift and apply patch (see below)
mkdir thrift
cd thrift
yum install python-devel
wget http://mirror.olnevhost.net/pub/apache//thrift/0.6.1/thrift-0.6.1.tar.gz
tar -zxvf thrift-0.6.1.tar.gz
cd thrift-0.6.1
# Thrift patch applied: https://issues.apache.org/jira/browse/THRIFT-1060
make
make install
# Install fb303
cd contrib/fb303
./bootstrap
./configure
make
make install
# scribe
cd /local/scribe
export LD_LIBRARY_PATH="/usr/local/lib"
/sbin/ldconfig
./bootstrap.sh
./configure
make
测试
修改 scribe/example/example1.conf 以适应您的环境
创建以下短期运行脚本
export LD_LIBRARY_PATH="/usr/local/lib"
scribed -c ./modified_example.conf
必须通过将我的 MAC 范围添加到安全组的入站 TCP 端口来打开 EC2 机器上的 Thrift 端口 1463
我使用 scribe 和 thrift_client gem 编写了一个简单的 ruby 测试应用程序
require 'scribe'
client = Scribe.new("xxx-xxx-xx-xxx-xxx.compute-1.amazonaws.com:1463", "default" ,false, {:connect_timeout => 3, :retries => 3})
(0..100).each do |x|
n = Time.now
begin
client.log("#{n} #{"%10.6f" % n.to_f} - testing loop #{x}", "bucket-#{x % 10}")
rescue Exception => e
puts e.message
puts e.backtrace.inspect
end
sleep 0.01
end
我一直在使用这个gist bash 脚本在 EC2 ubuntu 机器上安装 scribe 和依赖项。
我没有足够的代表发表评论,我想回复@Steve Wilhelm 提出的说明——请注意这一步:
./bjam -sNO_COMPRESSION=1
对我来说需要很长时间(现在一个多小时)——因为我'正在尝试在 EC2 t1.micro 实例上运行它。(这是一个低功率的实例,但仍然)我事先并不知道这一点,如果我知道的话,我会用 a 运行它,nice -n 3
这样它就不会让另一个试图使用它的开发人员变慢。
编辑:完成了一个多小时,完成后占用了超过 500mb 的空间。