書籍概要

Software Design 20147月号

バックナンバー一覧

発売日
更新日

概要

第1特集
多機能・高速処理・高負荷対策
そろそろNginx移行を考えているあなたへ

最近,利用者が増えてきているNginxは,速くて軽いWebサーバとして注目されています。Apacheから乗り換えを考えている方もいらっしゃるのではないでしょうか。Nginxは高速で多機能で,高負荷にも耐えられると,いいとこどりのように思われがちですが,いざ導入するとなると問題が起こる可能性もあり,そう簡単にはいかない場合も多いようです。

本特集では,ApacheとNginxを比較し,実際に移行するにはどのようなことを考えておかなければならないかを紹介します。また移行後のトラブルシューティングやクラウドでの利用についても解説しています。

第2特集
知っているようで知らない
DHCPサーバの教科書

「DHCPは縁の下の力持ち」とよく言われます。wifiノートPCも,スマホも,タブレットもTCP/IPでつながらなければ何もできません。ただの箱(というか板)になります。TCP/IPでさまざまなIT機器がつながることで,インターネットのいろいろなサービスを享受できます。その大事な「インターネットのつながるしくみ」を支えている技術の1つが「DHCP(Dynamic Host Configuration Protocol)」です。ネットワークに接続するときにIPアドレスを割り当てるしくみです。この技術のおかげでどんなにネットワーク構築が楽になったことか……。読者の多くの皆さんは知らないかもしれませんが,瞬く間にDHCPが普及していきました。さて基礎の基礎を新しい観点で復習する本特集は,DHCPのしくみを解説したあと,実際に手を動かしてコマンドを入力して確認したり,クラウド環境でどのようにDHCPが使われているのか,ユーザはどのように使うのかといったところまで解説します。古くても新しいDHCPを学んでください。

一般記事
ITビジネスの足下を揺るがす大きなバグ
OpenSSLの脆弱性“Heartbleed”の教訓【前編】

「Heartbleed」として知られることとなったOpenSSLのHeartbeat Buffer Overreadの脆弱性はたいへん話題になり,あちらこちらで多くの情報が流れました。本稿では今号と次号で前後編の2回に分けて,歴史的背景からソースコードレベルまで,この問題の本質的な原因を深く分析してみます。

短期集中連載
Web標準技術で行うWebアプリのパフォーマンス改善
第3回(最終回) ブラウザでパフォーマンスを計測する

HTML5のW3C勧告化が間近に迫っています。リッチなコンテンツが作れることはもとより,実用的なパフォーマンスが得られるのかが気になるところです。本連載は,Web標準技術におけるパフォーマンス改善手法について解説します。3回目となる今回は,Web標準でWebアプリケーションのパフォーマンスをモニタリングする手法を紹介します。本稿で取り上げる「Real User Monitoring」は,Webアプリ開発者の協力なしには実現できません。インフラエンジニアだけでなく,アプリ開発エンジニアにも必須の技術です。

一般記事
リアルタイム/分析機能/スケーラブルが武器
複雑化するサーバ環境の監視を変える「OpenTSDB」【後編】

サーバ管理者の皆さん,昨今の複雑化・肥大化するサーバ環境の監視業務は,大きな負担になってきてはいないでしょうか。あるいは蓄積されたログを分析していたのでは,障害の発見が遅れてしまったり,絶好のタイミングを逃してしまうという事態になっていませんか。本稿で紹介する監視ツール「OpenTSDB」には,もしかしたら欲しかった機能があるかもしれません。一度試してみませんか。

短期集中連載
Rettyのサービス拡大を支えた“たたき上げ”DevOps
第3回(最終回) やっぱり楽しい! トレンドに乗ったインフラ改善

実名ユーザたちによるお勧めからレストランを探せるグルメ系Webサービス「Retty」。急成長するサービスの裏側では,融通のきかない古いシステムから大規模システムへの移行という難題が立ちはだかっていました。それを乗り越えたのはインフラ経験なしのアプリケーションエンジニア。スマートなだけではすまされない,現場でのInfrastructure as Code実践を紹介してもらいます。3回目となる今回は,AWSのElastic BeanstalkでImmutable Infrastructureを実践!というテーマで,既存インフラへのトレンド適用例を紹介します。

目次

第1特集
多機能・高速処理・高負荷対策
そろそろNginx移行を考えているあなたへ

  • 第1章:ApacheからNginxへ移行するメリットとは…… 伊勢 幸一
  • 第2章:各Webサーバの比較に見る,Nginxを導入する理由…… 佐野 裕
  • 第3章:移行前のチェックポイントの洗い出し…… 長野 雅広
  • 第4章:Nginxのインストールとコンフィグ設定の基本…… 橘 慎太郎
  • 第5章:Nginx引っ越し本番!…… 田籠 聡
  • 第6章:移行後に気を付けておくべきこと…… 田籠 聡
  • 第7章:クラウドでのNginxの使い方…… 大久保 智之

第2特集
知っているようで知らない
DHCPサーバの教科書

  • Part1その役割を確認!
    DHCPをご存じですか?…… 中井 悦司
  • Part2じっくり押さえる基礎の基礎
    DHCPの舞台裏…… 中井 悦司
  • Part3動作原理を実機で確認してみませんか!
    DHCPサーバの構築・運用…… 中井 悦司
  • Part4クラウド&スマホを例として考える
    「今どき」のIPアドレス管理…… 中井 悦司
  • Practical Column1:DHCPとDNSの連携…… 鶴長 鎮一
  • Practical Column2:Amazon VPCのDHCPオプションで設定を変更するには…… 鶴長 鎮一

一般記事

  • ITビジネスの足下を揺るがす大きなバグ
    OpenSSLの脆弱性“Heartbleed”の教訓【前編】
    ……すずきひろのぶ

短期集中連載

  • Web標準技術で行うWebアプリのパフォーマンス改善
    【3】ブラウザでパフォーマンスを計測する
    ……川田 寛

一般記事

  • リアルタイム/分析機能/スケーラブルが武器
    複雑化するサーバ環境の監視を変える「OpenTSDB」【後編】
    ……sap

短期集中連載

  • Rettyのサービス拡大を支えた“たたき上げ”DevOps
    【3】やっぱり楽しい! トレンドに乗ったインフラ改善
    ……梅田 昌太

SD EVENT REPORT

  • 「LinuxCon Japan 2014」開催,Linus Torvalds氏が語るコミュニティのあり方
    ……編集部

連載

  • ITエンジニア必須の最新用語解説
    【67】Docker……杉山 貴章
  • digital gadget
    【187】360度,周囲を取り囲むパノラマ映像……安藤 幸央
  • 結城浩の再発見の発想法
    【14】Virtual……結城 浩
  • enchant ~創造力を刺激する魔法~
    【15】不協和音……清水 亮
  • 秋葉原発! はんだづけカフェなう
    【45】オシロスコープとロジックアナライザ……坪井 義浩
  • Hack For Japan~エンジニアだからこそできる復興への一歩
    【31】Hack For Japan 3.11~3年のクロスオーバー振り返り(後編)……鎌田 篤慎
  • 温故知新 ITむかしばなし
    【35】プリンタ……北山 貴広
  • SDでSF
    【7】『ディアスポラ』……小飼 弾
  • ひみつのLinux通信
    【7】コマンドヒストリに時を刻め……くつなりょうすけ
  • るびきち流Emacs超入門
    【3】反復練習に勝るものなし――打鍵すべし! 設定を書くべし!……るびきち
  • シェルスクリプトではじめるAWS 入門
    【4】AWS利用環境の構築(中編) 請求関連の設定……波田野 裕一
  • Androidエンジニアからの招待状
    【48】アプリの脆弱性を気にしてますか? 学習・点検ツール「AnCoLe」……谷口 岳
  • RHELを極める・使いこなすヒント .SPECS
    【3】開発フローを考慮したサーバの安定運用…… 藤田 稜
  • Be familiar with FreeBSD~チャーリー・ルートからの手紙
    【9】仮想ディスクのサイズ調整が便利になったgrowfs(8)……後藤 大地
  • Debian Hot Topics
    【16】効率よくリポジトリミラーを構築する方法…… やまねひでき
  • レッドハット恵比寿通信
    【22】Enjoy Open Source!!…… 橋本 賢弥
  • Ubuntu Monthly Report
    【51】Ubuntu 14.04 LTS日本語Remixを作ってみる…… あわしろいくや
  • Linuxカーネル観光ガイド
    【28】Linux 3.15の新機能~dm-eraとFile private POSIX lock~……青田 直大
  • Monthly News from jus
    【33】技術は変わり,インフラは不変になる……法林 浩之

サポート

補足情報

補足

(2014年6月23日更新)

第2特集 DHCPサーバの教科書
P.86 Practical Column1「DHCPとDNSの連携」の補足データ

補足1 ゾーンサーバの動作確認(P.87「1 ゾーンサーバとして動作しているか,DHCPサーバや各クライアントから確認」)

正引きテスト
# dig @DNSサーバのIPアドレス dns.example.jp
...省略...
;; ANSWER SECTION:
dns.example.jp.        86400    IN    A    192.168.10.10

逆引きテスト
# dig @DNSサーバのIPアドレス -x 192.168.10.10
...省略...
;; ANSWER SECTION:
10.10.168.192.in-addr.arpa. 86400 IN    PTR    dns.example.jp.


補足2 Dynamic DNSの動作確認(P.88「2 Dynamic DNSの動作を確認」)

DHCPサーバでnsupdateコマンドを実行(実行は一般ユーザ権限でも可)
$ nsupdate -d                ←「-d」でデバックモード指定
> server 192.168.10.10       ←DNSサーバを指定(省略可能)
> prereq nxdomain test.example.jp
↑事前に登録されていない「test.example.jp」を利用
> update add test.example.jp. 360 IN A 192.168.10.101
↑TTLを360で test.example.jp→192.168.10.101 として登録
> show                       ←実際の実行の前に確認(省略可能)
...省略...
;; UPDATE SECTION:
test.example.jp.    360    IN    A    192.168.10.101
> send                       ←update要求の送信
...省略...
Reply from update query:
;; ->>HEADER<<- opcode: UPDATE, status: NOERROR, id:  49257 ←「status: NOERROR」を確認
> quit                       ←(またはCtl+Dで終了)

DNSサーバのログ(/var/log/messages)を確認
May 19 03:14:44 localhost named[30940]: client 192.168.10.101#51512: updating zone 'example.jp/IN': adding an RR at 'test.example.jp' A


補足3 DHCPとDNSの動作確認(P.89 見出し「動作確認」)


※補足4の図もあわせて参考

DHCPサーバのログ
(1)クライアントからの「DHCPDISCOVER」(この際クライアントからホスト名も渡される)
(2)DHCPサーバからクライアントへIPアドレスを「OFFER」
(3)ゾーンサーバに正引きのA/TXTレコードを登録
(4)ゾーンサーバに逆引きのPTRレコードを登録
(5)クライアントからの「DHCPREQUEST」
(6)DHCPサーバからクライアントへの「DHCPACK」

May 18 23:24:47 localhost dhcpd: DHCPDISCOVER from 00:1c:7e:72:d2:70 via eth0        ←(1)
May 18 23:24:47 localhost dhcpd: DHCPOFFER on 192.168.10.103 to 00:1c:7e:72:d2:70 (client01) via eth0        ←(2)
May 18 23:24:47 localhost dhcpd: Added new forward map from client01.example.jp to 192.168.10.103        ←(3)
May 18 23:24:47 localhost dhcpd: added reverse map from 103.10.168.192.in-addr.arpa. to client01.example.jp        ←(4)
May 18 23:24:47 localhost dhcpd: DHCPREQUEST for 192.168.10.103 (192.168.10.10) from 00:1c:7e:72:d2:70 (client01) via eth0        ←(5)
May 18 23:24:47 localhost dhcpd: DHCPACK on 192.168.10.103 to 00:1c:7e:72:d2:70 (client01) via eth0        ←(6)

DNSサーバのログ
(A)example.jpゾーンに対し「client01.example.jp. 3600 IN A ...」の登録
(B)example.jpゾーンに対し「client01.example.jp. 3600 IN TXT ..」の登録
(C)10.168.192.in-addr.arpaゾーン中の192.168.10.103に対するレコードの削除
(D)10.168.192.in-addr.arpaゾーンに対し「103.10.168.192.in-addr.arpa. 3600 IN PTR  client01.example.jp.」の登録

May 18 23:24:47 localhost named[9284]: client 127.0.0.1#42860: updating zone 'example.jp/IN': adding an RR at 'client01.example.jp' A    ←(A)
May 18 23:24:47 localhost named[9284]: client 127.0.0.1#42860: updating zone 'example.jp/IN': adding an RR at 'client01.example.jp' TXT    ←(B)
May 18 23:24:47 localhost named[9284]: client 127.0.0.1#38911: updating zone '10.168.192.in-addr.arpa/IN': deleting rrset at '103.10.168.192.in-addr.arpa' PTR    ←(C)
May 18 23:24:47 localhost named[9284]: client 127.0.0.1#38911: updating zone '10.168.192.in-addr.arpa/IN': adding an RR at '103.10.168.192.in-addr.arpa' PTR    ←(D)


補足4

画像をクリックすると大きく表示されます。

商品一覧