SlideShare une entreprise Scribd logo
1  sur  24
Télécharger pour lire hors ligne
#qpstudy 08懇親会 LT
lsyncdによる
共有フゔ゗ルシステムっぽい何かの検証
@ttkzw 滝澤 隆史
2




私は誰
• 氏名: 滝澤 隆史 @ttkzw
• 何やっている人
 ▫ メーラMuttの国際化や日本語対応パッチ作者
 ▫ SpamAssassinの日本語対応パッチ作者
 ▫ DNSサーバUnbound/NSD関連文書の翻訳
lsyncd 2.0以降について説明
lsyncd (Live Syncing Daemon)
フゔ゗ルシステムの゗ベント
                    主用途はフゔ゗ルやデゖレクトリのミラー
に対して非同期にゕクション
                     他の用途にも使える(Luaで拡張可能)
  を実施するデーモン


                 ゕクション/ミラー(rsync)
    lsyncd                           フゔ゗ル

                 フゔ゗ル
 ゗ベント
                     フゔ゗ル操作

                 フゔ゗ル
    inotify
                 システム

 フゔ゗ルシステムの゗ベ
 ントを監視して通知する
  Linuxカーネルの機能
標準構成
• 3つの標準(組み込み)構成が用意されている
▫ rsync
   ミラーにrsyncを使う
▫ rsyncssh
   ミラーにrsync + sshを使う
   リモートホストに転送可能
▫ direct
   cp|rm|mvを使う
設定フゔ゗ル
• lsyncd.conf
 ▫ 設定をLuaの構文で記述
 ▫ sync{
     default.rsyncssh,
     source="/srv/data/",
     host="root@backup.example.jp",
     targetdir="/srv/data/",
     rsyncOpts="-ltus"
     init=false
   }
リーダーのついーと
私の返信
「何らかの工夫」を検討してみた
正常な同期
         ゕクテゖブ            スタンバ゗
フゔ゗ル作成
          フゔ゗ル
                 lsyncd




         ゕクテゖブ            スタンバ゗
 同期完了
          フゔ゗ル             フゔ゗ル
                 lsyncd
障害発生でフェ゗ルオーバ
• 障害が発生してフゔ゗ルの同期前に
  フェ゗ルオーバした場合はどうなるか?
コピー前にフェ゗ルオーバ
         ゕクテゖブ              スタンバ゗
フゔ゗ル作成
          フゔ゗ル
                 lsyncd




 フェ゗ル    スタンバ゗              ゕクテゖブ
  オーバ     フゔ゗ル
                          lsyncd



                                    フゔ゗ル
         スタンバ゗              ゕクテゖブ
初期同期完了                               消失
          フゔ゗ル
                          lsyncd
対策
• フェ゗ルオーバ後のlsyncdの初期同期が問題を
  起こしている
• →lsyncdの初期同期をやめてみる
コピー前にフェ゗ルオーバ
(lsyncd起動時の初期同期無し)
         ゕクテゖブ              スタンバ゗
フゔ゗ル作成
          フゔ゗ル
                 lsyncd




 フェ゗ル    スタンバ゗              ゕクテゖブ
  オーバ     フゔ゗ル
                          lsyncd

                                    フゔ゗ル
                                    が利用で
         スタンバ゗              ゕクテゖブ
初期同期なし                               きない
          フゔ゗ル
                          lsyncd
対策
• フェ゗ルオーバ前に未同期のフゔ゗ルは
  フェ゗ルオーバ後には利用できない。
• そもそもlsyncdを両ノードで動かしっぱなしに
  すればいいんじゃない?
両ノードで動かす
(lsyncd起動時の初期同期無し)
         ゕクテゖブ               スタンバ゗
                          lsyncd
フゔ゗ル作成
          フゔ゗ル
                 lsyncd




 フェ゗ル    スタンバ゗               ゕクテゖブ
                          lsyncd

  オーバ     フゔ゗ル
                 lsyncd


                                     成功
         スタンバ゗               ゕクテゖブ
                          lsyncd
 同期完了
          フゔ゗ル              フゔ゗ル
                 lsyncd
検討
• 両ノードで動かすと双方向同期ができる
• 「共有フゔ゗ルシステム」っぽい
• 「なんちゃって共有フゔ゗ルシステム」ができ
  る!
なんちゃって共有フゔ゗ルシステム
                              lsyncd
フゔ゗ル作成
              フゔ゗ル
                     lsyncd


                              lsyncd
  同期
              フゔ゗ル                     フゔ゗ル
                     lsyncd


                              lsyncd   フゔ゗ル
                                              フゔ゗ル作成
              フゔ゗ル                     フゔ゗ル
                     lsyncd

         成功
              フゔ゗ル
                              lsyncd   フゔ゗ル
                                               同期完了
              フゔ゗ル                     フゔ゗ル
                     lsyncd
lsyncdの特徴による問題点・制限
• 非同期であるため、同期遅れが発生する
• 細かい変更が絶えず発生するフゔ゗ルには向か
  ない
 ▫ 数秒毎にフゔ゗ル全体のコピーが繰り返される
 ▫ データベースとかログフゔ゗ルとか
• inotifyの制限値(要変更)
 ▫ /proc/sys/fs/inotify/max_queued_events
 ▫ /proc/sys/fs/inotify/max_user_instances
 ▫ /proc/sys/fs/inotify/max_user_watches
なんちゃって共有フゔ゗ルシステムの
問題点は?
• lsyncdが停止中に書き込まれたフゔ゗ルは同期
  されないまま残る
 ▫ 常にlsyncdを起動するような工夫が必要
   (死んだら蘇生させる)
• 同期前にlsyncdあるいはノードが落ちたら同期
  されないままになる
 ▫ 仕方ないね\(^o^)/
なんちゃって共有フゔ゗ルシステムの
問題点は?
• フゔ゗ルのロックをかけられない
▫ ロックフゔ゗ルの場合は数秒遅れで同期する
• 両ノードで同じフゔ゗ルを操作すると危険
▫ 同期処理前に最後に操作したフゔ゗ルが勝ち
• 一般的な共有フゔ゗ルシステムと同じ問題を抱
  える
適応できる用途
• HAクラスタの共有ストレージ
• デゖザスタリカバリ
▫ 2拠点間の各ノードに常に複製ができる
• フゔ゗ルサーバ
▫ 拠点(事務所)を変えても常にローカルのフゔ゗
  ルサーバを利用できる
  東京本社のフゔ゗ルサーバに保存したフゔ゗ルが
   大阪支店のフゔ゗ルサーバで読み書きできる
結論
• ゕクテゖブ/スタンバ゗構成のHAクラスタの共
  有フゔ゗ルシステム代わりには何となく使えそ
  う
▫ 用途の制限はあるけど
• 拠点間で配置すると夢が広がるかも
▫ 問題はあるけど

Contenu connexe

Plus de Takashi Takizawa

BIND of Summer (2017-04-13)
BIND of Summer (2017-04-13)BIND of Summer (2017-04-13)
BIND of Summer (2017-04-13)Takashi Takizawa
 
Unbound/NSD最新情報(OSC 2013 Tokyo/Spring)
Unbound/NSD最新情報(OSC 2013 Tokyo/Spring)Unbound/NSD最新情報(OSC 2013 Tokyo/Spring)
Unbound/NSD最新情報(OSC 2013 Tokyo/Spring)Takashi Takizawa
 
initとプロセス再起動
initとプロセス再起動initとプロセス再起動
initとプロセス再起動Takashi Takizawa
 
#mailerstudy 02 メールと暗号 - SSL/TLS -
#mailerstudy 02 メールと暗号 - SSL/TLS -#mailerstudy 02 メールと暗号 - SSL/TLS -
#mailerstudy 02 メールと暗号 - SSL/TLS -Takashi Takizawa
 
#mailerstudy 02 暗号入門 (2012-02-22更新)
#mailerstudy 02 暗号入門 (2012-02-22更新)#mailerstudy 02 暗号入門 (2012-02-22更新)
#mailerstudy 02 暗号入門 (2012-02-22更新)Takashi Takizawa
 
#logstudy 01 rsyslog入門
#logstudy 01 rsyslog入門#logstudy 01 rsyslog入門
#logstudy 01 rsyslog入門Takashi Takizawa
 
UnboundとDNSSEC(OSC2011 Tokyo/Spring)
UnboundとDNSSEC(OSC2011 Tokyo/Spring)UnboundとDNSSEC(OSC2011 Tokyo/Spring)
UnboundとDNSSEC(OSC2011 Tokyo/Spring)Takashi Takizawa
 
Unboundの最適化(OSC2011 Tokyo/Spring)
Unboundの最適化(OSC2011 Tokyo/Spring)Unboundの最適化(OSC2011 Tokyo/Spring)
Unboundの最適化(OSC2011 Tokyo/Spring)Takashi Takizawa
 
#mailerstudy 01 LT POP/IMAP入門
#mailerstudy 01 LT POP/IMAP入門#mailerstudy 01 LT POP/IMAP入門
#mailerstudy 01 LT POP/IMAP入門Takashi Takizawa
 
#dnstudy 01 ドメイン名の歴史
#dnstudy 01 ドメイン名の歴史#dnstudy 01 ドメイン名の歴史
#dnstudy 01 ドメイン名の歴史Takashi Takizawa
 
#dnstudy 01 Unboundの紹介
#dnstudy 01 Unboundの紹介#dnstudy 01 Unboundの紹介
#dnstudy 01 Unboundの紹介Takashi Takizawa
 
hbstudy20100821 SpamAssassin
hbstudy20100821 SpamAssassinhbstudy20100821 SpamAssassin
hbstudy20100821 SpamAssassinTakashi Takizawa
 

Plus de Takashi Takizawa (18)

BIND of Summer (2017-04-13)
BIND of Summer (2017-04-13)BIND of Summer (2017-04-13)
BIND of Summer (2017-04-13)
 
nginx入門
nginx入門nginx入門
nginx入門
 
nginxの紹介
nginxの紹介nginxの紹介
nginxの紹介
 
Unbound/NSD最新情報(OSC 2013 Tokyo/Spring)
Unbound/NSD最新情報(OSC 2013 Tokyo/Spring)Unbound/NSD最新情報(OSC 2013 Tokyo/Spring)
Unbound/NSD最新情報(OSC 2013 Tokyo/Spring)
 
RFCについての復習
RFCについての復習RFCについての復習
RFCについての復習
 
DNS RFC系統図
DNS RFC系統図DNS RFC系統図
DNS RFC系統図
 
DNSのRFCの歩き方
DNSのRFCの歩き方DNSのRFCの歩き方
DNSのRFCの歩き方
 
initとプロセス再起動
initとプロセス再起動initとプロセス再起動
initとプロセス再起動
 
#mailerstudy 02 メールと暗号 - SSL/TLS -
#mailerstudy 02 メールと暗号 - SSL/TLS -#mailerstudy 02 メールと暗号 - SSL/TLS -
#mailerstudy 02 メールと暗号 - SSL/TLS -
 
#mailerstudy 02 暗号入門 (2012-02-22更新)
#mailerstudy 02 暗号入門 (2012-02-22更新)#mailerstudy 02 暗号入門 (2012-02-22更新)
#mailerstudy 02 暗号入門 (2012-02-22更新)
 
#logstudy 01 rsyslog入門
#logstudy 01 rsyslog入門#logstudy 01 rsyslog入門
#logstudy 01 rsyslog入門
 
UnboundとDNSSEC(OSC2011 Tokyo/Spring)
UnboundとDNSSEC(OSC2011 Tokyo/Spring)UnboundとDNSSEC(OSC2011 Tokyo/Spring)
UnboundとDNSSEC(OSC2011 Tokyo/Spring)
 
Unboundの最適化(OSC2011 Tokyo/Spring)
Unboundの最適化(OSC2011 Tokyo/Spring)Unboundの最適化(OSC2011 Tokyo/Spring)
Unboundの最適化(OSC2011 Tokyo/Spring)
 
#mailerstudy 01 LT POP/IMAP入門
#mailerstudy 01 LT POP/IMAP入門#mailerstudy 01 LT POP/IMAP入門
#mailerstudy 01 LT POP/IMAP入門
 
#dnstudy 01 ドメイン名の歴史
#dnstudy 01 ドメイン名の歴史#dnstudy 01 ドメイン名の歴史
#dnstudy 01 ドメイン名の歴史
 
DNS再入門
DNS再入門DNS再入門
DNS再入門
 
#dnstudy 01 Unboundの紹介
#dnstudy 01 Unboundの紹介#dnstudy 01 Unboundの紹介
#dnstudy 01 Unboundの紹介
 
hbstudy20100821 SpamAssassin
hbstudy20100821 SpamAssassinhbstudy20100821 SpamAssassin
hbstudy20100821 SpamAssassin
 

Dernier

LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
LoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイスLoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイス
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイスCRI Japan, Inc.
 
Utilizing Ballerina for Cloud Native Integrations
Utilizing Ballerina for Cloud Native IntegrationsUtilizing Ballerina for Cloud Native Integrations
Utilizing Ballerina for Cloud Native IntegrationsWSO2
 
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Gamesatsushi061452
 
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。iPride Co., Ltd.
 
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...Toru Tamaki
 
新人研修 後半 2024/04/26の勉強会で発表されたものです。
新人研修 後半        2024/04/26の勉強会で発表されたものです。新人研修 後半        2024/04/26の勉強会で発表されたものです。
新人研修 後半 2024/04/26の勉強会で発表されたものです。iPride Co., Ltd.
 
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアルLoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアルCRI Japan, Inc.
 
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptxsn679259
 
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video UnderstandingToru Tamaki
 
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。iPride Co., Ltd.
 
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)NTT DATA Technology & Innovation
 
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)Hiroshi Tomioka
 

Dernier (12)

LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
LoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイスLoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイス
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
 
Utilizing Ballerina for Cloud Native Integrations
Utilizing Ballerina for Cloud Native IntegrationsUtilizing Ballerina for Cloud Native Integrations
Utilizing Ballerina for Cloud Native Integrations
 
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
論文紹介: The Surprising Effectiveness of PPO in Cooperative Multi-Agent Games
 
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
 
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
論文紹介:Video-GroundingDINO: Towards Open-Vocabulary Spatio-Temporal Video Groun...
 
新人研修 後半 2024/04/26の勉強会で発表されたものです。
新人研修 後半        2024/04/26の勉強会で発表されたものです。新人研修 後半        2024/04/26の勉強会で発表されたものです。
新人研修 後半 2024/04/26の勉強会で発表されたものです。
 
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアルLoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
 
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
知識ゼロの営業マンでもできた!超速で初心者を脱する、悪魔的学習ステップ3選.pptx
 
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
論文紹介:Selective Structured State-Spaces for Long-Form Video Understanding
 
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
 
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
 
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
Observabilityは従来型の監視と何が違うのか(キンドリルジャパン社内勉強会:2022年10月27日発表)
 

qpstudy08 lsyncdによる共有ファイルシステムっぽい何かの検証