# Principles of Network and System Administration
## 概要
Mark Burgess による、ネットワーク管理とシステム管理を「日々変わることのない原理」の側から捉え直した教科書である。個々のツールや手順の手引きではなく、システム管理という営みが何であり、どう考えるべきかを提示することを目的とする。Oslo University College で 6 年間続いた 1 学期の講義から生まれ、第 2 版では単一の入門講義を超えて分野全体の見取り図を描くことが目指された (Source: [[wiki/entities/Principles of Network and System Administration|Principles of Network and System Administration]] 第 2 版序文)。
## 書誌情報
- 著者: [[Mark Burgess]](Oslo University College, Norway)
- 出版社: John Wiley & Sons Ltd([[Wiley]])
- 発行: 2004 年(第 2 版)。初版は 2000 年
- ISBN: 9780470868072
- 構成: 全 14 章 + 付録 A〜E(Unix コマンド集・プログラミングとコンパイル・telnet セッション例・用語集・推薦文献)
- URL: https://www.wiley.com/en-gb/Principles+of+Network+and+System+Administration%2C+2nd+Edition-p-9780470868072
- 原本: `.raw/books/principles-of-network-and-system-administration-2e/`
第 2 版序文によれば、本書は理論 3 割・実践 7 割の入門講義の教材として出発し、第 2 版では Oslo University College のネットワーク・システム管理修士課程の中核教材となった。著者は完全性と取捨選択の均衡を意識し、実務向けの詳細な手引きは既存の良書に委ねて、原理的または例示的な事例に限定したと述べる。著者自身「この種の本を二度と書きたくない。本の保守は計算機の保守よりはるかに難しく、cfengine では保守できない」と書き記している (Source: [[wiki/entities/Principles of Network and System Administration|Principles of Network and System Administration]] 第 2 版序文)。
## 構成と主要テーマ
全 14 章。部(Part)による区分はなく、章が連続して並ぶ。本書の骨格は第 1 章 §1.9 が提示する 3 つのメタ原理である。Principle 1(ポリシーが基盤である)、Principle 2(予測可能性こそシステム管理の最高次の目標であり、信頼性と安全性の基盤である)、Principle 3(拡張可能な系とは、規模が増してもポリシーに従って予測可能に機能し続ける系である)。以降の各章は、この 3 原理をそれぞれの主題領域で具体化していく (Source: [[@2004__Wiley__Principles of Network and System Administration - Chapter 1 Introduction]] §1.9)。
理論の中核は第 6〜8 章にある。第 6 章が管理モデルを類型化して競合・免疫・収束の三つ組を提示し、第 7 章がそれを設定管理の実装へ下ろし、第 8 章が障害と診断の理論を与える。第 13 章は、それらを支える測定と解析の方法論を扱う。
→ [[@2004__Wiley__Principles of Network and System Administration - Chapter 1 Introduction]] — 技術と人間を対等に扱う工学分野としてシステム管理を定義し、ポリシー・予測可能性・拡張性という 3 つのメタ原理を提示する導入章。
→ [[@2004__Wiley__Principles of Network and System Administration - Chapter 2 System components]] — 「システム」を人間・ホスト・ネットワークの依存関係の網として定義し、ハードウェア・OS・ファイルシステム・プロセス・ネットワークの語彙を確定する参照章。
→ [[@2004__Wiley__Principles of Network and System Administration - Chapter 3 Networked communities]] — 共同体の原理からポリシーを定義し、システム管理を社会人類学として捉え直す章。
→ [[@2004__Wiley__Principles of Network and System Administration - Chapter 4 Host management]] — ホスト単体の設定でも大局を見失わないという姿勢を軸に、物理環境の保護・データ分離・ソフトウェア配置設計を扱う章。
→ [[@2004__Wiley__Principles of Network and System Administration - Chapter 5 User management]] — アカウント発行・資源制御の実務論と、管理者の倫理・利用者の福利という規範論を統合する章。
→ [[@2004__Wiley__Principles of Network and System Administration - Chapter 6 Models of network and system administration]] — ネットワーク管理をスター型からピアツーピア型まで 6 段階に類型化し、競合・免疫・収束の三つ組で保守モデルを理論的に基礎づける、本書の理論的中核章。
→ [[@2004__Wiley__Principles of Network and System Administration - Chapter 7 Configuration and maintenance]] — 第 6 章の類型学を実装の層へ下ろし、原因と症状のどちらを制御するか・宣言的言語・cfengine の動作原理・予防保守を論じる章。
→ [[@2004__Wiley__Principles of Network and System Administration - Chapter 8 Diagnostics, fault and change management]] — 因果の網としてシステムを捉え、原因木・確率的な故障の木・ゲーム理論・監視・品質保証を統一的に扱う、本書で最も理論負荷の高い章。
→ [[@2004__Wiley__Principles of Network and System Administration - Chapter 9 Application-level services]] — 応用層サービス(DNS・WWW・メール・NFS・Samba・印刷・Java)の設置を、登録・起動方式選択・アクセス制御という共通枠組みで統一的に扱う章。
→ [[@2004__Wiley__Principles of Network and System Administration - Chapter 10 Network-level services]] — 有限のネットワーク容量の配分を、QoS・囚人のジレンマ/ハト-タカゲーム・SLA の 3 視点で貫く、資源配分と契約の章。
→ [[@2004__Wiley__Principles of Network and System Administration - Chapter 11 Principles of security]] — セキュリティを 4 つの独立した問題に分解し、信頼関係とポリシーによるリスク受容として定義したうえで障害モードを類型化する章。
→ [[@2004__Wiley__Principles of Network and System Administration - Chapter 12 Security implementation]] — 第 11 章の原理を実装に落とし、正規化・認証・IPSec の規則衝突・ファイアウォール・侵害後対応までを扱う章。
→ [[@2004__Wiley__Principles of Network and System Administration - Chapter 13 Analytical system administration]] — システム管理を科学として行う方法論を論じ、誤差との比較による測定の解釈規律と、確率分布・フーリエ解析による解析手法を提示する章。
→ [[@2004__Wiley__Principles of Network and System Administration - Chapter 14 Summary and outlook]] — 2004 年時点の著者が予見した情報管理・ソフトウェア工学との協働・遍在コンピューティング・システム管理の将来像を語る締めくくりの章。
付録 A〜E(Unix コマンド集・プログラミングとコンパイル・telnet セッション例・用語集・推薦文献)は資料的性格が強いため今回は取り込んでいない。
## 影響と位置づけ
本書の中心的な理論的貢献は、**収束(convergence)を競合(competition)・免疫(immunity)と並ぶ三つ組として位置づけ、それを [[cfengine]] という実装と一体で提示した**点にある。第 6 章 §6.7 がこの三つ組を提示し、第 7 章 §7.11 が cfengine の宣言的記述と冪等な収束実行としてその実装を示す。cfengine は Chef / Puppet といった後年の構成管理ツールの前身にあたり、この系譜は [[収束型システム管理]] と [[Infrastructure as Code]] に集約してある (Source: [[@2004__Wiley__Principles of Network and System Administration - Chapter 6 Models of network and system administration]] §6.7, [[@2004__Wiley__Principles of Network and System Administration - Chapter 7 Configuration and maintenance]] §7.11)。
本書は理論と実務の混合を志向したため、**両者の賞味期限が大きく異なる**。個別サービスの設置手順(第 9 章)やセキュリティ実装(第 12 章)が前提とする 2004 年当時の技術(inetd/xinetd によるオンデマンド起動、sendmail、TCP wrapper、CGI、ファイアウォール中心の防御思想)は現在の実務前提と大きく隔たる。一方で、ポリシーを基盤に置く姿勢、原因と症状のどちらを制御するかという区別、測定値を誤差と比べてから意味を読み込む規律といった原理の層は、現代の SRE・オブザーバビリティ実務にそのまま通じる。著者自身が第 12 章でファイアウォール中心の防御を「今日では時代遅れと考える者が多い」と書いており、実装層の陳腐化は執筆時点で既に自覚されていた (Source: [[@2004__Wiley__Principles of Network and System Administration - Chapter 12 Security implementation]])。
現代の SRE 文脈との具体的な接続点は各 concept ページに記録した。第 10 章 §10.10 の SLA 論と現代の SLO 論の系譜の違いは [[サービスレベル目標]] に、第 13 章 §13.7 の観測誤差の規律は [[プローブ効果]] と [[統計的有意性]] に、第 8 章の故障の木とゲーム理論は [[故障の木解析]] と [[ゲーム理論とSRE]] にある。
## 関連
- 概念: [[収束型システム管理]] / [[ポリシー]] / [[信頼関係]] / [[Infrastructure as Code]] / [[サービスレベル目標]] / [[ゲーム理論とSRE]] / [[故障の木解析]] / [[プローブ効果]]
- 人物: [[Mark Burgess]]
- 組織: [[Wiley]]
- 製品: [[cfengine]]
- 既存ノート: [[books/Principles of Network and System Administration|books/Principles of Network and System Administration]]
## 出典
- Mark Burgess, *Principles of Network and System Administration*, Second Edition, John Wiley & Sons, 2004.