こんにちは〜♪ヽ(´▽`)ノ 三寒四温な今日この頃。
業務でハマってしまったことを書いてみます
インストール環境
・Amazon Linux AMI x86_64 HVM EBS
amzn-ami-hvm-2014.03.2.x86_64-ebs
・td-agent-1.1.21-0.x86_64
1. td-agent1系をインストールしようとしてみた
td-agentの1系を業務上どうしてもインストールしないといけなくなったのだけど2017年2月現在td-agent1系は下記コマンドでインストールができないのだ!!
$ curl -L https://toolbelt.treasuredata.com/sh/install-redhat.sh | sh
実行すると下記FluentdBlogの通りGPGKeyが古いからダメだよ!とエラーが出る。
cf.Update the GPG key
http://www.fluentd.org/blog/update-gpg-key-for-td-agent
これはどうしたものか…(´・ω・`)?
2. yumリポジトリから直接インストールを試みる
$ sudo rpm -ivh http://packages.treasuredata.com.s3.amazonaws.com/redhat/x86_64/td-agent-1.1.21-0.x86_64.rpm
依存性のエラーが発生!
td-libyaml is needed by td-agent-1.1.21-0.x86_64
ほぉ… td-libyamlが必要か!ではインストールするとしよう!
3. td-libyamlをインストールする
$ sudo rpm -ivh http://packages.treasuredata.com.s3.amazonaws.com/redhat/x86_64/td-libyaml-0.1.4-1.x86_64.rpm
さてこれで終わったわけではない!
libcrypto.so.6()(64bit) is needed by td-agent-1.1.21-0.x86_64
libreadline.so.5()(64bit) is needed by td-agent-1.1.21-0.x86_64
libtermcap.so.2()(64bit) is needed by td-agent-1.1.21-0.x86_64
残りの依存性の欠如エラーを解消していこうか!
4. 足りないライブラリをインストールしてみる
$ sudo yum install libcrypto.so.6
お!直接インストールはうまくいかない…(´・ω・`)
じゃあ仕方ない! $yum whatprovidesでライブラリをサポートしているパッケージを探るか!
5. ライブラリをサポートしているパッケージを探す
cf. http://www.geek.sc/archives/620
上記記事を参考にしました。ありがとうございますm(_ _)m
$sudo yum whatprovides libcrypto.so.6
すると、openssl098eのパッケージに依存していることがわかる。
なのでyumインストールする(`・ω・´)ノ
$sudo yum install -y openssl098e
その他のライブラリも同様に調べていくとcompat-libtermcapとcompat-readlineが必要なことがわかる。
インストーーーール!!!
$sudo yum install -y compat-libtermcap
$sudo yum install -y compat-readline
5. 改めてyumリポジトリからインストールを試みる!
$sudo rpm -ivh http://packages.treasuredata.com.s3.amazonaws.com/redhat/x86_64/td-agent-1.1.21-0.x86_64.rpm
お!インストールできた!!!GPG Keyの警告は出るけどインストールはできるんだね
ということで起動コマンドを叩いてみる。
$ /etc/init.d/td-agent start
無事起動!キターーー!!!.+:。(≧∇≦).+:。
とまあ色々ググりながらトライ&エラーを続けて無事インストールできました。ちなみにtd-agentはゲームのアクセスログ集計に使っていたりします(。uωu。)
以上でしたー!(´∀`)ノ☆