Soumettre la recherche
Mettre en ligne
Fluentdで本番環境を再現
•
4 j'aime
•
3,417 vues
Hiroshi Toyama
Suivre
Fluentd Meetup 2015 夏 で発表した資料です。
Lire moins
Lire la suite
Logiciels
Signaler
Partager
Signaler
Partager
1 sur 38
Télécharger maintenant
Télécharger pour lire hors ligne
Recommandé
KeycloakのDevice Flow、CIBAについて
KeycloakのDevice Flow、CIBAについて
Hiroyuki Wada
サポート エンジニアが Azure Networking をじっくりたっぷり語りつくす会
サポート エンジニアが Azure Networking をじっくりたっぷり語りつくす会
ShuheiUda
VyOSで作るIPv4 Router/IPv6 Bridge
VyOSで作るIPv4 Router/IPv6 Bridge
KLab Inc. / Tech
Fluentdのお勧めシステム構成パターン
Fluentdのお勧めシステム構成パターン
Kentaro Yoshida
DockerとPodmanの比較
DockerとPodmanの比較
Akihiro Suda
AWSとオンプレミスを繋ぐときに知っておきたいルーティングの基礎知識(CCSI監修!)
AWSとオンプレミスを繋ぐときに知っておきたいルーティングの基礎知識(CCSI監修!)
Trainocate Japan, Ltd.
Azure Database for PostgreSQL 入門 (PostgreSQL Conference Japan 2021)
Azure Database for PostgreSQL 入門 (PostgreSQL Conference Japan 2021)
Keisuke Takahashi
週末趣味のAWS VPC Traffic Mirroring
週末趣味のAWS VPC Traffic Mirroring
Namba Kazuo
Recommandé
KeycloakのDevice Flow、CIBAについて
KeycloakのDevice Flow、CIBAについて
Hiroyuki Wada
サポート エンジニアが Azure Networking をじっくりたっぷり語りつくす会
サポート エンジニアが Azure Networking をじっくりたっぷり語りつくす会
ShuheiUda
VyOSで作るIPv4 Router/IPv6 Bridge
VyOSで作るIPv4 Router/IPv6 Bridge
KLab Inc. / Tech
Fluentdのお勧めシステム構成パターン
Fluentdのお勧めシステム構成パターン
Kentaro Yoshida
DockerとPodmanの比較
DockerとPodmanの比較
Akihiro Suda
AWSとオンプレミスを繋ぐときに知っておきたいルーティングの基礎知識(CCSI監修!)
AWSとオンプレミスを繋ぐときに知っておきたいルーティングの基礎知識(CCSI監修!)
Trainocate Japan, Ltd.
Azure Database for PostgreSQL 入門 (PostgreSQL Conference Japan 2021)
Azure Database for PostgreSQL 入門 (PostgreSQL Conference Japan 2021)
Keisuke Takahashi
週末趣味のAWS VPC Traffic Mirroring
週末趣味のAWS VPC Traffic Mirroring
Namba Kazuo
AWSのログ管理ベストプラクティス
AWSのログ管理ベストプラクティス
Akihiro Kuwano
今改めて学ぶ Microsoft Azure 基礎知識
今改めて学ぶ Microsoft Azure 基礎知識
Minoru Naito
Keycloak拡張入門
Keycloak拡張入門
Hiroyuki Wada
20200826 AWS Black Belt Online Seminar AWS CloudFormation
20200826 AWS Black Belt Online Seminar AWS CloudFormation
Amazon Web Services Japan
Redisの特徴と活用方法について
Redisの特徴と活用方法について
Yuji Otani
障害とオペミスに備える! ~Oracle Databaseのバックアップを考えよう~
障害とオペミスに備える! ~Oracle Databaseのバックアップを考えよう~
Shinnosuke Akita
サポート エンジニアが語る、Microsoft Azure を支えるインフラの秘密
サポート エンジニアが語る、Microsoft Azure を支えるインフラの秘密
ShuheiUda
202110 AWS Black Belt Online Seminar AWS Site-to-Site VPN
202110 AWS Black Belt Online Seminar AWS Site-to-Site VPN
Amazon Web Services Japan
自己紹介LT(公開版)
自己紹介LT(公開版)
Ken Muryoi
Amazon EKS への道 ~ EKS 再入門 ~
Amazon EKS への道 ~ EKS 再入門 ~
Hideaki Aoyagi
Azure Api Management 俺的マニュアル 2020年3月版
Azure Api Management 俺的マニュアル 2020年3月版
貴志 上坂
例外設計における大罪
例外設計における大罪
Takuto Wada
【メモ】一般的に設計書に定義される項目例
【メモ】一般的に設計書に定義される項目例
Hirokazu Yatsunami
インフラエンジニアのためのcassandra入門
インフラエンジニアのためのcassandra入門
Akihiro Kuwano
ゲームアーキテクチャパターン (Aurora Serverless / DynamoDB)
ゲームアーキテクチャパターン (Aurora Serverless / DynamoDB)
Amazon Web Services Japan
Keycloak入門
Keycloak入門
Hiroyuki Wada
実装して理解するLINE LoginとOpenID Connect入門
実装して理解するLINE LoginとOpenID Connect入門
Naohiro Fujie
NTTデータ流Infrastructure as Code~ 大規模プロジェクトを通して考え抜いた基盤自動化の新たな姿~(NTTデータ テクノロジーカンフ...
NTTデータ流Infrastructure as Code~ 大規模プロジェクトを通して考え抜いた基盤自動化の新たな姿~(NTTデータ テクノロジーカンフ...
NTT DATA Technology & Innovation
第15回JSSUG「Azure SQL Database 超入門」
第15回JSSUG「Azure SQL Database 超入門」
裕之 木下
[社内勉強会]ELBとALBと数万スパイク負荷テスト
[社内勉強会]ELBとALBと数万スパイク負荷テスト
Takahiro Moteki
CoreOS入門
CoreOS入門
Yutaka Matsubara
マイナスを0にもっていくまで
マイナスを0にもっていくまで
Sora Hasimoto
Contenu connexe
Tendances
AWSのログ管理ベストプラクティス
AWSのログ管理ベストプラクティス
Akihiro Kuwano
今改めて学ぶ Microsoft Azure 基礎知識
今改めて学ぶ Microsoft Azure 基礎知識
Minoru Naito
Keycloak拡張入門
Keycloak拡張入門
Hiroyuki Wada
20200826 AWS Black Belt Online Seminar AWS CloudFormation
20200826 AWS Black Belt Online Seminar AWS CloudFormation
Amazon Web Services Japan
Redisの特徴と活用方法について
Redisの特徴と活用方法について
Yuji Otani
障害とオペミスに備える! ~Oracle Databaseのバックアップを考えよう~
障害とオペミスに備える! ~Oracle Databaseのバックアップを考えよう~
Shinnosuke Akita
サポート エンジニアが語る、Microsoft Azure を支えるインフラの秘密
サポート エンジニアが語る、Microsoft Azure を支えるインフラの秘密
ShuheiUda
202110 AWS Black Belt Online Seminar AWS Site-to-Site VPN
202110 AWS Black Belt Online Seminar AWS Site-to-Site VPN
Amazon Web Services Japan
自己紹介LT(公開版)
自己紹介LT(公開版)
Ken Muryoi
Amazon EKS への道 ~ EKS 再入門 ~
Amazon EKS への道 ~ EKS 再入門 ~
Hideaki Aoyagi
Azure Api Management 俺的マニュアル 2020年3月版
Azure Api Management 俺的マニュアル 2020年3月版
貴志 上坂
例外設計における大罪
例外設計における大罪
Takuto Wada
【メモ】一般的に設計書に定義される項目例
【メモ】一般的に設計書に定義される項目例
Hirokazu Yatsunami
インフラエンジニアのためのcassandra入門
インフラエンジニアのためのcassandra入門
Akihiro Kuwano
ゲームアーキテクチャパターン (Aurora Serverless / DynamoDB)
ゲームアーキテクチャパターン (Aurora Serverless / DynamoDB)
Amazon Web Services Japan
Keycloak入門
Keycloak入門
Hiroyuki Wada
実装して理解するLINE LoginとOpenID Connect入門
実装して理解するLINE LoginとOpenID Connect入門
Naohiro Fujie
NTTデータ流Infrastructure as Code~ 大規模プロジェクトを通して考え抜いた基盤自動化の新たな姿~(NTTデータ テクノロジーカンフ...
NTTデータ流Infrastructure as Code~ 大規模プロジェクトを通して考え抜いた基盤自動化の新たな姿~(NTTデータ テクノロジーカンフ...
NTT DATA Technology & Innovation
第15回JSSUG「Azure SQL Database 超入門」
第15回JSSUG「Azure SQL Database 超入門」
裕之 木下
[社内勉強会]ELBとALBと数万スパイク負荷テスト
[社内勉強会]ELBとALBと数万スパイク負荷テスト
Takahiro Moteki
Tendances
(20)
AWSのログ管理ベストプラクティス
AWSのログ管理ベストプラクティス
今改めて学ぶ Microsoft Azure 基礎知識
今改めて学ぶ Microsoft Azure 基礎知識
Keycloak拡張入門
Keycloak拡張入門
20200826 AWS Black Belt Online Seminar AWS CloudFormation
20200826 AWS Black Belt Online Seminar AWS CloudFormation
Redisの特徴と活用方法について
Redisの特徴と活用方法について
障害とオペミスに備える! ~Oracle Databaseのバックアップを考えよう~
障害とオペミスに備える! ~Oracle Databaseのバックアップを考えよう~
サポート エンジニアが語る、Microsoft Azure を支えるインフラの秘密
サポート エンジニアが語る、Microsoft Azure を支えるインフラの秘密
202110 AWS Black Belt Online Seminar AWS Site-to-Site VPN
202110 AWS Black Belt Online Seminar AWS Site-to-Site VPN
自己紹介LT(公開版)
自己紹介LT(公開版)
Amazon EKS への道 ~ EKS 再入門 ~
Amazon EKS への道 ~ EKS 再入門 ~
Azure Api Management 俺的マニュアル 2020年3月版
Azure Api Management 俺的マニュアル 2020年3月版
例外設計における大罪
例外設計における大罪
【メモ】一般的に設計書に定義される項目例
【メモ】一般的に設計書に定義される項目例
インフラエンジニアのためのcassandra入門
インフラエンジニアのためのcassandra入門
ゲームアーキテクチャパターン (Aurora Serverless / DynamoDB)
ゲームアーキテクチャパターン (Aurora Serverless / DynamoDB)
Keycloak入門
Keycloak入門
実装して理解するLINE LoginとOpenID Connect入門
実装して理解するLINE LoginとOpenID Connect入門
NTTデータ流Infrastructure as Code~ 大規模プロジェクトを通して考え抜いた基盤自動化の新たな姿~(NTTデータ テクノロジーカンフ...
NTTデータ流Infrastructure as Code~ 大規模プロジェクトを通して考え抜いた基盤自動化の新たな姿~(NTTデータ テクノロジーカンフ...
第15回JSSUG「Azure SQL Database 超入門」
第15回JSSUG「Azure SQL Database 超入門」
[社内勉強会]ELBとALBと数万スパイク負荷テスト
[社内勉強会]ELBとALBと数万スパイク負荷テスト
En vedette
CoreOS入門
CoreOS入門
Yutaka Matsubara
マイナスを0にもっていくまで
マイナスを0にもっていくまで
Sora Hasimoto
インフラエンジニアLv1がWordPressまわりに色々してみた話
インフラエンジニアLv1がWordPressまわりに色々してみた話
Daisuke Kikuchi
Markdownでドキュメント作成
Markdownでドキュメント作成
Yasuyuki Fujikawa
Re:dash Use Cases at iPROS
Re:dash Use Cases at iPROS
Jumpei Yokota
re:dash is awesome
re:dash is awesome
Hiroshi Toyama
Fluentd+MongoDB+Groovy
Fluentd+MongoDB+Groovy
Daisuke Ando
Vagrant
Vagrant
Hiroshi Toyama
Ipros techmeetup 20131218_scala_handson
Ipros techmeetup 20131218_scala_handson
honda-y
リーダブルコード 1.0'
リーダブルコード 1.0'
Yamamura Takashi
Fluentd勉強会 (導入編 TreasureData活用)
Fluentd勉強会 (導入編 TreasureData活用)
takeuchi-tk
Fluentd
Fluentd
Hiroshi Toyama
仮想マシンとVagrant + Vagrant 1.5
仮想マシンとVagrant + Vagrant 1.5
Daisuke Kikuchi
Fluentd introduction at ipros
Fluentd introduction at ipros
Treasure Data, Inc.
戦国時代を生きた「黒田官兵衛」とWeb時代を生きる「エンジニア」
戦国時代を生きた「黒田官兵衛」とWeb時代を生きる「エンジニア」
Junya Yamaguchi
6331 sayılı isg kanunu
6331 sayılı isg kanunu
NESİL BİLİŞİM TEKNOLOJİLERİ -
Hubotを使ってbotをつくろう!
Hubotを使ってbotをつくろう!
Daisuke Kikuchi
CSS Nite LP38に行ってきた
CSS Nite LP38に行ってきた
Yasuyuki Fujikawa
MBaaS - Parse
MBaaS - Parse
Junya Yamaguchi
初心者Vimmerによるvim+rails開発
初心者Vimmerによるvim+rails開発
Daisuke Kikuchi
En vedette
(20)
CoreOS入門
CoreOS入門
マイナスを0にもっていくまで
マイナスを0にもっていくまで
インフラエンジニアLv1がWordPressまわりに色々してみた話
インフラエンジニアLv1がWordPressまわりに色々してみた話
Markdownでドキュメント作成
Markdownでドキュメント作成
Re:dash Use Cases at iPROS
Re:dash Use Cases at iPROS
re:dash is awesome
re:dash is awesome
Fluentd+MongoDB+Groovy
Fluentd+MongoDB+Groovy
Vagrant
Vagrant
Ipros techmeetup 20131218_scala_handson
Ipros techmeetup 20131218_scala_handson
リーダブルコード 1.0'
リーダブルコード 1.0'
Fluentd勉強会 (導入編 TreasureData活用)
Fluentd勉強会 (導入編 TreasureData活用)
Fluentd
Fluentd
仮想マシンとVagrant + Vagrant 1.5
仮想マシンとVagrant + Vagrant 1.5
Fluentd introduction at ipros
Fluentd introduction at ipros
戦国時代を生きた「黒田官兵衛」とWeb時代を生きる「エンジニア」
戦国時代を生きた「黒田官兵衛」とWeb時代を生きる「エンジニア」
6331 sayılı isg kanunu
6331 sayılı isg kanunu
Hubotを使ってbotをつくろう!
Hubotを使ってbotをつくろう!
CSS Nite LP38に行ってきた
CSS Nite LP38に行ってきた
MBaaS - Parse
MBaaS - Parse
初心者Vimmerによるvim+rails開発
初心者Vimmerによるvim+rails開発
Similaire à Fluentdで本番環境を再現
日本 GNU AWK ユーザー会スライド 2 - OSC2012 Tokyo/Fall
日本 GNU AWK ユーザー会スライド 2 - OSC2012 Tokyo/Fall
博文 斉藤
Nodeにしましょう
Nodeにしましょう
Yuzo Hebishima
Cloud Foundryは何故動くのか
Cloud Foundryは何故動くのか
Kazuto Kusama
NTTコミュニケーションズ Cloudn勉強会資料 SDKでAPIをたたいてみよう
NTTコミュニケーションズ Cloudn勉強会資料 SDKでAPIをたたいてみよう
Midori Oge
Fabricによるcloud stackインストール自動化
Fabricによるcloud stackインストール自動化
hiroyuki nakajima
ES6 はじめました
ES6 はじめました
Net Kanayan
Docker入門-基礎編 いまから始めるDocker管理【2nd Edition】
Docker入門-基礎編 いまから始めるDocker管理【2nd Edition】
Masahito Zembutsu
Jenkins に XFD を追加してみると
Jenkins に XFD を追加してみると
Kiro Harada
DPDKを拡張してみた話し
DPDKを拡張してみた話し
Lagopus SDN/OpenFlow switch
runC概要と使い方
runC概要と使い方
Yuji Oshima
Vagrant を Web開発環境に使う
Vagrant を Web開発環境に使う
Masashi Shinbara
Docker lifecycle event hooks
Docker lifecycle event hooks
Ryo Nakamaru
Idcfクラウド 初心者の事始め(2)資料
Idcfクラウド 初心者の事始め(2)資料
Takako Miyagawa
120517 cf tour_london
120517 cf tour_london
Takayoshi Tanaka
第4回 インフラ勉強会@福岡 Fluentdハンズオン
第4回 インフラ勉強会@福岡 Fluentdハンズオン
学 松崎
もう XAMPP / MAMP はいらない! Vagrant で作る PHP 開発環境
もう XAMPP / MAMP はいらない! Vagrant で作る PHP 開発環境
Masashi Shinbara
Chef+Vagrantでクラウド環境構築自動化ハッカソン 結果発表 #atithack
Chef+Vagrantでクラウド環境構築自動化ハッカソン 結果発表 #atithack
満徳 関
120315 cloud founry_java_ironfoundry
120315 cloud founry_java_ironfoundry
Takayoshi Tanaka
[Osaka]AMIMOTO(HHVM) hands-on #cmsdou
[Osaka]AMIMOTO(HHVM) hands-on #cmsdou
Hiromichi Koga
ひしめき合うOpen PaaSを徹底解剖! PaaSの今と未来
ひしめき合うOpen PaaSを徹底解剖! PaaSの今と未来
Kazuto Kusama
Similaire à Fluentdで本番環境を再現
(20)
日本 GNU AWK ユーザー会スライド 2 - OSC2012 Tokyo/Fall
日本 GNU AWK ユーザー会スライド 2 - OSC2012 Tokyo/Fall
Nodeにしましょう
Nodeにしましょう
Cloud Foundryは何故動くのか
Cloud Foundryは何故動くのか
NTTコミュニケーションズ Cloudn勉強会資料 SDKでAPIをたたいてみよう
NTTコミュニケーションズ Cloudn勉強会資料 SDKでAPIをたたいてみよう
Fabricによるcloud stackインストール自動化
Fabricによるcloud stackインストール自動化
ES6 はじめました
ES6 はじめました
Docker入門-基礎編 いまから始めるDocker管理【2nd Edition】
Docker入門-基礎編 いまから始めるDocker管理【2nd Edition】
Jenkins に XFD を追加してみると
Jenkins に XFD を追加してみると
DPDKを拡張してみた話し
DPDKを拡張してみた話し
runC概要と使い方
runC概要と使い方
Vagrant を Web開発環境に使う
Vagrant を Web開発環境に使う
Docker lifecycle event hooks
Docker lifecycle event hooks
Idcfクラウド 初心者の事始め(2)資料
Idcfクラウド 初心者の事始め(2)資料
120517 cf tour_london
120517 cf tour_london
第4回 インフラ勉強会@福岡 Fluentdハンズオン
第4回 インフラ勉強会@福岡 Fluentdハンズオン
もう XAMPP / MAMP はいらない! Vagrant で作る PHP 開発環境
もう XAMPP / MAMP はいらない! Vagrant で作る PHP 開発環境
Chef+Vagrantでクラウド環境構築自動化ハッカソン 結果発表 #atithack
Chef+Vagrantでクラウド環境構築自動化ハッカソン 結果発表 #atithack
120315 cloud founry_java_ironfoundry
120315 cloud founry_java_ironfoundry
[Osaka]AMIMOTO(HHVM) hands-on #cmsdou
[Osaka]AMIMOTO(HHVM) hands-on #cmsdou
ひしめき合うOpen PaaSを徹底解剖! PaaSの今と未来
ひしめき合うOpen PaaSを徹底解剖! PaaSの今と未来
Fluentdで本番環境を再現
1.
Fluentdで 本番環境を再現 するFluentd Meetup 2015 夏
2.
3.
4.
https://iprostm.doorkeeper.jp /events/25664 参加者募集中! Speakerになってもいい人いたら是非連絡ください! @toyama0919
5.
6.
アジェンダ Shadow Proxy fluent-plugin-http_shadow ユースケース まとめ
7.
Shadow Proxy
8.
Shadow Proxy productionのhttp requestを複製してバックエンドに送 信するproxy 限りなく本番に近い環境をを再現できる 主な用途は負荷試験や結合試験 本番環境を開発環境で再現するアプローチ
9.
10.
Shadow Proxy何故? WEBのtestが年々複雑化してきている 本番に入れてみたら変なデータが入ってきて落ちた り。。 本番運用したら負荷が大きすぎて落ちたり。。
11.
導入 するしかない!
12.
方式を考えた 公開されているOSSを使う cookpad/kage lestrrat/p5-Geest kentaro/delta mod_mrubyやngx_mruby nginx層やapache層の処理をmrubyでscriptingできる
13.
14.
15.
懸念点があった ユーザーに密接するフロントエンドにミドルウェアをあ まり入れたくない proxyが挟まることによるユーザーへの影響が不安 もう少し安全にやりたい 要はフロントエンドに手を入れずShadow Proxyやりたい
16.
Fluentdで 出来そうな予感
17.
fluent-plugin-http_shadow
18.
fluent-plugin-http_shadow Fluentdからhttp requestを復元 フロントエンドに手を入れずにShadow Proxyを実現 ApacheやNginxのログを想定しているが、専用のログで post等も実現可能
19.
20.
パラメータ rateによる希釈 timeout 並列数 http headerとcookieを指定可能 virtual host
21.
rateによる希釈 本番と同じスペックを揃えられない 同じrequestを送信したらstaging環境が破裂した 最初は1%で運用、徐々に上げてくのが安全
22.
timeout timeoutが長すぎるとbufferが詰まる fluent-plugin-elasticsearchと同じ 短いtimeoutであればclient側でtimeoutするのでbuffer が詰まりにくい
23.
並列数 Apache Benchの用にhttp requestを並列で投げる Aggregatorが複数あればrequest元を分散できる あまり一斉にrequestを投げるとサーバー側が破裂する サーバー数でscaleさせたい場合は各サーバーの並列数を 低めに
24.
注意点config_paramsにhashが使えないversionはダメ
25.
<match http_shadow.example> type http_shadow host_hash
{ "www.example.com": "staging.example.com", } host_key host path_format ${path} method_key method header_hash { "Referer": "${referer}", "User-Agent": "${user_agent}" } max_concurrency 10 flush_interval 10 timeout 10 rate 10 </match>
26.
ユースケース
27.
主なユースケース バグ発見器 パフォーマンスの比較
28.
バグ発見器 開発環境でとりあえず流しとけば結構バグが見つかるw 通常テスト時には邪魔になるので、rateを下げる
29.
昨今のミドルウェア更新頻度 開発が活発なミドルウェアは毎週のようにアップデート が実施される ライブラリのアップデートの更新頻度も年々上がってい る 特にOSSだとその傾向が強い アップデートしないという選択肢もある
30.
ミドルウェアアップデート時 同じWEBサーバを2つ用意し、片方だけアップデートす る fluentdのcopyでhttp_shadowのmatch directiveを作る 全く同じrequestが送信されることが保証される newrelicでパフォーマンスを比較
31.
copyで複製<match http_shadow.**> type copy <store> type
http_shadow ... </store> <store> type http_shadow ... </store> ... </match>
32.
33.
productionと比較は? productionと同じ構成には費用がかかる Fluentdのcopyで同一のhttp requestが保証できる 環境間の差分を見る
34.
まとめと感想
35.
完全なShadow環境は難しい メールアドレスはMASKされており本番と違う Postのパラメータはログに出せない Kageでもgetだけ送信するようなサンプルが提示されて たりする ブラウザによるアクセスではない
36.
完全なるShadow環境は危険 意図しないデータの更新 Get(参照系)だけでも9割は再現出来る 管理画面とかとは相性が悪い
37.
まとめ shadow環境はバグを沢山見つけてくれる ミドルウェアの更新頻度が多い現代に合っている Fluentd上ならこういったことがCasualにできる
38.
ありがとう ございました
Télécharger maintenant