Linux運維之道(大量經典案例、問題分析,運維案頭書,紅帽推薦)


Linux運維之道(大量經典案例、問題分析,運維案頭書,紅帽推薦

丁明一 編  

ISBN 978-7-121-21877-4

2014年1月出版

定價:69.00元

448

16

編輯推薦

1、《Linux運維之道》從運維工作的實際需求出發,全面講解相關的技術、經典案例,以及常見問題的解決方案。

2、作者丁明一具有豐富的實踐及教學經驗,且非常認真,本書是其嘔心瀝血之作,不僅內容精益求精,代碼的編排作者也花了一些心思,可見其縝密。

3、本書得到了多位業內專家的強烈推薦,包括紅帽大中華區考官黃軍寶、原紅帽中國高級認證考官許成林,以及百度、新浪、達內、武漢譽天的運維工程師和培訓講師。

4、運維是一項需要多種技能的工作,本書作者丁明一告訴您如何成為一名合格的運維工程師,能夠直接提高運維人員的工作效率,值得閱讀。

內容提要

隨着開源技術的不斷進步與創新,整個 IT行業中越來越多的企業願意采用開源產品,而基於 Linux的操作系統為這些開源產品提供了一個極佳的操作平台。《Linux運維之道》將圍繞 Linux操作系統這樣一個基礎平台,講解如何使用操作系統實現各種開源產品的應用案例。全書主要從運維工作中的應用服務入手,全面講解基本 Linux操作系統以及各種軟件服務的運維工作。

現在的商業環境是一個充滿競爭的環境,很多企業的業務量在不斷地增長,而對服務質量的要求也越來越高。特別是互聯網企業為了滿足客戶更高的需求,提升用戶使用體驗。 IT部門維護的設備往往數以萬計,如此龐大的設備維護量,通常會讓 IT管理人員頭疼不已。《Linux運維之道》介紹的自動化運維的內容可以讓我們快速掌握大規模批量處理的簡單方法。僅僅依靠自動化運維還不足以發揮出這些設備能效,因此,我們還需要將這個服務器設備有機地結合在一起,為客戶提供更加安全、快捷、高效的服務,於是集群技術應運而生。《Linux運維之道》最后將圍繞集群技術介紹目前比較流行的開源產品部署案例。

《Linux運維之道》從基礎講到服務器的高級應用,適合於 Linux運維人員、Linux愛好者閱讀,可作為 Linux運維人員的一本優秀的案頭書。

目錄

第1篇 基礎知識

第1章 部署操作系統    2

1.1 光盤安裝Linux操作系統 2

1.1.1 操作系統版本的選擇   2

1.1.2 光盤安裝Linux系統案例   2

1.2 無人職守自動安裝Linux操作系統 15

1.2.1 大規模部署案例   15

1.2.2 PXE簡介  16

1.2.3 Kickstart技術    17

1.2.4 配置安裝服務器   18

1.2.5 自動化安裝案例   19

1.3 常見問題分析   27

第2章 命令工具    30

2.1 基本命令   31

2.1.1 目錄及文件的基本操作 31

2.1.2 查看文件內容 35

2.1.3 鏈接文件 37

2.1.4 壓縮及解壓   38

2.1.5 命令使用技巧 39

2.1.6 幫助 40

2.2 Vim文檔編輯    42

2.2.1 Vim工作模式  42

2.2.2 Vim光標操作  43

2.2.3 Vim編輯文檔  43

2.2.4 Vim查找與替換    44

2.2.5 Vim保存與退出    45

2.2.6 Vim小技巧    45

2.3 賬戶與安全 46

2.3.1 賬戶及組的概念   46

2.3.2 創建賬戶及組 46

2.3.3 修改賬戶及組 48

2.3.4 刪除賬戶及組 49

2.3.5 賬戶與組文件解析 49

2.3.6  文件及目錄權限   51

2.3.7  賬戶管理案例 53

2.3.8  ACL訪問控制權限  54

2.4  存儲管理   55

2.4.1  磁盤分區 56

2.4.2  格式化與掛載文件系統 60

2.4.3  LVM邏輯卷概述    62

2.4.4  創建LVM分區實例 64

2.4.5  修改LVM分區容量 68

2.4.6  刪除LVM分區 69

2.4.7  RAID磁盤陣列概述 69

2.4.8  RAID級別 70

2.4.9  創建與管理軟RAID實例    74

2.4.10  RAID性能測試    77

2.4.11  RAID故障模擬    78

2.5  軟件管理   79

2.5.1  Linux常用軟件包類型  79

2.5.2  RPM軟件包管理    79

2.5.3  使用YUM安裝軟件包   81

2.5.4  YUM使用技巧  83

2.5.5  源碼編譯安裝軟件 84

2.5.6  常見問題分析 85

2.5.7  服務管理 86

2.6  計划任務   88

2.6.1  at一次性計划任務 88

2.6.2  cron周期性計划任務   89

2.6.3  計划任務權限 90

2.7  性能監控   90

2.7.1  監控CPU使用情況——uptime命令   90

2.7.2  監控內存及交換分區使用情況——free命令   91

2.7.3  監控磁盤使用情況——df命令   91

2.7.4  監控網絡使用情況——ifconfig和netstat命令   92

2.7.5  監控進程使用情況——ps和top命令 94

2.8  網絡配置   95

2.8.1  命令行設置網絡參數   95

2.8.2  文件修改網絡參數 97

2.8.3  網絡故障排錯 99

2.9  內核模塊   101

2.9.1  內核模塊存放位置 101

2.9.2  查看已加載內核模塊   102

2.9.3  加載與卸載內核模塊   102

2.9.4  修改內核參數 103

第3章 自動化運維  104

3.1  Shell簡介  104

3.2  Bash功能介紹   105

3.2.1  命令歷史 105

3.2.2  命令別名 105

3.2.3  管道與重定向 106

3.2.4  快捷鍵   107

3.3  Bash使用技巧   107

3.3.1  重定向技巧   107

3.3.2  命令序列使用技巧 108

3.3.3  作業控制技巧 108

3.3.4  花括號{}的使用技巧   109

3.4  變量   109

3.4.1  自定義變量   109

3.4.2  變量的使用范圍   110

3.4.3  環境變量 111

3.4.4  位置變量 112

3.4.5  變量的展開替換   112

3.4.6  數組 113

3.4.7  算術運算與測試   114

3.5 Shell引號  116

3.5.1 反斜線   116

3.5.2 單引號   117

3.5.3 雙引號   117

3.5.4 反引號   117

3.6 正則表達式 118

3.6.1 基本正則表達式(Regular Expression) 119

3.6.2  擴展正則表達式(Extended Regular Expression)122

3.6.3 POSIX規范  122

3.6.4 GNU規范    123

3.7 Sed 124

3.7.1 Sed簡介      124

3.7.2 Sed基本語法格式      124

3.7.3 Sed入門范例      125

3.7.4  Sed指令與腳本 127

3.7.5  Sed高級應用      132

3.8  Awk         136

3.8.1  Awk簡介     136

3.8.2  Awk工作流程     136

3.8.3  Awk基本語法格式     137

3.8.4  Awk操作指令     138

3.8.5 Awk高級應用     142

3.9 Shell腳本        145

3.9.1 腳本格式范例    146

3.9.2 運行腳本的方式         146

3.9.3 Shell腳本簡單案例    147

3.9.4 判斷語句應用    150

3.9.5  循環語句應用    154

3.9.6  控制語句應用    158

3.9.7  Shell函數應用    159

3.9.8  綜合案例    162

3.9.9  圖形腳本    166

第2篇 網絡服務

第4章 搭建網絡服務          170

4.1  NFS文件共享         170

4.1.1  NFS服務器配置 171

4.1.2  客戶端訪問NFS共享         173

4.1.3  NFS高級設置  174

4.1.4  常見問題分析 177

4.2  Samba文件共享  178

4.2.1  快速配置Samba服務器 178

4.2.2  訪問Samba共享   180

4.2.3  配置文件詳解 182

4.2.4  Samba應用案例    183

4.2.5  常見問題分析 186

4.3  vsftpd文件共享 187

4.3.1  FTP工作模式  188

4.3.2  安裝與管理vsftpd 189

4.3.3  配置文件解析 189

4.3.4  賬戶權限 190

4.3.5  vsftpd應用案例   191

4.3.6  常見問題分析 195

4.4  ProFTPD文件共享    196

4.4.1  安裝ProFTPD軟件 196

4.4.2  配置文件解析 197

4.4.3  ProFTPD權限設置  198

4.4.4 虛擬用戶應用案例 198

4.4.5 常見問題分析 202

4.5  Subversion版本控制 202

4.5.1 Subversion簡介   202

4.5.2 Subversion服務器對比 204

4.5.3 安裝Subversion軟件  205

4.5.4 svnserve服務器搭建   205

4.5.5 svnserve+SSH服務器搭建   210

4.5.6 Apache+SVN服務器搭建 211

4.5.7 常見問題 213

4.6  網絡存儲服務器 214

4.6.1 iSCSI網絡存儲    215

4.6.2 Rsync文件同步    219

4.6.3 Rsync+Inotify實現文件自動同步    225

4.7  DHCP服務器 231

4.7.1 安裝軟件 231

4.7.2 配置文件解析 232

4.7.3 DHCP應用案例 233

4.7.4 常見問題分析 234

4.8  DNS域名服務器  235

4.8.1 DNS簡介  235

4.8.2 安裝DNS軟件 237

4.8.3 配置文件解析 238

4.8.4 部署主域名服務器 241

4.8.5 部署從域名服務器 245

4.8.6 DNS視圖應用案例  247

4.8.7 常見問題分析 249

4.9  Apache網站服務器   250

4.9.1 Apache簡介   250

4.9.2 安裝Apache軟件  250

4.9.3 配置文件解析 252

4.9.4 虛擬主機應用案例 257

4.9.5 網站安全應用案例 259

4.9.6 常見問題分析 260

4.10  Nginx網站服務器   261

4.10.1 Nginx簡介   261

4.10.2 安裝Nginx軟件  261

4.10.3 配置文件解析    264

4.10.4 虛擬主機應用案例    267

4.10.5 SSL網站應用案例 269

4.10.6 HTTP響應狀態碼  270

4.11  數據庫基礎    271

4.11.1 MySQL數據庫簡介 271

4.11.2 安裝MySQL軟件  272

4.11.3 MySQL管理工具   273

4.11.4 數據庫定義語言  278

4.11.5 數據庫操作語言  283

4.11.6 數據庫查詢語言  285

4.11.7 MySQL與安全 286

4.11.8 MySQL數據庫備份與還原   289

4.12  動態網站架構案例  290

4.12.1 論壇系統應用案例    291

4.12.2 博客系統應用案例    297

第5章 系統監控    301

5.1 Cacti監控系統  301

5.1.1 簡介 301

5.1.2 Cacti監控應用案例    302

5.2  Nagios監控系統 310

5.2.1 簡介 310

5.2.2 Nagios監控應用案例   311

第6章 網絡安全    323

6.1  iptables防火牆 323

6.1.1 iptables防火牆語法格式   324

6.1.2 iptables防火牆應用案例   327

6.1.3 防火牆備份與還原 330

6.2  SELinux簡介    331

6.2.1 SELinux配置文件  331

6.2.2 SELinux軟件包    332

6.2.3 SELinux安全上下文    333

6.2.4 SELinux排錯  334

6.2.5 修改安全上下文   336

6.2.6 查看與修改布爾值 338

6.2.7 SELinux應用案例  339

6.2.8 httpd相關的SELinux安全策略  339

6.2.9 FTP相關的SELinux安全策略    340

6.2.10 MySQL相關的SELinux安全策略 341

6.2.11 NFS相關的SELinux安全策略   342

6.2.12 Samba相關的SELinux安全策略 343

6.3  OpenVPN    344

6.3.1 OpenVPN簡介  344

6.3.2 安裝OpenVPN服務 345

6.3.3 OpenVPN客戶端    348

第3篇 高級應用

第7章 虛擬化技術  352

7.1  虛擬化產品對比 352

7.1.1 VMware虛擬化技術 353

7.1.2 Xen虛擬化技術    353

7.1.3 KVM虛擬化技術    354

7.2  KVM虛擬化應用案例  354

7.2.1 安裝KVM組件 354

7.2.2 創建虛擬機操作系統   355

7.2.3 監控虛擬機操作系統   360

7.2.4 命令工具使用技巧 362

7.2.5 虛擬存儲與虛擬網絡   367

第8章 集群及高可用    377

8.1  集群   377

8.1.1 LVS負載均衡簡介  377

8.1.2 基於NAT的LVS負載均衡   378

8.1.3 基於TUN的LVS負載均衡   379

8.1.4 基於DR的LVS負載均衡 380

8.1.5 LVS負載均衡調度算法  381

8.1.6 部署LVS服務 382

8.1.7 LVS負載均衡應用案例  385

8.1.8 常見問題分析 392

8.2  Keepalived雙機熱備 393

8.2.1 Keepalived簡介   393

8.2.2 VRRP協議簡介 394

8.2.3 安裝Keepalived服務  394

8.2.4 配置文件解析 395

8.2.5 Keepalived+LVS應用案例   396

8.2.6 常見問題分析 404

8.3  Squid代理服務器    405

8.3.1 Squid簡介    405

8.3.2 安裝Squid服務   405

8.3.3 常見代理服務器類型   406

8.3.4 配置文件解析 407

8.3.5 Squid應用案例    408

8.4  HAProxy負載均衡    412

8.4.1 HAProxy簡介  412

8.4.2 配置文件解析 413

8.4.3 HAProxy應用案例  416

8.5  Nginx高級應用  420

8.5.1 Nginx負載均衡    420

8.5.2 Nginx負載均衡案例    422

8.5.3 Nginx rewrite規則    425

8.6  MySQL高可用    429

8.6.1 MySQL復制    429

8.6.2 一步一步操作MySQL復制 430

 

精彩節章

5.1.2 Cacti監控應用案例

1.被監控端配置

Cacti監控其他主機是通過簡單的網絡管理協議(SNMP)收集被監控端的數據信息的,因此,被監控端Web1與Web2服務器都需要安裝net-snmp以及依賴包lm_sensors,並設置SNMP配置文件。lm_sensors軟件可以幫助我們監控硬件信息(如CPU的工作電壓等數據),具體步驟如下。

安裝snmp主程序及相關的依賴軟件包,被監控主機僅需要修改snmp主配置文件即可(根據模板文件,本書對需要修改的地方用黑體字表示)。

[root@web1 ~]# yum -y install net-snmp lm_sensors

[root@web1 ~]# vim /etc/snmp/snmpd.conf

 

# First, map the community name "public" into a "security name".

com2sec notConfigUser  default       rose0011

# Second, map the security name into a group name.

group   notConfigGroup v1           notConfigUser

group   notConfigGroup v2c           notConfigUser

# Third, create a view for us to let the group have rights to.

view    systemview    included   .1.3.6.1.2.1.1

view    systemview    included   .1.3.6.1.2.1.25.1.1

# Finally, grant the group read-only access to the all view.

access  notConfigGroup ""      any       noauth    exact  all none none

view all    included  .1                               80

syslocation Unknown (edit /etc/snmp/snmpd.conf)

syscontact Root <root@localhost> (configure /etc/snmp/snmp.local.conf)

dontLogTCPWrappersConnects yes

#備注,以上黑色加粗部分為需要修改的內容

 

SNMP配置文件主要包括四部分內容需要修改。第一步,映射通信名稱到安全用戶名稱;第二步,將用戶加入到組中;第三步,為組創建systemvies視圖;第四步,創建all視圖並賦予組只讀訪問權限。主配置文件設置完成后重啟服務,即可通過客戶端訪問該服務器獲得系統信息,SNMP使用的端口號為UDP 161端口以及TCP 199端口,我們需要在防火牆規則中開放這些端口數據。

[root@web1 ~]# iptables -I INPUT -p udp --dport 161 -j ACCEPT

[root@web1 ~]# iptables -I INPUT -p tcp --dport 199 -j ACCEPT

[root@web1 ~]# service iptables save

[root@web1 ~]# service snmpd start

[root@web1 ~]# chkconfig snmpd start

 

Web1與Web2被監控主機均啟動snmpd服務后,可以在Cacti主機上執行snmpwalk命令驗證SNMPD服務是否運行正常,如果出現如下提示,則說明一切正常(命令輸出僅為部分信息)

[root@cacti ~]# snmpwalk -v 1 192.168.0.101 -c rose0011 system

SNMPv2-MIB::sysORID.1 = OID: SNMP-MPD-MIB::snmpMPDMIBObjects.3.1.1

SNMPv2-MIB::sysORID.2 = OID: SNMP-USER-BASED-SM-MIB::usmMIBCompliance

SNMPv2-MIB::sysORID.3 = OID: SNMP-FRAMEWORK-MIB::snmpFrameworkMIBCompliance

SNMPv2-MIB::sysORID.4 = OID: SNMPv2-MIB::snmpMIB

SNMPv2-MIB::sysORID.5 = OID: TCP-MIB::tcpMIB

SNMPv2-MIB::sysORID.6 = OID: IP-MIB::ip

2.安裝Cacti服務

Cacti是基於PHP的Web監控管理系統,所以Cacti監控主機需要部署LAMP環境,此環境可以參考第4章的內容搭建。此外,還需要使用SNMP簡單網絡管理協議從被監控主機提取數據,然后使用RRDTool工具保存數據並最終生成圖表信息。

安裝相關依賴包軟件:

[root@cacti ~]# yum -y install net-snmp net-snmp-devel net-snmp-utils\

>net snmp-libs lm_sensors php-xml zlib libpng freetype cairo-devel\

>pango-devel gd

 

因為Cacti的優勢在於其豐富的圖表效果,為了將數據繪制成相應的更加直觀的圖表格式輸出,就需要安裝RRDTool工具,該軟件的安裝非常簡單,使用configure、make、make install默認安裝即可。

[root@cacti ~]# wget http://oss.oetiker.ch/rrdtool/pub/rrdtool-1.4.7.tar.gz

[root@cacti ~]# tar -xzf rrdtool-1.4.7.tar.gz -C /usr/src/

[root@cacti ~]# cd /usr/src/rrdtool-1.4.7/

[root@cacti ~]# ./configure --prefix=/usr/local/

[root@cacti ~]# make && make install

 

設置Apache虛擬主機:

因為是基於Web的監控平台,而本書Web服務器采用的是Apache HTTP Server,因此,需要修改Apache主配置文件httpd.conf,通過DirectoryIndex index.php index.html指令設置默認首頁為index.php,去除Include conf/extra/httpd-vhosts.conf指令前的“#”符號。Include指令將讀取httpd-vhosts.conf文件的內容作為主配置文件的一部分,並在httpd-vhosts.conf文件中加入用來實現監控的虛擬主機。

[root@cacti ~]# vim /usr/local/apache2/conf/extra/httpd-vhosts.conf

 

<VirtualHost *:80>

    ServerAdmin Jacob_rose@gmail.com

    DocumentRoot "/usr/local/apache2/htdocs/cacti"

    ServerName cacti.example.com

</VirtualHost>

 

修改PHP配置文件的時區設置,默認date.timezone為注釋行,需要手動開啟並設置時區,否則進行Cacti初始化時會提示It is not safe to rely on the system's timezone settings。

本書將時區修改為上海,即編輯PHP配置文件/usr/local/php5/lib/php.ini,修改其中的時區參數date.timezone = "Asia/Shanghai"。

部署Cacti監控系統,創建Web頁面根路徑monitor目錄,解壓Cacti包並移動至Web根路徑下,因為Apache默認以daemon用戶及組身份啟動,所以需要使用chown命令修改目錄權限以便Apache讀取相關頁面。

[root@cacti ~]# wget http://www.cacti.net/downloads/cacti-0.8.8a.tar.gz

[root@cacti ~]# tar -xzf /root/cacti-0.8.8a.tar.gz -C /usr/src/

[root@cacti ~]# mv /usr/src/cacti-0.8.8a/ /usr/local/apache2/htdocs/cacti

[root@cacti ~]# chown -r daemon.daemon /usr/local/apache2/htdocs/cacti

[root@cacti ~]# iptables -I INPUT -p tcp --dport 80 -j ACCEPT

[root@cacti ~]# service iptables save

[root@cacti ~]# /usr/local/apache2/bin/apachectl restart

 

創建初始化數據庫,這里要確保MySQL服務器程序是開啟的,通過Cacti軟件包內提供的數據庫備份文件,在本機生成名為cacti的數據庫,創建cactiuser賬戶,並賦予其訪問cacti數據庫的所有權限,該賬號密碼為rose0011。

[root@cacti ~]# /usr/local/mysql/bin/mysqladmin -u root -p create cacti

[root@cacti ~]# cd /usr/local/apache2/htdocs /cacti

[root@cacti cacti]# /usr/local/mysql/bin/mysql -u root -p cacti < cacti.sql

[root@cacti cacti]# /usr/local/mysql/bin/mysql -u root -p

mysql> GRANT ALL ON cacti.* TO cactiuser@localhost IDENTIFIED BY 'rose0011';

mysql> flush privileges;

mysql> exit

 

設置Cacti配置文件,根據上一步數據庫初始化操作所創建的數據庫信息,修改Cacti配置文件中的數據庫參數資料,需要修改的內容如下。

[root@cacti ~]# /usr/local/apache2/htdocs/cacti/include/config.php

 

$database_type = "mysql";           #數據庫類型

$database_default = "cacti";        #默認數據庫名稱

$database_hostname = "localhost";   #數據庫服務器主機名稱

$database_username = "cactiuser";   #數據庫賬戶

$database_password = "rose0011";    #數據庫密碼

$url_path = "/";                    #設置監控頁面為Apache設置的頁面根路徑

 

作者簡介

丁明一,領航眾達教育創始人,紅帽認證高級講師(RHCI),有着豐富的Linux系統運維以及講師經驗,培養學生兩千余名。精通Linux系統管理、生產環境大規模集中部署Linux環境、建立Shell腳本自動化管理平台。主持部署多個LAMP網絡服務平台、構建管理多個大型Nginx Web服務平台,項目實施中利用Cacti與Nagios監控平台實現自動故障報警。對企業集群環境及高性能、高可用構架有深入的研究。擁有豐富的虛擬化技術使用經驗:Xen、KVM、VMware,利用虛擬化技術構建高效、綠色節能機房。對安全與調優有獨特的理解,精通Linux防火牆、SELinux安全、系統性能調優化。翻譯過多篇國外頂級雲計算解決方案文檔,熟悉國外主流雲計算技術發展。

媒體評論

 

本書從基本的操作系統知識與實踐到互聯網應用,由淺入深,由表及里,層層推進;對作為開源技術中既基礎又非常重要的Linux操作系統的各類操作和技巧作了詳細的闡述;進而對各類常用服務如Apache、Nginx、MySQL等進行了深度的剖析;同時又考慮到系統及服務的安全。可見作者心思縝密,為本書費盡心血。拜讀本書之后,受益非淺,其中許多小技巧在工作中非常有幫助,相信讀者在閱讀本書之后也能大受裨益。

紅帽大中華區考官  黃軍寶

 

在技術發展十分迅速的領域,趕時髦的書多如牛毛,書店里充滿了應景之作,但是,真正經過深入思考、用心、用技術寫作的書不多。而本書卻是一位技術高手的嘔心瀝血之作,書中的每項技術都介紹得很通透,並且反復經過思考和推敲。在本書即將出版之際,我向作者表示深深的敬意和祝賀,並向所有的Linux愛好者推薦這本學習Linux技術的好書。

                                              原紅帽中國高級認證考官 許成林

 

作者以其多年的工作經驗,總結歸納了一套適合於各種層次水平的Linux書籍。本書內容講解深入淺出,配合大量的經典案例,通俗易懂,實用性非常強。尤其書中提供的常見問題分析,根據各種常見問題提供了不同的解決方案,這樣可以幫助讀者排除很多已知的常見故障。對於初級運維人員以及高級運維工作者,本書都相當高的具體技術實踐指導意義。

  武漢譽天高級講師  鄒聖林

 

很多初學者,包括筆者的初學期都發現,在品類繁多的入門書籍中,很難找到一本由基礎知識展開,深入淺出的覆蓋到編程語言、集群架構等全面運維知識點的書籍。本書作者從實際運維工作出發,結合概念、知識,帶領讀者從實際操作深化到工作原理,讓讀者輕松上手,全面掌握理論,強化實際操作,非常值得一讀。

百度高級運維工程師  劉宇

 

 

運維方向上一直缺乏一本內容比較全面的書籍。這本書正是從入門到高級,內容覆蓋了運維的方方面面,非常有實踐指導價值,是運維和開發人員都可以深入閱讀的一本好書。

                                                    新浪運維架構師  白貴興

 

這是一本難得的好書,內容全面涵蓋了Linux入門基礎、生產環境常用服務以及大規模業務部署。本書語言精煉、內容緊湊,非常適合作為Linux技術人員的枕邊書。通過閱讀本書內容您可以獲得大量企業實踐項目的實際動手能力。

達內集團網絡工程教研總監  周華飛

 

前言

撰寫本書的起因

目前越來越多的企業需要依賴於IT技術發布產品與服務,尤其是電子商務最為明顯,它凸顯了IT技術在現代企業中的重要性。當企業需要部署IT業務時,機房與服務器是整個IT技術生態鏈中非常重要的環節。對服務器操作系統的選擇,Linux以其開源、穩定、安全的特性,目前在服務器領域已經稱為無可爭議的霸主,而且有眾多的服務可以應用於Linux平台,可以靈活地應用這些服務以滿足企業的各種業務需求。本書重點在於講解如何部署服務器操作系統以及在Linux操作系統平台上部署常見的IT服務。

從1991年起至今,Linux已經快速成長為企業服務器產品的首選操作系統,越來越多的IT企業采用Linux作為其服務器端平台操作系統,為客戶提供高性能、高可用的業務服務。隨着紅帽公司宣布其年營業額超10億美元,也標志着開源Linux操作系統的光輝時代已經來臨。紅帽的成功預示着采用開源模式的Linux操作系統可以為企業提供安全、可靠和高性能的平台系統。服務器領域中Linux操作系統的份額越來越大,而目前技術人才又相對匱乏,導致大量的就業人才缺口,本書着眼於Linux技術中方方面面的主流技術,為讀者進入Linux行業開啟了一扇暢通的大門。本書主要分為三部分,從基礎的系統管理到Shell自動化運維的實現,再到網絡服務器的部署實施,最后通過案例介紹高負載網絡架構的企業環境。本書在選擇操作系統發行版本時,綜合了各個發行版本的特點,最終選擇了CentOS作為本書的基礎系統平台。CentOS是眾多Linux發行版本之一,但因為其源自於RedHat 框架,同時該版本完全開源,包括開放的軟件YUM源,可以為用戶帶來更加方便的升級方法。另外,目前國內很多企業對於CentOS發行版也非常熱衷,這也增加了本書的實用性。

本書結構

本書第1篇為基礎知識篇,主要講述如何安裝部署Linux操作系統以及對基本命令行工具的使用,幫助讀者快速掌握Linux基本知識要點,夯實基本功。基於Shell腳本實現運維工作自動化,幫助運維人員擺脫周而復始地進行無效的工作,加快企業進入自動化、智能化的運維環境。具體包括:

◎  部署操作系統

◎  命令工具

◎  自動化運維

第2篇為網絡服務架構篇,主要討論網絡架構的規划與部署,通過網站綜合案例提升讀者的應用能力,並針對常見問題提供故障排錯。通過部署監控與安全軟件確保網絡服務的正常及安全運行。具體包括:

◎  搭建網絡服務

◎  系統監控

◎  網絡安全

第3篇為高級應用,主要描述當前主流的虛擬化及服務器高可用技術,滿足大型企業服務的生產需求。通過集群及高可用軟件充分體現巨大的數據壓力下產品業務的安全及性能優勢。

◎  虛擬化技術

◎  集群及高可用

◎  數據庫復制

排版說明

關於本書中的排版,如果書中的命令是需要讀者輸入,我們將使用等比例黑體加粗顯示;對於計算機輸出的命令返回結果,書中將使用等比例斜體字顯示。由於采用的開源模式,隨意Linux操作系統中擁有大量的文本形式的配置文件,對於打開及修改文本文件中的內容,書中將把文件中的內容放置於方框中排版書寫;對於需要讀者注意的地方,書中會給出明確的注意提示。

本書讀者

本書可以作為學習Linux應用技術的一本指南,主要針對與希望進入Linux運維行業的新手,不過對於有經驗的專家而言,其中的部分章節同樣適用。另外,本書也可以作為計算機培訓參考教材。

勘誤

作者在編寫本書的過程中已經花了大量的時間對內容進行審核與校驗,但因為時間緊迫,作者精力有限,書中難免出現一些錯漏,敬請廣大專家和讀者批評、指正。

關於本書,您有任何意見或建議可以發送郵件至ydh0011@163.com或使用博客平台交流 http://manual.blog.51cto.com

致謝

由於是采用的業余時間編寫本書,占有了大量本應該可以和家人在一起的歡樂時光,在此感謝家人對我的支持與勉勵,感謝我一歲兒子(子墨)給家庭帶來的無限快樂。感謝我所有的同事對此項任務的全力配合與支持。感謝我的學生對本書的期待,是你們的無形支持促成了我編寫本書。感謝生活中所有給予我幫助的朋友,是你們支持的讓我不斷第進步與創新,不管是工作中還是生活中,好朋友都是我們成功的堅實后盾。感謝電子工業出版社的編輯董英為本書的出版提供了大力的支持。

丁明一


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM