馬哥linux2014|2015全套教程

1、本課程全程將基于集成了Openstack云環境、支持高精度時間(PTP)及虛擬化性能大大提升的RHEL 6.5或CentOS 6.6,間或介紹CentOS 7系統的使用;

2、此文章給出的只是個課程知識點框架,實際講解過程相當精細;另外,知識點講授的次序未必同此文章所標示的順序相同;

3、第15期面授班定于2015年3月24號開課;本期將會是馬哥教育數年來“直通車”式授課方式的最后一次,自16期開始,整體課程將會被分割為兩個甚至是多個不同產品,“直通車”式課程將隨中級及高級分段進行。咨詢QQ:1661815153,2813150558和113228115;

15期新增知識思路(初稿)

4.1、排隊論(Queueing Theory)理論,包括Utilization Law 與 Little’s Law 等;

4.2、高級消息隊列協議(AMQP)、可利用企業消息系統rabbitmq、activemq、qpid及zeromq等對比說明;

4.3、加強kvm虛擬化講解的份量,引入企業級部署案例;

4.4、加強Openstack講解的份量,引入企業級部署案例;

4.5、自動化運維之CMDB系統(onecmdb);

4.6、redis詳解;

4.7、git詳解;

一、Linux系統基礎及系統管理

1、操作系統發展史,系統架構平臺概覽; Linux起源、理念、發展歷史及各發行版;

2、Linux基礎知識、基本命令、獲得使用幫助及文件系統組織結構等;

3、Linux用戶、組及權限的基礎及相關高級話題,詳細講解useradd/userdel/chmod/chown/usermod/chage/umask等相關命令;

4、Bash基礎及配置、標準I/O、管道及shell編程基礎;

5、文本處理工具的概念、簡單文本編輯器nano的使用、vim編輯器入門、進階及常用技巧;

7、Linux系統進程管理基本原理及相關管理工具如ps、pkill、top、htop等的使用;Linux中的作業控制;

8、Linux任務計劃的實現,講解at、cron及anacron的使用;

9、文件查找的利器find命令基礎及高級應用;

10、TCP/IP網絡基礎、TCP有限狀態機狀態轉換原理、Linux網絡屬性配置及網絡客戶端工具詳解;

11、Linux系統軟件包的配置及管理、rpm及yum命令的使用及yum庫的制作詳解;

12、常見磁盤接口類型及相關設備特性、Linux磁盤管理、Linux文件系統基礎、進階與高級管理;文件系統相關管理工具使用詳解;

13、系統初始化詳細流程精解、內核基礎及內核的定制(內核的定制、編譯及安裝);對比說明RHEL5與RHEL6系統啟動過程之區別;

14、X11、SSH、VNC、CUPS系統服務;putty、SecureCRT或Xmanager等ssh客戶端的應用;

15、文件擴展屬性及ACL的應用;

16、RAID級別及相關概念詳解、Linux下軟RAID的實現及相關命令行工具的使用;硬件RAID基本原理及配置要點;

17、LVM2基本概念及其實現原理、LVM2相關命令行工具的使用;

18、Linux日志系統;常見日志管理工具的使用;

19、SELinux相關概念、原理及相關工具(如setenforce等)的使用;

20、RHEL系統kickstart文件、自動化安裝部署及安裝盤的定制;

21、Linux常見系統及網絡故障排除(TroubleShooting);

22、RHEL或CentOS系統定制式精簡,實現從零開始按需重組大小、功能等可定制的Linux版本,借以實現從微觀角度理解Linux構成及運行原理之目的;


二、Shell編程入門及進階(穿插大量以實現系統自動化管理為目的腳本案例)

1、bash基礎及工作環境的定制,詳細講解profile、profile.d、bashrc、.bash_profile及.bashrc等配置文件的功用;

2、bash腳本結構及運行;bash變量(局部變量、本地變量、環境變量、位置參數變量及特殊變量)及其表達式;

3、條件測試(整數測試、字符串測試及文件測試);if和case選擇分支;

4、for、while、until循環及使用continue和break來控制循環機制;

5、在bash中使用函數,以及利用函數來實現bash庫;

6、腳本控制:在腳本中捕獲信號并完成自定義處理;

7、腳本執行結果輸出:printf命令的使用及在腳本中使用顏色;

8、bash腳本運行時配置:在腳本中使用選項;

9、bash數據處理:在腳本中使用數組;

10、bash腳本調試及debug功能的實現;

11、窗口編程:dialog文本對話框命令及shell編程中的應用;

12、基本正則表達式、擴展正則表達式及grep命令精講;

13、sed命令及awk命令精講;

說明:此部分中的內容不會作為一個單獨的部分呈現,而是貫穿于整個課程;其中基礎性部分主要在前面第一部分內容中講解,高級部分及大量的應用在后面部分的內容中會不定期出現。

三、Linux平臺常見網絡服務及安全管理

1、系統性能/安全、安全威脅模型和保護方法;系統服務訪問控制及服務安全基礎;

2、加密/解密原理及數據安全、密鑰交換的實現、PKI基礎概念及openssl使用詳解;

3、DNS(BIND9)服務原理精講,BIND服務配置、高級應用和安全,并實現以view為核心的適應國內運營商間解析接駁的智能DNS系統;(馬哥團隊實現的項目:www.dns.la,國內應用僅次于dnspod的智能DNS系統;)

4、ftp服務基本原理,以vsftpd為例講解ftp服務的實現,包括虛擬用戶及相關權限定制、安全配置及ftps等高級話題;

5、http協議原理、請求/響應報文格式、SSL會話的原理及https協議;apache基礎、各MPM模型對比、安裝配置及各參數詳解;apache虛擬主機的實現及安全應用(https、suEXEC等);

6、PHP環境配置基礎及與apache整合的多種途徑;MySQL服務入門;LAMP架構的實現;以編譯的方式定制LAMP等;

7、nginx的特性詳解,nginx的基本配置、虛擬主機的實現、URL地址重寫、及安全應用以及LEMP的實現等;

8、web應用框架django基礎概念及其與apache(mod_python及uWSGI等方式)或nginx的整合;

9、VPN的基本原理及類型、OpenVPN的配置及其應用;

10、iptables/netfilter安全體系工具精講;iptables命令的基本應用,如各子命令的功能、通用匹配、擴展匹配及跳轉目標等;

11、iptables/netfilter高級應用,包括連接追蹤、網絡地址轉換、及多種擴展模塊的使用以及七層過濾等高級話題;

12、RPC的基本概念;NFS服務基礎原理及配置;samba服務基礎原理及配置;

13、電子郵件系統原理精講;postfix/dovecot等郵件服務工具的配置和應用,smtps、pop3s、imaps等高級安全應用的實現;以案例為基礎講解postfix、mysql、ldap、虛擬域、虛擬用戶、身份驗證、郵件加密、webmail、POP、IMAP服務的整合應用;

14、nss的原理及配置;pam的基礎概念、常用模塊講解及系統默認的配置講解;

四、MySQL數據庫從入門到精通

1、關系型數據庫系統及SQL相關概念詳述;MySQL特性、發展歷史及體系結構詳解;

2、MySQL及MariaDB安裝:rpm方式、編譯好的通用二進制方式及編譯的方式;單實例MySQL服務的啟動及停止等服務控制;

3、MySQL配置文件格式詳細說明;MySQL服務器變量、狀態變量的作用域及查看方式,服務器變量值的調整方式;

4、MySQL的sql_mod;管理MySQL數據庫、表、視圖和索引(DDL語句);管理MySQL數據(DML語句);

5、多表查詢、聯合查詢及子查詢;

6、MySQL用戶管理:創建和刪除、權限的授予及取消、資源使用能力控制等;

7、關系數據庫的事務、在MySQL中使用事務;MySQL鎖及其應用;MySQL隔離級別及其特性詳解;

8、存儲引擎及其屬性配置、MySQL表維護;

9、數據庫配置類型及配置策略詳解;mysqldump、xtrabackup、LVM快照等備份工具在MySQL數據庫備份中的使用;MySQL數據庫恢復;

10、關系型數據庫索引類型詳解;MySQL查詢分析及其索引的定制;

11、MySQL日志文件管理:查詢日志、慢查詢日志、二進制日志、中繼日志、事務日志及錯誤日志;

12、MySQL復制精講,包括主-從、主-主等架構及基于SSL加密傳輸的實現,其它常見的架構形式及優劣比較;MySQL 5.6基于GTID的復制技術及多線程復制技術;

13、MySQL讀寫分離、連接池及sharding技術:介紹mysql_proxy、sql_relay、amoeba及cobar等;以前三者其中之一來介紹讀寫分離的實現;

14、中小型企業低成本的MySQL高可用集群的解決方案:MySQL+corosync/openais+drbd的原理及其實現;

15、PhpMyAdmin、mysql-gui-tools和MySQL Front等第三方工具的使用;

16、以MySQL應用為中心調優硬件、系統及MySQL服務;

五、集群/存儲專題

1、詳述Linux系統集群體系結構、類型及應用方案;

LVS專題

2、Linux虛擬服務器LVS原理,詳細講解其類型及調度方法等;

3、LVS-NAT、LVS-DR的配置及以之實現apache、nginx、ssh等負載均衡應用,并詳細比較此兩種實現方式的不同及各自的應用場景;

4、LVS持久性連接應用環境理論及實現;FW方式實現LVS的affinity應用;

5、編寫bash腳本實現對realserver健康狀態監控,實現realserver故障隔離及自動重新上線等功能;

高可用服務專題

6、高可用集群原理及Heartbeat、openais/corosync等解決方案原理精講;

7、Heartbeat安裝、配置及以web為例實現高可用環境;

8、Hertbeat資源配置方式及維護;使用heartbeat-gui實現基于圖形化方式對集群進行管理;

9、Corosync/OpenAIS高可用集群解決方案原理及實現方法;基于案例詳解生產環境中應用Pacemaker配置實現高可用集群的方法;(一步步以完全手動的方式實現Linux系統上的HA集群);

10、資源管理原理、類別、LSB腳本的編寫等及資源管理的定義;基于pacemaker的高可用環境下資源管理詳解;Stonith原理、類別及其實現方法;

11、RHCS集群套件工作原理精講,并從微觀角度介紹其與前述解決方案的異同;RHCS集群的部署演示;

12、LVS和corosync集成實現高可用director及負載均衡的大規模應用服務器集群,包括ldirectord的應用等;

13、高可用服務解決方案keepalived及其實現,以nginx或haproxy為例講解其雙主模型的實現;

14、RAID、NAS、SAN、iSCSI等存儲原理及基于Linux的iSCSI服務器的實現及應用;講解openfiler、freenas或Nexentastor等開源解決方案的應用;

15、GFS2集群文件系統的原理;基于iSCSI講解GFS2的實現;


六、http代理加速、應用服務器

6.1 web服務高級應用

1、http協議的緩存原理及常用首部、常用見的反向代理解決方案的功能對比等;

2、varnish服務原理、安裝配置;varnish狀態引擎詳解及VCL編程詳解;varnish系統參數高速及生部環境中的部署方案;

3、Nginx upstream和proxy模塊負載均衡和反向代理部署精講;

4、haproxy精講:haproxy功能與特性、常用配置指令、常用調度算法及ACL等;

5、Memcached服務及其在web服務體系中的應用;

6、java、jsp、servlet、HotSpot JVM、J2SE、J2EE及web container等相關技術要點詳解;

7、Tomcat體系結構、安裝配置、連接器及與apache或Nginx的整合;Tomcat各集群模型及其實現案例;

8、各種負載均衡場景中session保持的實現方案及特性對比詳解;

6.2 可擴展web架構

9、分布式文件系統詳述;常見分布式文件系統功能與特性對比說明;

10、以MogileFS原理、安裝配置及其應用案例;MogileFS與nginx的整合;

11、CDN技術實現原理;

12、可擴展web服務設計及相關解決方案選擇(日均10萬PV發展至100萬PV,再到1000萬PV站點的擴展思路及部署要點);大規模、高并發、高可用web服務器群的體系結構、設計及其實現;

13、Web環境壓力測試、系統性能評估、結果分析及優化;

七、虛擬化及IaaS云技術專題

7.1 Xen虛擬化技術精講

1、X86平臺虛擬化技術難點及相關解決方案原理詳解:CPU虛擬化、內存虛擬化及IO虛擬化,虛擬化種類及相關特點等;

2、Xen虛擬化基礎;Xen虛擬化技術中調度、中斷、內存、IO、網絡及塊設備的虛擬實現原理;

3、Xen在RHEL6或CentOS6上的安裝、配置及簡單應用;

4、Xen環境中虛擬存儲和虛擬網絡設備的配置及管理詳解;qemu-img工具詳解;

5、Xen管理工具棧xm及xl從入門到精通;

6、XenServer簡介;

7.2 KVM虛擬化技術精講(12期面授知識及案例大大加強)

7、KVM虛擬化基礎;KVM虛擬化技術實現原理;

8、構建KVM環境:KVM的安裝、配置及應用;

9、基于qemu-kvm命令行工具棧管理kvm;

10、KVM的核心功能:CPU、內存、存儲及網絡虛擬化的配置;基于SDL和VNC的圖形顯示功能應用;

11、基于libvirt、virt-intall和virt-manager工具棧管理kvm;

12、半虛擬化技術(virtio)、實時遷移、IO透傳技術及KSM;

13、KVM性能測試及基于KVM應用的Linux系統優化;

14、生產環境中虛擬化技術的應用方案及常用管理工具說明;

7.3 OpenStack云環境

15、IaaS、PaaS、SaaS云技術介紹;

16、OpenStack云棧詳解:Keystone、Glance、Nova、Swift、Horizon等組件的功能、特性及協作流程;

17、OpenStack的網絡模型及Neutron服務;

18、OpenStack的塊存儲服務及Cinder服務;

19、Ceilometer及Heat;

20、具有獨立控制節點、多計算節點及獨立對象存儲節點的全功能OpenStack環境部署案例;

八、自動化運維相關專題

1、自動化運維概述:高效地管理IT資產并滿足復雜多變的業務需求、構建高效IT系統、快速發現和解決IT系統中出現的問題等;

網絡、系統及服務監控類工具

2、SNMP協議原理及Linux系統上的配置及實現應用案例;

3、網絡、系統及服務等相關指標的監控模型及體系結構;

4、zabbix監控系統詳解;(課程內容詳細列表請參見http://mageedu.blog.51cto.com/4265610/1309875;)

5、rrdtool詳解;cacti安裝、配置;編寫腳本基于cacti完成監控功能的定制;

6、Nagios入門、進階及高級應用;nagios監控插件的開發;

預備類工具

7、RHEL/CentOS平臺上的無人值守安裝腳本Kickstart;基于PXE完成系統自動化安裝;

8、Cobbler應用詳解:服務原理、配置及應用;

配置管理類工具

9、ansible命令聯動工具的使用;

10、開源的軟件自動化配置和部署工具puppet詳解;(課程內容詳細列表請參見http://mageedu.blog.51cto.com/4265610/1308671)

11、saltstack(相當于Func加強版+Puppet精簡版)詳解;

說明:如果課堂時間不夠充分,第5和個第6個將會以視頻方式提供,而第10個和第11個則只會選講一個;

九、Linux系統原理基礎及系統調優

1、PC Server結構概述及Linux系統體系結構概述;

2、Linux系統進程相關理論(如調度方法、搶占、優先級、調度類別等),進程性能監控、分析及調優方案;

3、CPU及緩存架構、緩存一致性算法及內存訪問模型;

4、Linux內存架構體系(如內存區域、MMU、TLB、slab、伙伴系統、頁及頁框等相關理論知識),內存使用率實時監控、性能分析及調優方案;

5、Linux系統IO體系架構及設備驅動;磁盤IO體系架構(如緩存架構體系、pdflush、bio、磁盤隊列、IO調度器等相關理論知識),磁盤性能實時監控、分析及調優方案;

6、Linux虛擬文件系統體系架構及相關理論知識(如塊、inode、日志等)、常見文件系統類型及使用iozone等工具對文件系統性能的評估與比較,并結合實際項目需要選擇最佳文件系統;

7、中斷及異常相關理論知識(如信號、IRQ、進程上半部和下半部、中斷處理器等)及在系統調優中的應用;

8、Linux網絡子系統架構體系及相關理論知識(如socket buffer、NAPI、kernel buffer等),網絡子系統性能的監控、分析及調優方案的設計及實現;

9、基于Linux系統調優理論知識進行實際項目調優,如MySQL服務器的調優(系統部分)等;

10、系統性能評估方法、指標;

11、常用工具如sar、htop、dstat、iostat、perf、netpef、iperf及iozone等的使用,以之評估操作系統性能的方法;

12、以web服務及mysql服務為例,詳細講解其優化的思路、方案及實現過程;

十、海量數據并行處理系統(根據課程進程,中間詳略會有調整)

10.1 NoSQL

1、CAP理論模型及NoSQL基礎理論;NoSQL數據庫特性、技術流派及代表性項目;

2、MongoDB體系結構、安裝配置及應用;(具體課程列表請參照http://mageedu.blog.51cto.com/4265610/1317270

10.2 Hadoop

3、MapReduce基礎概念、運行框架、調度模型等;

4、HDFS基礎概念、命令行接口、數據序列化、數據流等;

5、Hadoop偽分布式及完全分布式模型的構建、測試及應用;

6、生產環境中Hadoop多種常用屬性的調優及其注意事項等;

7、Hadoop生態系統及常用組件說明;

8、Hadoop調度算法及其選用;

9、Hadoop硬件選型要點;

10、Zookeeper功能、特性、安裝配置及應用;列式數據庫HBase基礎原理、安裝配置及其應用;

11、數據倉庫Hive基礎原理、安裝配置及應用;

12、講解flume/scribe/chukwa/kafka日志收集系統其中之一;

13、使用工具完成Hadoop自動化部署;

十一、補充類高級專題(根據空余時間選擇講解)

1、rpm包SPECS文件詳解、RPM包制作及包簽名的實現;

2、LDAP協議原理及常見的實現;OpenLDAP的安裝、配置及應用;

3、基于busybox和內核定制制作微型Linux系統,并通過編譯的方式為之提供相應的服務以進一步理解Linux系統;LFS系統及其實現;

5、redis體系結構、安裝配置及應用;

6、ats功能、特性、安裝配置及應用;

7、logstash:功能豐富的日志收集分析系統;

8、python腳本編程基礎;

十二、職業素質課程

1、個人商業模式模型構建及優勢分析;職場禮儀;

2、簡歷撰寫格式及要注意的問題;

3、面試流程、常見問題應對方式及模擬面試;

原創文章,作者:追馬,如若轉載,請注明出處:http://www.www58058.com/6263

(1)
追馬追馬
上一篇 2015-07-13
下一篇 2015-07-15

相關推薦

  • Linux基礎-用戶管理相關操作-week 4

    1.復制/etc/skel 目錄為/home/tuser1,要求/home/tuser1及其內部文件的屬組和其他用戶均沒有任何訪問權限  cp /etc/skel /home/tuser1 -rf chmod og=  /home/tuser1 -R 2.編輯/etc/group文件添加組hadoop echo hadoop:x:503 …

    Linux干貨 2016-11-21
  • 淺談Linux終端類型

    Linux終端類型 作者:任飛鵬            日期:2016-10-13 終端是什么: 終端(Terminal)也稱終端設備,是計算機網絡中處于網絡最外圍的設備,主要用于用戶信息的輸入以及處理結果的輸出等。 早期計算機系統中,由于計算機主機…

    Linux干貨 2016-10-19
  • linux下VMware Tools安裝方法

    關于VMware Tools 是虛擬機里面的驅動,和各種實用工具,安裝了vmware tools,你的虛擬機就可以打開DX3D的支持,鼠標想移出虛擬機也不需要按組合鍵,文件可以從主機直接拖動復制到虛擬機里面,虛擬機的分辨率也會自動跟隨窗口調整而變化,還能解決圖形界面下的卡頓,總之就是拓展了虛擬機的功能,方便使用。     &nb…

    Linux干貨 2016-08-04
  • 系統基礎之vim工具詳解

    vim工具詳解 作為運維人員,每天要面對大量的文件操作,如何使用一個功能強大,操作快捷的文本編輯器,就至關重要.那天,今天給大家詳細的介紹下vim這款編輯器,完全符合我們的要求,下面讓我們一起來看看吧! 概論:  文本編輯器:  文本:純文本信息,   ASCII text:  純粹的,不加修飾的文字  文本…

    Linux干貨 2016-08-10
  • python基礎 習題總結

    pyenv 編程題目總結(99乘法表 打印菱形與閃電 斐波那契數列 素數 猴子吃桃) 原反補碼與異或運算 list列表

    Linux干貨 2018-03-25
  • 關于源碼包的基本知識

    關于源碼包的基本知識  §·什么是程序 程序(Program)是為實現特定目標或解決特定問題而用計算機語言編寫的命令序列的集合。為實現預期目的而進行操作的一系列語句和指令。 一般分為系統程序和應用程序兩大類。 程序就是為使電子計算機執行一個或多個操作,或執行某一任務,按序設計的計算機指令的集合。 §·程序包的編譯安裝 ※·為什么需要源碼安裝 1.最…

    Linux干貨 2016-08-24
欧美性久久久久