charts/incubator/fluentd-cloudwatch at master · helm/chartsをEKS上にinstallして使った話。最後にログインサイト使ってみたけど、AWS便利すぎかよ、、、
IAMの設定
- WorkerNodeのIAMロールにCloudWatchFullAccessポリシーをアタッチ
values.yaml
- awsRegion: ログを送るcloudwatchのリージョン
- rbac.create: trueにするとKubernetes APIを利用するためのRBACを自動生成する
- extraVars: Fluentdコンテナのenvを設定する
- 以下のようにroot権限を持つように実行しないとうまく動作しなかった
values.yaml
awsRegion: us-west-2
rbac:
create: true
extraVars:
- "{ name: FLUENT_UID, value: '0' }"
install
⇒ helm install --name fluentd --namespace fluentd --values ./values.yaml --debug incubator/fluentd-cloudwatch
[debug] Created tunnel using local port: '55876'
[debug] SERVER: "127.0.0.1:55876"
[debug] Original chart version: ""
[debug] Fetched incubator/fluentd-cloudwatch to /Users/paper2/.helm/cache/archive/fluentd-cloudwatch-0.6.3.tgz
[debug] CHART PATH: /Users/paper2/.helm/cache/archive/fluentd-cloudwatch-0.6.3.tgz
NAME: fluentd
REVISION: 1
RELEASED: Fri Dec 21 21:27:28 2018
CHART: fluentd-cloudwatch-0.6.3
USER-SUPPLIED VALUES:
awsRegion: us-west-2
extraVars:
- '{ name: FLUENT_UID, value: ''0'' }'
rbac:
create: true
...
確認
CWのインサイト機能を使ってセベリティ検索してみる
ESじゃないと検索面倒だなあと思ったらこんな機能が、、、。
便利すぎる、、、、。これで複雑なクエリも投げれるし、ESつくるよりログ保存ならCWの方が楽そう。
以下の例ではログのinfoだけ抽出している。クエリをERRORとかにすればエラーも探せる。