一、學(xué)習(xí)的章節(jié)
0基礎(chǔ)自學(xué)linux運(yùn)維從2.0到2.10 已經(jīng)學(xué)習(xí)完了廓块。主要講的是centos系統(tǒng)安裝后一些基礎(chǔ)的東西:
1. 新手遇到比較多的gcc、gcc++升級(jí)為高版本
2. linux常用的軟件安裝方式及區(qū)別
3.最常用的LNMP/LNMT環(huán)境搭建纯露。
? LNMP:linux+nginx+mysql+php
? LNMT:linux+nginx+mysql+tomcat剿骨,其中tomcat使用了官方建議的二進(jìn)制安裝
4.FTP這個(gè)是使用頻率很高的,我這里使用的是vsFTP埠褪,是基于虛擬用戶的。涉及存儲(chǔ)NFS這個(gè)比較簡(jiǎn)單挤庇,我這里就不講了
5.windows下怎使用一鍵安裝工具LNMP為phpstudy钞速,LNMT為jspstudy
二、需要學(xué)習(xí)的內(nèi)容
在學(xué)習(xí)的時(shí)候可以根據(jù)公司的情況嫡秕,用win配置一下本地開發(fā)環(huán)境渴语,簡(jiǎn)單了解一下。所以我才會(huì)寫phpstudy昆咽、jspstudy.
2.1 nginx
? ? ? 學(xué)完上面之后你可以看一下nignx方面的書了驾凶,現(xiàn)在國(guó)內(nèi)基本上都是用nginx代替apache了牙甫,所以apache安裝我這里沒有寫。如果需要可以發(fā)簡(jiǎn)信給我调违。
? ? nginx作為使用頻率最高的網(wǎng)站軟件窟哺,所以學(xué)好它非常重要。一般開始小公司運(yùn)維在nignx方面用到如下:
1. 做web使用結(jié)合php/tomcat技肩,主要是處理靜態(tài)內(nèi)容且轨。要熟悉一下它的配置
2.? rewrite。有些網(wǎng)站如PHP開發(fā)有自己的規(guī)則虚婿,需要懂旋奢。比如當(dāng)輸入官網(wǎng)時(shí)判斷,如果是PC端使用www.xxx.com然痊,如果是移動(dòng)端使用m.xxx.com至朗。又比如防盜鏈。
3.反代剧浸,也叫反向代理锹引。nginx反代使用比較簡(jiǎn)單,雖然功能上比不上haproxy辛蚊,但是還是有不少人使用粤蝎,做七層反代。
4.其它功能袋马。先簡(jiǎn)單了解一下初澎,到后面使用的時(shí)候再看。
5.了解一下一些功能的工作原理虑凛,工作過程也是必要的碑宴。
2.2 tomcat/php
linux web開發(fā)基本上分2大陣營(yíng)、php和java桑谍,而java使用tomcat的比較多延柠。所以了解tomcat也比較重要,一般php會(huì)結(jié)合Go使用比較多锣披, Go API給PHP調(diào)用贞间。
php:
1. 前期可以看一下簡(jiǎn)單的語法、配置雹仿、nginx+php-fpm是怎工作的增热。
2.了解一下php語法,PHP的調(diào)試
3.了解一下目前公司所使用的PHP框架胧辽。
tomcat:
java web一般使用tomcat比較多峻仇,如spring Boot都是默認(rèn)使用tomcat。所以公司用的是java web的話基本上要懂tomcat邑商。因?yàn)閖ava學(xué)習(xí)周期長(zhǎng)摄咆,如果有時(shí)間的話建立可以現(xiàn)在就定一個(gè)長(zhǎng)期目標(biāo)了凡蚜,自學(xué)的話一般1-3年這樣。tomcat一般需要了解的有:
1. tomcat的工作原理吭从,前期不用很熟悉朝蜘,但是要知道
2. tomcat的配置(server.xml):一般懂得配置虛擬主機(jī)。其它配置公司用什么就了解一下影锈。
mysql:
mysql當(dāng)為小公司的網(wǎng)站數(shù)據(jù)庫(kù)也是比較多的芹务,前期也需要學(xué)習(xí)一下。有的公司喜歡用mariaDB和mysql差不多的鸭廷,幾乎全兼容mysql枣抱。
1. 會(huì)寫SQL語句,懂得SQL語句的執(zhí)行過程
2.mysql一些維護(hù)命令:mysqldump備份辆床、還原佳晶,性能查看(如explain、慢查詢讼载、緩存表轿秧、processlist等)、簡(jiǎn)單的腳本(如定時(shí)備份咨堤、監(jiān)控mysql是否運(yùn)行)菇篡、mysql在線備份工具XtraBackup也用得比較多,也需要去官網(wǎng)了解一下一喘。
3.會(huì)配置mysql主從:后面將會(huì)講mysql主從驱还、需要懂得它的工作原理
注:有的公司也喜歡用mongoDB,mongoDB學(xué)習(xí)方式和mysql差不多凸克,前期也只是學(xué)簡(jiǎn)單的備份還原议蟆、同步、性能查看萎战、寫一些shell腳本
2.3 學(xué)習(xí)簡(jiǎn)單的語法(可選)
現(xiàn)在可以根據(jù)公司的情況咐容,可以看一下簡(jiǎn)單的編程語言了,看一下簡(jiǎn)單的語法蚂维,安裝一個(gè)IDE了解一下戳粒。如果忙,沒時(shí)間虫啥,也可以不用選享郊。編程的話建議還是早學(xué)得好,為linu運(yùn)維開發(fā)做準(zhǔn)備孝鹊。
三、一下步內(nèi)容選擇
下一步我主要講的是數(shù)據(jù)庫(kù)展蒂,關(guān)系又活、非關(guān)系NoSQL苔咪、內(nèi)存數(shù)據(jù)庫(kù)redis、插件柳骄、源碼安裝团赏、多實(shí)例、版本控制
1. mysql普通主從耐薯、mysql 基于GTID的主從
2. mongoDB副本集(主從從mongoDB4.0開始已經(jīng)廢除了)
3. redis主從舔清,群集各個(gè)公司不同,我這里就不寫的曲初,不建議用官方哨兵体谒,不好用
4.常用的源碼安裝,比如nginx臼婆,當(dāng)yum安裝不能滿足要求抒痒,需要用源碼安裝
5.插件安裝,如php yum安裝完之后我要安裝插件怎么辦颁褂?
6.多實(shí)例思路故响。如mysql/mongoDB多實(shí)例、php多實(shí)例
7.版本控制.svn(過時(shí)了)颁独、git彩届、gitlab
8.監(jiān)控。主要是zabbix
到業(yè)務(wù)拓展大了誓酒,那就前端用負(fù)載均衡了haproxy樟蠕、lvs、heartbeat丰捷、keepalived
還有分布式存儲(chǔ)相關(guān)坯墨,如NFS、MFS病往、淘寶的TFS捣染、近年比較火的對(duì)象存儲(chǔ)(如ceph)