このブログを検索

2011年9月7日水曜日

ネットワークの設計とサーバー構築の弊社内基本の話


弊社では、ネットワークの設計、サーバーの構築などを生業としていますが、デフォルトなネットワークの構成を、今回は書いてみました。
(久々の長文です。)

各企業様の要件によっては複雑化していきますが、シンプルなほうが拡張も問題発見も速やかにできますので、なるべくシンプルになるように心がけて設計しております。
なお、下請けや常駐派遣なども承っておりますので、人手不足のSIer様、ぜひ、お声をかけてください。
webmaster@niriakot.jp

ネットワークのどこか一部でも導入検討されておりましたら、ぜひ、お声をかけてください。
情報システム部門の方のみならず、Web担当者、システム開発会社、サイト制作会社などなど、ネットワークを活用したビジネスをお考えの方は是非お問い合わせ下さい。
弊社と共にディスカッションすることで新規開拓の道が開けるかもしれません。
(不況な時こそ攻めの施策が必要ですぞ。)
当社は時給5000円での作業が基本です。
もし、これでも高いという企業様がいらっしゃいましたら、別の要員を手配致しますので、その際もご相談ください。

※※※『当社はネットワークの御用聞き』を目指しております。※※※
やり取りはメールを基本として、必要な時に必要な答えをレスポンスよく返す。
弊社の顧客担当SEは毎日、ご挨拶メール(朝晩の2回)をして、用がなくても、お客様の日々の問題解決のため、尽力しております。
おはようございますメールと、もう帰宅しますメール。(コミュニケーションの一環です。)
ちなみに弊社からお送りするメールアドレスはメーリングリストのメールアドレスですので、返信いただいて仮に担当SEが休みでも、チームの誰かが受信し返答する仕組みです。
※これは運用契約を頂いている場合であって、なにも依頼がない場合、弊社からのメールがSPAMになってしまいますので、余計なメールはお送り致しません。
たまにセールスメールをするぐらいです。

このごろは、サーバー構築のほとんどを仮想化で作成しますので、構築までに日数を短縮でき、コストも短縮できるというメリットがあります。
すぐに運用に入れるというメリットがある一方、運用が重要になるという点と弊社にとっては売り上げが低迷するのが、今のところ問題なんですが。。。
しかし、今後の主流はネットワークの構築もソフトウェアアプライアンスの導入が進み、導入がスムーズに進むと思います。
弊社でもソフトウェアアプライアンスを提供しようと思っておりますが、なかなか無償ではいまだに提供できておりません。
(有償はすでに実施済み)

また、仮想化に関しては、現在、これなくしてはネットワーク並びにサーバーの構築が不可能なほど導入が進んでおり、まず、導入されていない場合がないといえます。(弊社の場合)
もちろんリモートで電源のon/offが可能なように構築致します。

さて、簡単な絵を準備しましたので、これを元に弊社の考え方を書いておきます。







【絵の説明】
「青線」 ・・・100Mbpsもしくは200Mbps
「紫線」 ・・・1Gbps
「水色線」 ・・・プロキシを使用する場合のデータの流れ。

【機器解説】
※noVMと書いていないものはすべてゲストOSでの構築です。
noVMとなっているものの選定基準は、大量データになる恐れがあるものです。
そうしませんとゲストOSのバックアップに長時間要することになり、仮想化のメリットが出なくなるからです。
仮想化においてはスピードが何事においても、とても重要なのです。


「router」 ・・・ルーターはインターネットに出るのに最低一つ、いります。
2つ以上設置して、メンテナンス回線として使う場合もあります。
もしくはDNSもしくはロードバランサーを用いて、
       アクセス先をラウンドロビンもしくは冗長化で使用する場合もあります。
その場合は、DNSのラウンドロビンが一番てっとり早く安上がりです。
なお、特にファイアーウォールの機能はいりません。
ファイアーウォールは最新のPCであれば、
       システムでソフトウェア的にやっても十分パフォーマンスが出ます。
ただし、使い勝手や特別な機能などはアプライアンスに軍配が上がります。
ルーターはパケットフィルタやDMZへのNATを使用する程度です。
なので、NTTや通信業者提供のものでも十分使えます。
仮に乗っ取られた場合は、もちろん通信できなくなりますので、
       アクセス制限はかける必要があります。

「DNS(out)(in)」・・・名前解決に必要。
       メールやGoogleApps用にMXやTXTレコードなどの登録もあります。
外部、内部に必要です。
正引き、逆引き、きちんと設定しませんとネットワーク遅延の原因となります。
なお、内部にあるsambaがWINSを兼ねます。
複数のドメインや複数のサブネットなどの管理も可能です。
弊社のDNSをスレーブとして、使うことも可能です。
DNSは通信の要ですので、この設定が拙いとネットワークが遅くなったり、
       不通という事態に陥ります。

「mail」 ・・・外部とのメールのやり取りに使います。エンベロープやヘッダーを変えたり、
転送したりと弊社ではカスタマイズしたメールサーバーも構築いたします。
複数台の構成の場合は、メールがループしないように気を付けなければいけません。
なお、PostfixとCyrus-IMAPが標準機能として、構築する場合が多いです。
これにamavisd-newを組み込みウイルス・SPAM対策も施してあります。
(clamav&spamassassin)
単独でウイルス・スパム対策のソフトウェアアプライアンスも構築可能です。
その場合は、ゲートウェイとして機能するようなメールサーバーを構築致します。
複数台を作成し、冗長化した場合は、
       ユーザーに近いところを単独構成にし、最終的に集約する方法をとっております。
また、ユーザー管理としてLDAPを導入致します。
LDAPを導入することで、
       ユーザー管理やメーリングリスト管理がとても簡単になります。

「web」 ・・・ホームページだけでなく、アプリケーションサーバーなども含まれます。
基本的にはapacheをベースにして、その上にサービスを載せていきます。
スケジュール管理やインターネット上の書類閲覧など
       グループウェアとして使用する場合や
社内のプロジェクトメンバーや社外の顧客とのやり取りのためのSNS、
顧客へのサポートの一環として、
       webを使用し情報提供をする企業様が増えております。
注文を取るだけでなく、売った後のサポート、
       顧客満足度向上のためのWebに現在は変化してきております。
ECやSNS、ブログなど各種サービスはありますが、
CMSであるJoomlaをベースにエクステンションを設定すると
       ほぼ同機能が一つのサーバーで実現可能です。
弊社はこのJoomlaを標準搭載としたうえでWebサーバーを提供しています。
現在のバージョンはJoomla1.7.0が最新です。
内部に置くwebサーバーを置く場合は、proxy.pacの配布にも使用できます。
DBは別サーバーにして、セキュリティを強化致します。

「VPN」 ・・・社外から内部のリモートデスクトップに接続したり、
       リモートメンテナンスをしたりするのに
必ずと言っていいほど必要になります。
なんといっても通信が暗号化されることと、
アクセスしてくるホストには証明書がないとアクセスできないという
       セキュリティのメリットがあり、
在宅勤務やリモートオフィスには必須の機能であると考えます。
どのマシンから、どのアカウントで接続してきたか、
ある一定のハードルが上げることが、情報資産を守る最善の方法になります。
用途は他にもありますが、社内の社員だけではなく、
       外部の協力会社専用、顧客専用などアカウントごとに
区別することでセキュリティも向上させることが可能です。

「DB」 ・・・DBはわざわざDMZに置く必要がありません。
といいますのも直接外部からアクセスする必要がないからです。
なので、グローバルIPアドレスはふりません。
必ず、webサーバーやアプリケーションサーバーからのアクセスになるからです。
かつ、DB自体を暗号化しておけば、
       万が一不正アクセスにあっても、少しは大丈夫です。
OS標準の暗号化ファイルシステムにして、
       そこに格納しておくのがいいと思われます。
ちなみに弊社の場合、CMS用にMySQL、
       WebDAVなどの共有リソース用にPostgreSQLを混在させて、構築しております。

「NAT」 ・・・DMZとLocalをつなぐためにNAT並びにファイアーウォール機能を持たせます。
OS標準の機能で十分と弊社は考えます。
ちなみに弊社が採用しておりますopenSUSEにはAppArmorも搭載されており、
同じサービスのプロセスでも好き勝手にアクセスできないように
       制御することが可能です。
よく、パッチを当てたり、
       アップデートをするとアクセスできなくなったりしますが(恐らくバグ)、
セキュリティを最重要視する弊社と致しましては外せない機能です。
下手なハードウェアアプライアンスよりかはできると思わせます。

「proxy」 ・・・クライアントPCが多い場合、
       proxyがないと同じアクセスが何度もネットワークを通り、
非常に無駄なような気がしますので、一台は導入するべきだと思います。
この頃では、上記のキャッシュとしての使用方法よりも
       アクセス管理をするために使用するケースが増えております。
どのPCからどこへアクセスしたか?頻度は?
       などログを収集する意味でも必要な場合が多いです。

「SYSLOG」 ・・・複数台構成になったサーバーのログ管理はとても面倒です。
なので、ログサーバーを構築し、ログを集約致します。
これで、grepするのがとても楽になります。
内部向けなので、UDPだけで構築する場合がほとんどです。

「samba」 ・・・Windows系クライアント同士のファイルの共有に使用したり、
       WINSなどの名前解決に使用しますので、
今や必須のサーバーではないでしょうか?
ちなみにサーバーはゲストOSで作成しますが、
       データの保存部分は外部のiSCSIに持たせるようにするのが、
弊社のトレンドです。
そうしませんとゲストのホットバックアップ(稼働中のバックアップ)に
       データを含めると非常に時間がかかるからです。
データをやり取りするサーバーの場合、回線は1Gbpsを束ねて(bonding)、
       使用することが望ましいです。

「NFS(noVM)」 ・・・Linuxでの外部ディスクのマウントを容易にするNFSですが、
弊社の場合、
       VMのゲストOSのホッとバックアップの保管先としてしか使用しておりません。
これも回線は1Gbpsを束ねて(bonding)、使用することが望ましいです。

「iSCSI(noVM)」 ・・・sambaやNFSを使うにしろ、大元のディスクはiSCSIで構築し、
マウントするという手法をとるのが弊社のトレンドです。
iSCSIのターゲットを作るのは非常に簡単になったのと、
       回線を束ねる(bonding)技術が高速になってきたので、
実用として使えるレベルになりました。
データの大きさを考慮し設計しますが、
ギガビットの回線、2-3本束ねておけば、
       今のところ内部のデータ転送は十分ではないでしょうか?
もちろん、各社の要件を考慮し、回線の設計も最適なものを提案します。

「work1/work2」 ・・・モバイル回線でメンテナンスなどをする場合に、
       不慮の回線断時の作業停止や設定クリアを防止するうえで、
リモートデスクトップを経由した端末でもって、作業を致します。
SSHやvSphereClient、VeeamMonitorなど設定しておけば、
       リモート管理も万全です。
もちろん、VPN経由の暗号化された状態でのアクセスが必須です。

「PC1(noVM)」 ・・・弊社はESXiを使用して構築することがほとんどですので、
           vSphereClientを動かすPCが必要になります。
リモート端末から、上記の作業端末にリモートデスクトップで参加し、
       操作する方法もあります。

以上が当社のネットワーク並びにサーバー機器に対する考え方です。
もし、ご質問やご依頼などございましたら、お気軽にメールしてください。
webmaster@niriakot.jp

以上よろしくお願い致します。

1 件のコメント:

  1. 追記
    NTPサーバーが抜けてました。
    これがないと各サーバーの時計がずれるので、ログ管理には不便です。
    なので、NTPサーバーも是非設置しましょう!

    返信削除