タグ

ブックマーク / nosa.cocolog-nifty.com (12)

  • 大規模システム構築と小規模システム構築の大きな違い(その2) - sanonosa システム管理コラム集

    前回のエントリーからの続きです。今回は大規模システムと小規模システムでの負荷対策に対する考え方の違いについて述べてみたいと思います。 【小規模システムではパフォーマンスチューニング力が重要】 小規模システムではハードウェアリソースの追加が費用面で難しいので、負荷対策においては限られたハードウェアリソースを最大限活かす方向で頑張ることになります。つまりアクセスが増えてきた場合はパフォーマンスチューニングすることで乗り切ることとなります。 例えば1台のサーバ上にApacheとJAVAとTomcatとMySQLを入れた環境があったとします。最初の頃は特に問題がなくても、徐々にアクセス数が増えてだんだん応答速度が落ちてきたときは、ソースコードを改良したり、オープンソースの各パラメータを調整したり、もしくはmemcachedを入れて繰り返し問い合せられるものをメモリ上にキャッシュさせたりといった、パ

    大規模システム構築と小規模システム構築の大きな違い(その2) - sanonosa システム管理コラム集
  • 大規模システム構築と小規模システム構築の大きな違い(その1) - sanonosa システム管理コラム集

    「小規模システムの構築」と比べて「大規模システムの構築」はなんだかものすごく高度で難しい印象を持つかもしれません。しかしどちらが高度で難しいかと問われればそれぞれ作業内容が大きく異なりどちらとも言えない気がします。そこで今回は両者どのように作業内容が違うためどちらが高度で難しいと言い切れないのかを考えてみたいと思います。 【小規模システムは全てを自分でやらないといけないので難しい】 小規模サイトの場合は担当者が自分一人しかいないということがよくあります。しかし例え小規模であっても押さえなければならないポイントは大規模サイトのそれとは大きく差がないと言えるため、実は広く深い知識と経験が必要なのが小規模システムの構築と言えそうです。 例えばいわゆる一般的な2階層式(=WEB+DB)WEBサイトをリリースするとします。この場合に必要な知識は例えばサーバ、OS、WEBサーバ、セキュリティ、ネットワ

    大規模システム構築と小規模システム構築の大きな違い(その1) - sanonosa システム管理コラム集
  • DNSサーバ設定上級編:オリジン・キャッシュの区別とforwarder設定の使い分け - sanonosa システム管理コラム集

    DNSサーバは、メールサーバに並ぶくらい仕組みをよく理解されない状態で設定されて公開されてしまう場合が多いです。「とりあえず動いているからいいか」という妥協が良くないのは言うまでもありません。ということで今回はDNSサーバの正しい設定と構成について話しをしたいと思います。 【オリジンとキャッシュの違い】 DNSサーバにプライマリとセカンダリがあることはよく知られています。しかしオリジンとキャッシュという考え方を初めて聞く人も多いと思います。オリジンは管理しているサイトの情報を提供するサーバです。キャッシュはいわゆるキャッシュのサーバになります。 オリジンとキャッシュを分けるメリットは2点あります。一つ目は例えばDNSサーバにDoSアタックがあったとしてもオリジンサーバにまでそのアタックが及びません。二つ目はオリジンサーバに不正侵入されて情報が盗まれるというリスクが減ります。(ただしオリジン

    DNSサーバ設定上級編:オリジン・キャッシュの区別とforwarder設定の使い分け - sanonosa システム管理コラム集
  • メールサーバのDNS逆引き設定を忘れずに - sanonosa システム管理コラム集

    メールサーバ(SMTPサーバorMTAサーバと呼ぶのが正しい?)を稼動させるためにはDNSサーバの設定も必要になりますが、MXレコードの記述は必ずなされますが、逆引きの設定までは徹底されていないように感じます。そんなわけで、今回はメールサーバの逆引き設定をしてみましょう。 【なんで逆引き設定が必要なの?】 世界中を見渡すと、メールサーバの仕組みを全然理解しないでとりあえずどこかから設定例を入手して動かしてみて、とりあえず動いたからOK,という安直な方法で稼動させてしまっているシステム管理者が非常に多い気がします。でもまあそれは次の理由からなんとなく分かるような気がします。 ①メールサーバを設定する機会は非常に少ない。 ②接続する相手が千差万別なのでテストが難しい。 ③メールの仕組み自体複雑で理解がしんどいのに、ただでさえ理解しにくいDNSの仕組みまで理解を要求されるのでますますしんどい。

    メールサーバのDNS逆引き設定を忘れずに - sanonosa システム管理コラム集
  • sanonosa システム管理コラム集: サーバのボトルネックはどうやって調べるか

    サーバのレスポンスが遅くなると経験のないサーバ管理者は無意味にメモリ増強を行ったりしますが、行き当たりばったりのシステム拡張は無駄な投資につながります。ボトルネック個所の調べ方は案外簡単なので、この際押さえるところをきちんと押さえて正しい方法論でシステム拡張をしていきましょう。 【一般論】 ボトルネックとなりうる要素は主に4つです。 ①CPU使用率 ②メモリ使用量 ③ディスクI/O ④TCPコネクション数 これらを押さえておけばボトルネック個所の把握とその解消は難しくありません。これを踏まえた一般論を述べてみたいと思います。 WEBサーバの場合は多くの場合、TCPコネクション数から先に限界が来ます。OSやApache等のWEBサーバのパフォーマンスチューニングを十分施すことが前提ですが、その場合TCPコネクション数1万くらいまではなんとか保てると思いますが、それ以上のTCPコネクショ

  • sanonosa システム管理コラム集: Linuxで空きメモリ容量の調べ方

    サーバ増強の検討に入るとき現在のサーバリソース使用量を知ることがとても大切になりますね。最近はサーバ増強台数の決定をうちの若いもの達にやってもらうようにしたのですが、そうすると勘違いが多く見られてちょっと驚きました。そこで今回はLinuxで空きメモリ容量の調べ方を記してみましょう。 【よくある間違い】 メモリ空き容量を調べる際、経験が浅い人だとtopもしくはvmstatあたりのコマンドを使って判断しようとします(マニアックな方はprocinfoを使うかもしれない)。次の例をみてください。 # top Mem: 902772k av, 883884k used, 18888k free, 0k shrd, 42396k buff 547404k actv, 0k in_d, 18852k in_c Swap: 2096440k av, 2956k used, 2093484k fre

  • これだけは知っておきたい ネットワークの常識 - sanonosa システム管理コラム集

    このには以下の特徴があります。 ・(なぜか世の中であまり見かけない)中級~上級を目指す方向けの入門です。 ・多くの初心者向けのみたいに重要なことを端折って書いたりしていません。ただし正確性を重視したため、文章はやや硬派と言えます。 ・ネットワークエンジニアと呼ばれる人が知っていないといけない事項をもれなく詰め込んでいます。プロトコルやフレーム、パケットというレベルはもちろんのこと、IPv6、BGP、トランジット、およびピアリングなども書でカバーしています。 書店でよく見かけるネットワークのは、中小企業の社内システム程度を想定したやさしい内容のものばかりです。しかしそういったしか読んでいない人は多分知識不足で実際の現場では使い物になりません。 そこで書では、ネットワークの入門書で勉強した人が次に読むとして構成しました。また現役のネットワークエンジニアの方も、自身が足りない知識

    これだけは知っておきたい ネットワークの常識 - sanonosa システム管理コラム集
  • これだけは知っておきたい サーバの常識 - sanonosa システム管理コラム集

    このには以下の特徴があります。 ・サーバの全体像を理解することができる入門書です。(専門学校の授業教材などにいかがでしょうか) ・電車の中でも読み進められるように、やさしい文体で書いています。(堅苦しすぎると寝ちゃいますので) ・でも必要なことは端折らずに詰め込んでいます。(エニーキャスト方式とか、ローエンドサーバとハイエンドサーバの違いとか・・・) よくある入門書だと、ただサーバの機能や用語がずらずらと書かれているだけで、一通り読んでもサーバの全体像がイメージできないということがよくあります。サーバの機能や用語を調べるだけだったらネットで検索すれば十分です。 そんなこともあり、このではサーバの全体像を理解してもらいながら、結果的に今自分は何を知っていて何を知らないのかを自分自身で発見してもらえるように構成しました。このを読んだ後別のでさらに勉強を進めていき、壁にぶちあたったらまた

    これだけは知っておきたい サーバの常識 - sanonosa システム管理コラム集
  • 「生きてる」自宅サーバー運用 - sanonosa システム管理コラム集

    インフラエンジニアの教科書」シリーズや「クラウドエンジニアの教科書」などの著者。現在(株)ハートビーツ勤務。LINE社元創業メンバー。K-POP/韓国語/お酒/サイゼリヤワイン好き。

    「生きてる」自宅サーバー運用 - sanonosa システム管理コラム集
  • sanonosa システム管理コラム集: Linuxでそこそこ安全かつ楽にサーバを立てる方法

    【1.初めに】 要望がありましたので、今回はLinux(実際はRedhat系Linux)でそこそこ安全かつ楽にサーバを立てる際の手順を記してみます。 ※一応注意:今回は、試しにサーバを立てる程度であればこのくらいで十分ではないかと思うレベルを想定しています。サービスに投入するサーバでは私はもっと細かいところまで手を入れています。 【2.そこそこ安全かつ楽にサーバを立てる手順】 さて、いよいよ題です。サーバを立てる際は、不必要なものを全て取り除いてから必要なものを追加していくというのが基になります。以下の手順1~5では不要なものの除去、手順6~7で必要なものを追加し確認しています。それを踏まえまして。 ■手順1. OSをインストールします。(私はLinuxであればCentOSを入れることが多いです。その際私はインストールの種類をカスタムにしパッケージグループの選択では開発ツール以外全部チ

    sanonosa システム管理コラム集: Linuxでそこそこ安全かつ楽にサーバを立てる方法
  • Linuxが入らないサーバに無理やりLinuxをインストールする方法 - sanonosa システム管理コラム集

    今回はLinuxが入らない(というかLinux用ドライバー、特にRAIDコントローラーが用意されていない)サーバに無理やりLinuxを入れる方法を思いつきましたのでご紹介します。 私は趣味がサーバなもので、たまにヤフオクなどで昔のサーバを購入してはCentOSなどをインストールするんですが、最近購入した東芝Magnia Z310でCentOS5をインストールしようとするとブート途中でフリーズしてしまいました。おそらくRAIDコントローラー用ドライバーがないからだと思い探してみたんですが、どうしてもそれが手に入りませんでした。 ドライバーがなければCentOS5の利用は無理かな、と思った瞬間一つのアイデアを思いつきました。それは仮想化技術の利用です。仮想化すればドライバ部分は仮想化エンジンが吸収してくれますしね。ということで早速Windows2000をインストール後、そこにVMWare Se

    Linuxが入らないサーバに無理やりLinuxをインストールする方法 - sanonosa システム管理コラム集
  • English verisonのOSでシステムを構成しよう - sanonosa システム管理コラム集

    これまで非常にいろいろなシステムを構築してきましたが、最近よく思うのは、OSを安定的に動かすにはEnglish versionが一番であるということです。 これにはいろいろな意味があります。 (1) OSはまずEnglish versionで作られ、その後Japanese versionを作るので、その過程で不具合が紛れ込む可能性がある (2) Japaneseに比べてEnglishのほうが余計なものが入っていない分シンプルで軽い (3) ネット上には英語で書かれたドキュメントやノウハウが日語で書かれたそれに比べて圧倒的に多い。 (4) グローバル企業の場合、どの国の担当者も理解できる。 私はUNIX系OS(Linux,Solaris,FreeBSDなど)は昔からEnglish versionを使ってましたが、最近はWindows Serverもかなり安定してきたことからEnglish

    English verisonのOSでシステムを構成しよう - sanonosa システム管理コラム集
  • 1