タグ

負荷分散に関するdeg84のブックマーク (19)

  • こんなに簡単! Linuxでロードバランサ (3) : DSAS開発者の部屋

    前回はkeepalivedを使ってWebサーバを冗長化してみました。 今回はkeepalivedのもう一つの機能であるVRRPを使って、ロードバランサ自身を冗長構成にしてみたいと思います。 ┌─────┐ │ client │ └──┬──┘ │[10.10.31.200] │ ━━━━━━━┯━━━━┷━━━━━┯━━━━━━━━━ 10.10.31.0/24 │ │ │ │ │ ←(10.10.31.10) → │ │ ←{10.10.31.100}→ │ [10.10.31.11]│ │[10.10.31.12] ┌─┴─┐ ┌─┴─┐ │ lv1 │ │ lv2 │ └─┬─┘ └─┬─┘ [192.168.31.11]│ │[192.168.31.12] │ ←(192.168.31.10)→│ │ │ ━━━━━━┯┷━━━━━━━━━━┷┯━━━━━━━━ 192.168.3

    こんなに簡単! Linuxでロードバランサ (3) : DSAS開発者の部屋
  • こんなに簡単! Linuxでロードバランサ (2) : DSAS開発者の部屋

    前回までで、 複数のWebサーバにロードバランスする というところまではできました。 これでリアルサーバへ負荷分散することができたのですが、冗長性がありませんでした。つまり、リアルサーバがダウンしても、ロードバランサはそれを認識できず、ダウンしているリアルサーバなのにパケットを送ってしまっていました。 このとき、クライアントから見ると、たまにサーバから応答がないように見えてしまいます。 というわけで今回は冗長化のお話、 リアルサーバのヘルスチェック を紹介したいと思います。 今回はkeepalivedを使います。 おおざっぱにいうと、keepalivedは2つの機能を提供します。 1. ヘルスチェック機構と連携したIPVSでのリアルサーバの管理 (--check) 前回ipvsadmコマンドを使って行ったような、バーチャルIPアドレス (VIP) やリアルサーバの管理を設定ファイルに記述す

    こんなに簡単! Linuxでロードバランサ (2) : DSAS開発者の部屋
  • DSAS開発者の部屋:こんなに簡単! Linuxでロードバランサ (1)

    DSASのロードバランサは高価なアプライアンス製品ではなく、LinuxのLVS (Linux Virtual Server)を利用しています。 安価、というか、ハードウエア以外は金銭的コストがゼロなので、一般のクライアントからのアクセスを受ける外部ロードバランサのほかに、内部サービス用のロードバランサも配置しています。それぞれactive, backupで2台ずつあるので合計で4台もロードバランサがあることになります。(こんな構成を製品を使って組んだら数千万円すっとびますね) また、ネットワークブートでディスクレスな構成にしているので、ハードディスが壊れてロードバランサがダウンした、なんてこともありません。 ですので「ロードバランサは高くてなかなか導入できない」という話を耳にする度にLVSをお勧めしているのですが、どうも、 なんか難しそう ちゃんと動くか不安 性能が出ないんじゃないか 等々

    DSAS開発者の部屋:こんなに簡単! Linuxでロードバランサ (1)
  • DSAS開発者の部屋:いかにして冗長構成を作るか 〜DSASの場合〜

    DSASはいかにして可用性を高めているか、ちょっと紹介したいと思います。 今回は概略ということでざざざっと説明します。個別の構成についてはまた回を改めて紹介したいと思います。 │ │ ┌┴┐ ┌┴┐ │ │ │ │ISPの上位ルータ └┬┘ └┬┘ │ │ 〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜〜 責任分解点 │ │ ┌┴┐ ┌┴┐ │ ├─[ lb(active) ]─┤ │ │ ├─[ lb(backup) ]─┤ │ │ │ │ │ │L2├─[ Web ]─┤L2│ │SW├─[ Web ]─┤SW│ │ ├─[ Web ]─┤ │ │ │ │ │ │ ├─[ SMTP ]─┤ │ │ ├─[ SMTP ]─┤ │ │ │ │ │ │ ├─[ D B ]─┤ │ │ ├─[ D B ]─┤ │ │ │ │ │ │ ├─[ NFS ]─┤ │ │ ├─[ NFS ]─┤ │ │ │ │ │

    DSAS開発者の部屋:いかにして冗長構成を作るか 〜DSASの場合〜
  • スケーラブルWebシステム工房 第1回 / いろんなものをロードバランス ― MySQL、SMTPサーバ…

    スケーラブルWebシステム工房 第1回 いろんなものをロードバランス ― MySQL、SMTPサーバ… 更新日: 2023-11-07 19:20:41 +0900 公開日: 2011/05/25 発売日: 2007/4/24 この文書は2007/4/24に書かれたもので、ソフトウエアの名称、バージョン、設定項目、社名などの固有名詞などなどは当時のまま掲載しています。 ですので、インストール手順や設定内容は最新版のドキュメントを参照していただき、この文書からは理論や考え方、構成のヒントなどを読み取っていただければと思います。

  • 満足せる豚。眠たげなポチ。:大規模サービスの運用事例まとめ

    ここ数年の大規模サービスのシステム運用について調べてみたので参照したページやファイル、へのリンクをまとめておく。PDF へのリンクも多数含まれているのでご注意を。 時代が時代なら企業のノウハウとして隠されていたような情報がこれだけ公開してもらえているというのが非常にありがたい。公開してくれている各企業や公開してくれている人に感謝。 あとで気付いたが、Google や Facebook の事例も探しておけばよかった。Thrift とかあったのに。「こんな情報もあったよ」などあればぜひ教えてください。追記していきます。 youtube http://d.hatena.ne.jp/stanaka/20070427/1177651323 digg http://d.hatena.ne.jp/stanaka/20070427/1177651323 livedoor http://labs.cybo

  • Twitterの大規模システム運用技術、あるいはクジラの腹の中(前編)~ログの科学的な分析と、Twitterの「ダークモード」

    Twitterの大規模システム運用技術、あるいはクジラの腹の中(前編)~ログの科学的な分析と、Twitterの「ダークモード」 先週の6月22日から、米サンタクララで行われていたWebサイトのパフォーマンスと運用に関するオライリーのイベント「Velocity 2010」が開催されていました。 その中で、TwitterのJohn Adams氏がTwitterのシステム運用について説明するセッション「In the Belly of the Whale: Operations at Twitter」(クジラの腹の中:Twitterでの運用)が行われています。Twitterのような大規模かつリアルタイムなWebサイトの運用とはどういうものなのでしょうか? 公開されているセッションの内容を基に概要を記事で紹介しましょう。システム管理者の新たな役割、Railsの性能の評価、Bittorrentを使った

    Twitterの大規模システム運用技術、あるいはクジラの腹の中(前編)~ログの科学的な分析と、Twitterの「ダークモード」
  • DBサーバーの負荷分散

    MySQLアクセスを負荷分散する ユーザーからのアクセス数が非常に多いWebサイトにおいて、MySQLのSLAVEサーバーを複数台並べて負荷分散させるということがよく行われています。ただ、Webアクセスの負荷分散は一般的なテーマなのでいろいろなところで語られているのに対し、DBアクセスの負荷分散というテーマは一般的でないのかあまり語られていないように感じます。 DBアクセスを負荷分散するにあたって一番荒っぽい方法は、Webサーバー上のプログラムの中でどのSLAVEサーバーに接続するかをランダムで決める方法です。ランダムと言っても長時間アクセスしているとほぼ接続先が均等化されるので、一見この方法でも問題ないように見えます。しかしこの方法だと、接続しに行こうとしたSLAVEサーバーが高負荷もしくはサービス停止中であっても構わず接続しに行ってしまうという問題があります。 このような問題を解決する

  • nginx+squidで画像キャッシュサーバーの作り方 - hideden.hatenablog.com

    仕事で画像キャッシュサーバーを構築した時のメモ。大規模事例の設定例が検索してもあまり見つからなかったので同じような境遇の誰かの参考になれば。 ピーク時のトラフィックは数Gbps 画像総容量は数十TB バックエンドのstorageが複数種類 規模とアクセス量とアクセスされる画像の種類が多いので、squidでdisk cacheを使用するとCOSS等を使用してもdiskIOで詰まる為、全てon memory cache。cache容量を確保する為に必然的にcacheサーバーの台数も数十台。 1. squidをsibling構成で並列に並べる cache_peer 10.0.1.1 sibling 80 3130 no-query no-digest proxy-only cache_peer 10.0.1.2 sibling 80 3130 no-query no-digest proxy-o

    nginx+squidで画像キャッシュサーバーの作り方 - hideden.hatenablog.com
  • @IT Special PR:600億PVもMySQLで! モバゲーのインフラ底力

    携帯向けサイト「モバゲータウン」の勢いが止まらない。2010年3月の会員数は約1800万人、月間ページビュー(PV)600億という"モンスターSNS"に成長している。意外なことに、これだけのアクセスをさばくのに、memcachedをはじめとするKVS(Key-Value Store)系のインフラ・ソフトはあまり使っておらず、MySQLで十分だという。モバゲータウンのインフラ担当者に話を聞いた。 モバゲータウンを運営するDeNA(ディー・エヌ・エー)は、もともと1999年に開始したオークションサイト「ビッダーズ」で知られている。その後、オークションに加えてECサイトを開始し、auとの提携により「auショッピングモール」などで急速に成長した。 ビッダーズだけでも、数千万PV規模の大規模サービスだが、最近はモバゲータウンの成長が著しい。 「特に2009年9月から順次リリースした自社製のソーシャル

  • Webアプリケーションのロードバランス

    はじめに 拡張性のある企業Webアプリケーションを作るには、クライアント側とサーバ側の両方のコンポーネントをよく検討する必要があります。しっかりしたコードベース、厳正に実装されたキャッシュ、圧縮技術を用いたコンテンツアクセラレーションは、高いパフォーマンスを得るための最適な土台作りに役立ちます。この記事では、サーバ側に重点を置き、パフォーマンスと拡張性の観点から見たロードバランスの概念を紹介します。いくつかの一般的なロードバランス方式について概説すると共に、それがアプリケーションの拡張性とエンドユーザー側から見たパフォーマンスの維持・向上にどのように役立つかについて解説します。ロードバランスはそれだけでもかなり大きなテーマなので、この記事では、ロードバランスの具体的なセットアップ方法には触れません。詳しいセットアップ方法については専門に扱った書籍や文書が多数提供されているので、そちらをご利

    Webアプリケーションのロードバランス
  • naoyaのはてなダイアリー - MySQL の負荷分散に LVS + keepalived を使う

    あとで書く、と言った手前なので書くとします。 DSASの中の人がすごい勢いで LVS の話を書いてくれてます。この辺。LVS を使うと Linux と箱でロードバランサが作れちゃいます。普通に買ったら数百万とかしちゃうやつ。 DSAS の中のひとに感謝しつつ、いい機会なのでやってみよう! と思っていろいろ試して昨日あたりからはてなの中でも LVS + keepalived で動かしはじめてます。いまのところ問題なし。 そのロードバランサをどこに使ってるかですが、普通ロードバランサというとインターネットからの入り口のところに置いてウェブサーバーの負荷分散に使うイメージがあります。が、今回ははてなでは MySQL のスレーブの手前に置くという役割でとりあえず使いはじめました。 +-----------+ +-----------+ | mod_perl | | mod_perl | +----

    naoyaのはてなダイアリー - MySQL の負荷分散に LVS + keepalived を使う
  • MySQL Conference & Expo 2007 - とあるはてな社員の日記

    一昨日から今日まで3日間の日程で開催されていた、MySQL Conference & Expo 2007に行ってきました。日帰り圏内どころか、自転車圏内で、こういうカンファレンスがあるのは、素晴しいです。 詳細は、随時アップされるであろうプレゼン資料と、Planet MySQLに大量の報告があります(全部英語ですけど)。 個人的に注目していたのは、Digg.com、Flickr.comとYoutube.comのDB周りアーキテクチャのセッションでした。あとは、http://www.mysqlperformaceblog.com/の人のセッションは、細かいTipsが多く、具体的にだいぶ役に立ちそうです。 というわけで、簡単に注目したセッションの内容を紹介してみます。ちなみに、内容の正確さは無保証です:P 気が向けば、もっといろいろ考察してみるかもしれません。 Technology at Di

    MySQL Conference & Expo 2007 - とあるはてな社員の日記
  • スケールアウトする分散ファイルシステム 計画 - VIVER

    スケールアウトする分散ファイルシステム 計画 スケールアウトする分散ファイルシステムを設計中です。とりあえずはサーバー1台でも動作し、後からサーバーを足していくと、自動的に容量が増え、冗長化され、負荷分散されるというものを目指しています。LAN用に特化し、NFS+DRBDの置き換えを狙っています。 まえがき 今や、Webサーバーいくらでも冗長化や負荷分散ができるようです。メモリを足す、HDDを足す、と同じ感覚で、サーバーを足す、というのが成り立つのではないでしょうか。(この点に関してはDSAS開発者の部屋全体、特に「DSASのあれこれ」の資料を公開しますやこんなに簡単! Linuxでロードバランサ シリーズが非常に参考になります) しかしストレージはどうでしょうか。ストレージの冗長化や負荷分散にも、DRBDを始めとしていろいろなソフトウェアが開発されていますが、「スケールアウトするか」「

  • 負荷分散システム上でのハードディスクデータの同期をDRBDで実現する

    はじめに 前回は、heartbeatに付属しているldirectordを使ってgatewaying型の負荷分散システムを構築するための方法について解説しました。あまりコンテンツが更新されないようなWWWサーバなど場合には、このような負荷分散の仕組みを使って、比較的簡単にシステムを冗長化することができます。しかし、メールサーバやデーターベースサーバのように、ハードディスクに記録されているデータが頻繁に更新され、そのデータがなければサービスが行えないようなサービスでは、データの共有についても考慮する必要があります。 今回は、DRBDによるハードディスクのデータ共有の設定について解説します。 DRBDの概要 DRBDは、ネットワークを経由してハードディスクのリアルタイムミラーリングを行うためのソフトウェアで、カーネルモジュールと管理用ソフトウェアのセットで利用します。DRBDは、Linbit社が

    負荷分散システム上でのハードディスクデータの同期をDRBDで実現する
  • drbd.conf

    ストレージには寿命があり、保存された情報は永遠に正常性を保証されるわけではありません。その為に別のストレージにデータをバックアップしたり、ストレージそのものを多重化してデータを保護することが重要です。今回紹介するは、ストレージデバイスを多重化し、データを複数のストレージに保存する仕組みで、DRBD(Distributed Replicated Block Device)と呼ばれているものです。同様の仕組みにソフトウェア/ハードウェアRAIDがあります。 DRBD(Distributed Replicated Block Device)とは、TCP/IPネットワークを通じて複数のサーバのストレージ(パーティション)をリアルタイムにミラーリング(複製)するソフトウェアです。RAID1のようなミラーディスクを構築することができます。ソフトウェア/ハードウェアRAIDは同じサーバ内のストレージを使

  • Bridge Word

    This shop will be powered by Are you the store owner? Log in here

    deg84
    deg84 2009/05/18
    サーバ台数分必要ってのはぼったくり感が否めない
  • ミクシィのCTOが語る「mixiはいかにして増え続けるトラフィックに対処してきたか」:ITpro

    ミクシィのCTOが語る「mixiはいかにして増え続けるトラフィックに対処してきたか」 YAPC::Asia 2006 Tokyo 東京都大田区で開催されているPerl技術者向けカンファレンス「YAPC::Asia 2006 Tokyo」で2006年3月29日,日最大のソーシャル・ネットワーキング・サイト(SNS)である「mixi」を運営するミクシィのBatara Kesuma(バタラ・ケスマ)取締役最高技術責任者(CTO)が,増え続ける膨大なトラフィックにどのように対処してきたのかについて講演した。カギとなるのは「データベース分割」である。 mixiのシステムはもともとBatara氏が1人で作り上げたものだ。2003年当時,米国でFriendsterなどのSNSがはやっており,同氏が会社(現在のミクシィ,当時はイー・マーキュリー)にSNSを作りたいと提案したところ認められたという。同氏が

    ミクシィのCTOが語る「mixiはいかにして増え続けるトラフィックに対処してきたか」:ITpro
  • 1