自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

從苦逼到牛逼,詳解Linux運(yùn)維工程師的打怪升級(jí)之路

運(yùn)維 系統(tǒng)運(yùn)維
做運(yùn)維也快四年多了,就像游戲打怪升級(jí),升級(jí)后知識(shí)體系和運(yùn)維體系也相對(duì)變化挺大,學(xué)習(xí)了很多新的知識(shí)點(diǎn)。

 [[205306]]

做運(yùn)維也快四年多了,就像游戲打怪升級(jí),升級(jí)后知識(shí)體系和運(yùn)維體系也相對(duì)變化挺大,學(xué)習(xí)了很多新的知識(shí)點(diǎn)。

運(yùn)維工程師是從一個(gè)呆逼進(jìn)化為苦逼再成長(zhǎng)為牛逼的過(guò)程,前提在于你要能忍能干能拼,還要具有敏銳的嗅覺(jué)感知前方潮流變化。如:今年大數(shù)據(jù),人工智能比較火……(相對(duì)表示就是 Python 比較火)

之前寫過(guò)運(yùn)維基礎(chǔ)篇,發(fā)現(xiàn)對(duì)很多人收益挺大,接下來(lái)也寫下關(guān)于這 4 年多的運(yùn)維實(shí)踐經(jīng)驗(yàn),從事了 2 年多游戲運(yùn)維,1 年多安全運(yùn)維,1 年大數(shù)據(jù)運(yùn)維,相關(guān)行業(yè)信息不能算非常精通,但是熟悉和熟練還是相對(duì)可以的。

初級(jí)篇

8 張 Linux 知識(shí)圖譜,幫你讀懂相關(guān)技術(shù)和性能

 

詳解Linux運(yùn)維工程師入門級(jí)必備技能:http://chenhao6.blog.51cto.com/6228054/1341458

01rsync工具

很多地方經(jīng)常會(huì)用到 rsync 工具,實(shí)施幾臺(tái)服務(wù)器的同步效果。我們公司就是使用這個(gè)工具完成服務(wù)器的游戲的服務(wù)端和客戶端同步。

有幾個(gè)文章例子:

rsync 強(qiáng)化技術(shù)(手動(dòng)修改端口開啟防火墻的情況下)并且通過(guò)腳本只同步需要的服務(wù)器:http://chenhao6.blog.51cto.com/6228054/1322579

inotify+rsync+mutt+msmtp 實(shí)現(xiàn) Linux 文件或者目錄自動(dòng)更新并且實(shí)現(xiàn)發(fā)郵件給管理員:http://chenhao6.blog.51cto.com/6228054/1298375

02網(wǎng)絡(luò)服務(wù)

服務(wù)有很多種,每間公司都會(huì)用到不同的,但基礎(chǔ)的服務(wù)肯定要掌握,如 FTP、DNS、SAMBA、郵件,這幾個(gè)大概學(xué)一下就行,LAMP 和 LNMP 是必須要熟練。

我所指的不是光會(huì)搭建,而是要很熟悉里面的相當(dāng)配置才行,因?yàn)楣咀铌P(guān)鍵的絕對(duì)是 Web 服務(wù)器,所以 Nginx 和 Apache 要熟悉,特別是 Nginx 一定要很熟悉才行,至少有些公司還會(huì)用 Tomcat,這個(gè)也最好學(xué)一下。

其實(shí)網(wǎng)絡(luò)服務(wù)方面不用太擔(dān)心,一般公司的環(huán)境都已經(jīng)搭建好,就算有新服務(wù)器或讓你整改,公司會(huì)有相應(yīng)的文檔讓你參照來(lái)弄,不會(huì)讓你亂來(lái)的,但至少相關(guān)的配置一定要學(xué)熟,而且肯定是編譯安裝多,那些模塊要熟悉一下它的作用,特別是 PHP 那些模塊。

上面兩點(diǎn)只是基礎(chǔ),也是必要條件,不能說(shuō)是工具,以下才是真正的要掌握的工具:

Samba 文件共享服務(wù)(共享腳本讓你工作更輕松):

http://chenhao6.blog.51cto.com/6228054/1218028

Linux Web 服務(wù)安裝 Apache 思路(源碼編譯,自己定義服務(wù)):

http://chenhao6.blog.51cto.com/6228054/1223484

FTP(持虛擬用戶,并且每個(gè)虛擬用戶可以具有獨(dú)立的屬性配置):

http://chenhao6.blog.51cto.com/6228054/1219713

Linux 下構(gòu)建 DHCP 服務(wù)器:

http://chenhao6.blog.51cto.com/6228054/1217232

03腳本語(yǔ)言

Shell 腳本和另一個(gè)腳本語(yǔ)言,Shell 是運(yùn)維人員必須具備的,不懂這個(gè)連入職都不行,至少也要寫出一些系統(tǒng)管理腳本,最簡(jiǎn)單也得寫個(gè)監(jiān)控 CPU,內(nèi)存比率的腳本吧,這是最最最基本了。

別以為會(huì)寫那些猜數(shù)字和計(jì)算什么數(shù)的,這些沒(méi)什么作用,只作學(xué)習(xí)意義,寫系統(tǒng)腳本才是最有意義,而另一個(gè)腳本語(yǔ)言是可選的,一般是 3P,即 Python、Perl 和 PHP。

PHP 就不需要考慮了,除非你要做開發(fā),我個(gè)人建議學(xué) Python 會(huì)比較好,可實(shí)現(xiàn)自動(dòng)化運(yùn)維,Perl 是文本處理很強(qiáng)大,這兩個(gè)學(xué)一個(gè)就行了。

Shell(一) 入門到復(fù)雜 自己做的各種腳本實(shí)例與解釋:

http://chenhao6.blog.51cto.com/6228054/1230337

Shell(二)入門到復(fù)雜 腳本實(shí)例(計(jì)算器):

http://chenhao6.blog.51cto.com/6228054/1232070

04sed 和 awk 工具

這兩個(gè)工具必須要掌握,同時(shí)還要掌握正則表達(dá)式,這個(gè)就痛苦了,正則是最難學(xué)的表達(dá)式,但結(jié)合到 sed 和 awk 中會(huì)很強(qiáng)大。

在處理文本內(nèi)容和過(guò)濾 Web 內(nèi)容時(shí)十分有用,不過(guò)在學(xué) Shell 的同時(shí)一般會(huì)經(jīng)常結(jié)合用到的,所以學(xué)第 3 點(diǎn)就會(huì)順便學(xué)第 4 點(diǎn)。

sed 簡(jiǎn)明教程:

https://coolshell.cn/articles/9104.html

05文本處理命令

sort 、tr、cut、paste、uniq、tee 等必學(xué),也是結(jié)合第 3 點(diǎn)腳本語(yǔ)言時(shí)一并學(xué)習(xí)的。

06數(shù)據(jù)庫(kù)

首選 MySQL,別問(wèn)我為什么不學(xué) SQL Server 和 Oracle,因?yàn)?Linux 用得最多絕對(duì)是 MySQL,增刪改查必學(xué),特別要學(xué)熟查,其它方面可能不太需要,因?yàn)檫\(yùn)維人員使用最多還是查,哪些優(yōu)化和開發(fā)語(yǔ)句不會(huì)讓你弄的。

MySQL(手動(dòng)編譯詳細(xì)思路,以及增刪改查、授權(quán)、備份還原):

http://chenhao6.blog.51cto.com/6228054/1225129

07防火墻

防火墻也算是個(gè)難點(diǎn),說(shuō)難不難,說(shuō)易不易,最重要弄懂規(guī)則,如果學(xué)過(guò) CCNA 的朋友可能會(huì)比較好學(xué),因?yàn)?iptables 也有 NAT 表,原理是一樣的,而 FILTER 表用得最多,反正不學(xué)就肯定不合格。

防火墻(一)主機(jī)型防火墻

http://chenhao6.blog.51cto.com/6228054/1239306

防火墻(二)SNAT和DNAT

http://chenhao6.blog.51cto.com/6228054/1240714

08監(jiān)控工具

我個(gè)人建議,最好學(xué)這 3 個(gè):Cacti,Nagios,Zabbix,企業(yè)用得最多應(yīng)該是 Nagios 和 Zabbix,反正都學(xué)吧,但 Nagios 會(huì)有點(diǎn)難,因?yàn)闀?huì)涉及到用腳本寫自動(dòng)監(jiān)控,那個(gè)地方很難。

CentOS 6.2+Nginx+Nagios,手機(jī)短信和QQ郵箱提醒:

http://chenhao6.blog.51cto.com/6228054/1323192

服務(wù)器集中檢測(cè)Cacti:

http://chenhao6.blog.51cto.com/6228054/1249302

09集群和熱備

這個(gè)很重要,肯定要懂的,但到了公司就不會(huì)讓你去弄,因?yàn)樾率只静蛔屇闩?,集群工具有很多,最好學(xué)是 LVS,這是必學(xué),最好也學(xué) Nginx 集群、反向代理,還有熱備,這個(gè)就有更多工具能實(shí)現(xiàn)了,像我公司是自己開發(fā)熱備工具的。

MySQL 熱備也要學(xué),就是主從復(fù)制,這個(gè)要學(xué)懂整個(gè)流程一點(diǎn)也不容易,只照著做根本沒(méi)意思。

MySQL主從同步,雙主同步,如果服務(wù)器意外掛機(jī),不同步怎么辦:

http://chenhao6.blog.51cto.com/6228054/1325247

MySQL高性能壓力測(cè)試(總結(jié)了好久)

http://chenhao6.blog.51cto.com/6228054/1314418

Nginx 緩存配置及報(bào)錯(cuò)解決:

http://chenhao6.blog.51cto.com/6228054/1329106

10數(shù)據(jù)備份

工具有很多,但至少要把 RAID 的原理弄懂,特別是企業(yè)最常用的 1+0 或 0+1,自己做實(shí)驗(yàn)也要弄出來(lái),備份工具有很多,如 tar、dump,最好多了解一下。

學(xué)會(huì)以上 10 點(diǎn),應(yīng)該可以入門了,有些技術(shù)會(huì)比較難學(xué),例如 Apache 和 Nginx 中還有些很重要的技術(shù),如系統(tǒng)調(diào)優(yōu)、服務(wù)優(yōu)化、程序優(yōu)化,這些在沒(méi)接觸工作前很難學(xué)習(xí)到的。

所以先把這 10 點(diǎn)學(xué)了吧,估計(jì)要學(xué)熟至少 3 個(gè)月不止,腳本部分會(huì)覺(jué)得很吃力了,我建議是先學(xué)熟 Shell,等工作后再學(xué)另一門腳本語(yǔ)言,這樣會(huì)比較好。

以上就是踏入 Linux 運(yùn)維工程師需要掌握的工具,還有很多工具要掌握的,但在學(xué)習(xí)環(huán)境中是很難學(xué)到。

最后我再提醒一下,這里所指的工具相當(dāng)于技能,而不是像 Windows 或 Ubuntu 的圖形化工具,還有學(xué) Linux 就別裝圖形界面,這樣虛擬機(jī)就不用吃太多內(nèi)存,而且絕對(duì)不建議在真機(jī)上裝 Linux,根本達(dá)不到學(xué)習(xí)效果。

中級(jí)篇

這部分來(lái)自我自己的面試經(jīng)歷和面試別人的經(jīng)歷總結(jié)。先附上運(yùn)維思路拓?fù)鋱D:

 

有些人認(rèn)為,運(yùn)維就是部署某個(gè)軟件,設(shè)置些基礎(chǔ)功能,就算會(huì)運(yùn)維了。

舉個(gè)例子:安裝 LAMP,LNMP,就感覺(jué)部署方法我都掌握了。其實(shí)網(wǎng)上大多數(shù)都有一鍵安裝腳本啥的根本沒(méi)有啥技術(shù)含量,在面試官眼里,這些都不是你的亮點(diǎn)。

基本到了公司一般環(huán)境架構(gòu)都是部署好的,很少需要你去變動(dòng)環(huán)境架構(gòu)。就算你安裝好 LNMP 架構(gòu),你熟悉里面的原理嗎?熟悉 Nginx 優(yōu)化嗎?熟悉 MySQL 優(yōu)化嗎?

再舉個(gè)例子:我面試遇到的問(wèn)題,面試官問(wèn)你既然熟悉 LNMP 架構(gòu),那么 Nginx 反向代理的作用呢。

你應(yīng)該不是說(shuō)出懂這個(gè)軟件和配置,你盡可能的說(shuō)怎么優(yōu)化,怎么深入提高網(wǎng)站性能:

  • 使用反向代理可以理解為 7 層應(yīng)用層的負(fù)載均衡,使用負(fù)載均衡之后可以非常便捷的橫向擴(kuò)展服務(wù)器集群,實(shí)現(xiàn)集群整體并發(fā)能力、抗壓能力的提高。
  • 通常反向代理服務(wù)器會(huì)帶有本地 Cache 功能,通過(guò)靜態(tài)資源的 Cache,有效的減少后端服務(wù)器所承載的壓力,從而提高性能。

下面說(shuō)說(shuō)運(yùn)維在工作中需要掌握的核心技術(shù)。需要注意的是,這是在工作中掌握的,在學(xué)習(xí)中很難掌握。

01第一條最主要的排錯(cuò)

  • 分析部分程序不能運(yùn)行或沒(méi)有按預(yù)想結(jié)果運(yùn)行的原因,對(duì)程序運(yùn)行跟蹤,查看系統(tǒng)調(diào)用的過(guò)程。
  • 較深入的系統(tǒng)瓶頸點(diǎn)分析。

查看剩余內(nèi)存:

  1. free -m 
  2. #-/+ buffers/cache:       6458       1649 
  3. #6458M為真實(shí)使用內(nèi)存  1649M為真實(shí)剩余內(nèi)存(剩余內(nèi)存+緩存+緩沖器) 
  4. #linux會(huì)利用所有的剩余內(nèi)存作為緩存,所以要保證linux運(yùn)行速度,就需要保證內(nèi)存的緩存大小 

系統(tǒng)信息:

  1. uname -a              # 查看Linux內(nèi)核版本信息 
  2. cat /proc/version     # 查看內(nèi)核版本 
  3. cat /etc/issue        # 查看系統(tǒng)版本 
  4. lsb_release -a        # 查看系統(tǒng)版本  需安裝 centos-release 
  5. locale -a             # 列出所有語(yǔ)系 
  6. locale                # 當(dāng)前環(huán)境變量中所有編碼 
  7. hwclock               # 查看時(shí)間 
  8. who                   # 當(dāng)前在線用戶 
  9. w                     # 當(dāng)前在線用戶 
  10. whoami                # 查看當(dāng)前用戶名 
  11. logname               # 查看初始登陸用戶名 
  12. uptime                # 查看服務(wù)器啟動(dòng)時(shí)間 
  13. sar -n DEV 1 10       # 查看網(wǎng)卡網(wǎng)速流量 
  14. dmesg                 # 顯示開機(jī)信息 
  15. lsmod                 # 查看內(nèi)核模塊 

硬件信息:

  1. more /proc/cpuinfo                                       # 查看cpu信息 
  2. lscpu                                                    # 查看cpu信息 
  3. cat /proc/cpuinfo | grep name | cut -f2 -d: | uniq -c    # 查看cpu型號(hào)和邏輯核心數(shù) 
  4. getconf LONG_BIT                                         # cpu運(yùn)行的位數(shù) 
  5. cat /proc/cpuinfo | grep 'physical id' |sort| uniq -c    # 物理cpu個(gè)數(shù) 
  6. cat /proc/cpuinfo | grep flags | grep ' lm ' | wc -l     # 結(jié)果大于0支持64位 
  7. cat /proc/cpuinfo|grep flags                             # 查看cpu是否支持虛擬化   pae支持半虛擬化  IntelVT 支持全虛擬化 
  8. more /proc/meminfo                                       # 查看內(nèi)存信息 
  9. dmidecode                                                # 查看全面硬件信息 
  10. dmidecode | grep "Product Name"                          # 查看服務(wù)器型號(hào) 
  11. dmidecode | grep -P -A5 "Memory\s+Device" | grep Size | grep -v Range       # 查看內(nèi)存插槽 
  12. cat /proc/mdstat                                         # 查看軟raid信息 
  13. cat /proc/scsi/scsi                                      # 查看Dell硬raid信息(IBM、HP需要官方檢測(cè)工具) 
  14. lspci                                                    # 查看硬件信息 
  15. lspci|grep RAID                                          # 查看是否支持raid 
  16. lspci -vvv |grep Ethernet                                # 查看網(wǎng)卡型號(hào) 
  17. lspci -vvv |grep Kernel|grep driver                      # 查看驅(qū)動(dòng)模塊 
  18. modinfo tg2                                              # 查看驅(qū)動(dòng)版本(驅(qū)動(dòng)模塊) 
  19. ethtool -i em1                                           # 查看網(wǎng)卡驅(qū)動(dòng)版本 
  20. ethtool em1 
  • 使用分析系統(tǒng)分析 Web 日志(如逆火軟件)
  • 分析系統(tǒng)性能瓶頸點(diǎn)(IO/Memory/CPU,常用工具,top 命令中 shift 組合鍵的特殊用 Sar/vmstat/iostat/ipcs)

日志管理常用命令:

  1. history                      # 歷時(shí)命令默認(rèn)1000條 
  2. HISTTIMEFORMAT="%Y-%m-%d %H:%M:%S "   # 讓history命令顯示具體時(shí)間 
  3. history  -c                  # 清除記錄命令 
  4. cat $HOME/.bash_history      # 歷史命令記錄文件 
  5. lastb -a                     # 列出登錄系統(tǒng)失敗的用戶相關(guān)信息  清空二進(jìn)制日志記錄文件 echo > /var/log/btmp   
  6. last                         # 查看登陸過(guò)的用戶信息  清空二進(jìn)制日志記錄文件 echo > /var/log/wtmp   默認(rèn)打開亂碼 
  7. who /var/log/wtmp            # 查看登陸過(guò)的用戶信息 
  8. lastlog                      # 用戶最后登錄的時(shí)間 
  9. tail -f /var/log/messages    # 系統(tǒng)日志 
  10. tail -f /var/log/secure      # ssh日志 

02優(yōu)化

優(yōu)化可以說(shuō)是運(yùn)維最吃香的技能,基本會(huì)優(yōu)化的運(yùn)維普遍工資很高,而且優(yōu)化是要承擔(dān)風(fēng)險(xiǎn)的,并不是網(wǎng)上搜個(gè)文章改一下配置文件或者參數(shù)就叫優(yōu)化了,這樣很容易造成宕機(jī)。

優(yōu)化是根據(jù)實(shí)際的現(xiàn)場(chǎng)環(huán)境硬件各個(gè)參數(shù)進(jìn)行部分優(yōu)化,提高軟件性能和網(wǎng)站性能。這個(gè)我只能講半知半解,當(dāng)時(shí)優(yōu)化 MySQL 和 Tomcat 參數(shù)也是根據(jù)網(wǎng)上文章和官網(wǎng)文檔查找參數(shù)在虛擬機(jī)上測(cè)試然后查看性能。

成本優(yōu)化,性能優(yōu)化,這里我給出 Tomcat 優(yōu)化 JVM 參數(shù)(做過(guò)相應(yīng)測(cè)試才放到現(xiàn)場(chǎng)環(huán)境的):(記住無(wú)監(jiān)控不調(diào)優(yōu))

  1. -標(biāo)準(zhǔn)參數(shù),所有jvm都應(yīng)該支持 
  2. -X 非標(biāo),每個(gè)jvm實(shí)現(xiàn)都不同 
  3. -XX 不穩(wěn)定參數(shù),下一版本可能會(huì)取消 
  4. serial collector 單線程 序列化 
  5. parallel collector 多線程 

啟動(dòng) jvisualvm.exe 監(jiān)控 dump 內(nèi)存溢出:

  1. -Xms:初始堆大小 
  2. -Xmx:最大堆大小 
  3. -Xss:線程棧大小 
  4. -XX:NewSize=n:設(shè)置年輕代大小 
  5. -XX:NewRatio=n:設(shè)置年輕代和年老代的比值,如3, 標(biāo)示年輕代:年老代比值1:3,年輕代占整個(gè)年輕代年老代和的1/4 
  6. -XX:SurvivorRatio=n:年輕代中的eden區(qū)與2個(gè)Survivor區(qū)的比值。 
  7. -XX:MaxPermSize=n:設(shè)置持久代大小 

收集器設(shè)置:

  1. -XX:+UseSerialGC:設(shè)置串行收集器 
  2. -XX:+UseParallelGC:設(shè)置并行收集器 
  3. -XX:+UseConcMarkSweepGC:設(shè)置并發(fā)收集器 

回收統(tǒng)計(jì)信息:

  1. -XX:+PrintGC 
  2. -XX:+PrintGCDetails 
  3. -Xloggc:filename 

Tocmat 優(yōu)化,確認(rèn)有幾個(gè) JVM 虛擬機(jī):

  1. set JAVA_OPTS= 
  2. -Xms4g 
  3. -Xmx4g 
  4. -Xss512k 
  5. -XX:+AggressiveOpts 進(jìn)攻型的優(yōu)化選項(xiàng),所有優(yōu)化項(xiàng)都加上 
  6. -XX:+UseBiasedLocking 優(yōu)化鎖,基本都要選上,偏執(zhí)鎖 
  7. -XX:permSize=64m 原始區(qū)大小,最大300m 類多就設(shè)置大一點(diǎn) 
  8. -XX:MaxPermSize=300m   
  9. -XX:+DisableExplicitGC //System.gc() 不顯示調(diào)用gc 
  10. -XX:+UseConcMarkSweepGC 使用cms縮短相應(yīng)時(shí)間,并發(fā)收集,低停頓 
  11. -XX:+UseParNewGC   并行收集新生代的垃圾 
  12. -XX:+CMSParallelRemarkEnabled 在使用UseParNewGC的情況下,盡量減少mark的時(shí)間 
  13. -XX:+UseCMSCompactAtFullCollection 使用并發(fā)收集器時(shí),開啟對(duì)年老代的壓縮,使碎片減少 
  14. -XX:LargePageSizelnBytes=128m 內(nèi)存分頁(yè)大小對(duì)性能的提升 
  15. -XX:+UseFastAccessorMethods get/set方法轉(zhuǎn)成本地代碼 
  16. -Djava awt headless=true  修復(fù)linux下tomcat處理圖標(biāo)時(shí)可能產(chǎn)生的bug 

內(nèi)存調(diào)優(yōu):

  1. "C:\Program Files\Java\jdk1.8.0_31\bin\java" -XX:+DoEscapeAnalysis -XX:+EliminateAllocations -XX:+UseTLAB -XX:+PrintGCDetails -Didea.launcher.port=7540 "-Didea.launcher.bin.path=E:\java\IntelliJ IDEA 2016.3\bin" -Dfile.encoding=UTF-8 -classpath "C:\Program Files\Java\jdk1.8.0_31\jre\lib\charsets.jar;C:\Program Files\Java\jdk1.8.0_31\jre\lib\deploy.jar;C:\Program Files\Java\jdk1.8.0_31\jre\lib\ext\access-bridge-64.jar;C:\Program Files\Java\jdk1.8.0_31\jre\lib\ext\cldrdata.jar;C:\Program Files\Java\jdk1.8.0_31\jre\lib\ext\dnsns.jar;C:\Program Files\Java\jdk1.8.0_31\jre\lib\ext\jaccess.jar;C:\Program Files\Java\jdk1.8.0_31\jre\lib\ext\jfxrt.jar;C:\Program Files\Java\jdk1.8.0_31\jre\lib\ext\localedata.jar;C:\Program Files\Java\jdk1.8.0_31\jre\lib\ext\nashorn.jar;C:\Program Files\Java\jdk1.8.0_31\jre\lib\ext\sunec.jar;C:\Program Files\Java\jdk1.8.0_31\jre\lib\ext\sunjce_provider.jar;C:\Program Files\Java\jdk1.8.0_31\jre\lib\ext\sunmscapi.jar;C:\Program Files\Java\jdk1.8.0_31\jre\lib\ext\sunpkcs11.jar;C:\Program Files\Java\jdk1.8.0_31\jre\lib\ext\zipfs.jar;C:\Program Files\Java\jdk1.8.0_31\jre\lib\javaws.jar;C:\Program Files\Java\jdk1.8.0_31\jre\lib\jce.jar;C:\Program Files\Java\jdk1.8.0_31\jre\lib\jfr.jar;C:\Program Files\Java\jdk1.8.0_31\jre\lib\jfxswt.jar;C:\Program Files\Java\jdk1.8.0_31\jre\lib\jsse.jar;C:\Program Files\Java\jdk1.8.0_31\jre\lib\management-agent.jar;C:\Program Files\Java\jdk1.8.0_31\jre\lib\plugin.jar;C:\Program Files\Java\jdk1.8.0_31\jre\lib\resources.jar;C:\Program Files\Java\jdk1.8.0_31\jre\lib\rt.jar;E:\java\new\out\production\new;E:\java\IntelliJ IDEA 2016.3\lib\idea_rt.jar" com.intellij.rt.execution.application.AppMain aa.T02 
  2. Heap 
  3.  PSYoungGen      total 38400K, used 3994K [0x00000000d5d80000, 0x00000000d8800000, 0x0000000100000000) 
  4.   eden space 33280K, 12% used [0x00000000d5d80000,0x00000000d61668b8,0x00000000d7e00000) 
  5.   from space 5120K, 0% used [0x00000000d8300000,0x00000000d8300000,0x00000000d8800000) 
  6.   to   space 5120K, 0% used [0x00000000d7e00000,0x00000000d7e00000,0x00000000d8300000) 
  7.  ParOldGen       total 87552K, used 0K [0x0000000081800000, 0x0000000086d80000, 0x00000000d5d80000) 
  8.   object space 87552K, 0% used [0x0000000081800000,0x0000000081800000,0x0000000086d80000) 
  9.  Metaspace       used 3072K, capacity 4494K, committed 4864K, reserved 1056768K 
  10.   class space    used 329K, capacity 386K, committed 512K, reserved 1048576K 
  11. Heap 
  12.  PSYoungGen      total 38400K, used 1147K [0x00000000d5d80000, 0x00000000d8800000, 0x0000000100000000) 
  13.   eden space 33280K, 3% used [0x00000000d5d80000,0x00000000d5e9ecb8,0x00000000d7e00000) 
  14.   from space 5120K, 0% used [0x00000000d8300000,0x00000000d8300000,0x00000000d8800000) 
  15.   to   space 5120K, 0% used [0x00000000d7e00000,0x00000000d7e00000,0x00000000d8300000) 
  16.  ParOldGen       total 87552K, used 0K [0x0000000081800000, 0x0000000086d80000, 0x00000000d5d80000) 
  17.   object space 87552K, 0% used [0x0000000081800000,0x0000000081800000,0x0000000086d80000) 
  18.  Metaspace       used 3072K, capacity 4494K, committed 4864K, reserved 1056768K 
  19.   class space    used 330K, capacity 386K, committed 512K, reserved 1048576K 
  20.   線程本地緩存使用eden的,開啟就會(huì)使用更多 

Tomcat 前任何參數(shù)沒(méi)參加大概每秒 605,調(diào)優(yōu)后大概每秒 435,接近 3 倍的結(jié)果。

03開發(fā)技能

優(yōu)選 Shell 和 Python,現(xiàn)在 Shell 無(wú)法滿足你的需求或者效率很低,那么選擇自動(dòng)化 Python 是最好的選擇?,F(xiàn)在普遍招聘需求要求,會(huì)寫 Shell 或者 Python、Perl 腳本,個(gè)人選擇還是選 Python。

Python 這門語(yǔ)言上手比較快,容易理解。在服務(wù)器管理工具上非常豐富,配置管理(Saltstack) 批量執(zhí)行(Fabric、Saltstack) 監(jiān)控(Zenoss、Nagios 插件) 虛擬化管理( python-libvirt) 進(jìn)程管理 (Supervisor) 云計(jì)算(OpenStack) ......

還有大部分系統(tǒng) C 庫(kù)都有 Python 綁定。

對(duì)于流程確定的事情,最終一定是納入系統(tǒng)管理的體系,寫成程序,成為系統(tǒng)的一部分。而不是無(wú)法復(fù)用游離與整體的各種腳本。

隨著云計(jì)算時(shí)代的來(lái)臨,中小型公司不需要運(yùn)維了,大型公司沒(méi)有工程開發(fā)能力的運(yùn)維,是沒(méi)有競(jìng)爭(zhēng)力的。

最重要的學(xué)好 Python 可以漲工資,可以漲工資,可以漲工資。(重要的事情說(shuō)三遍~)目前本人也是在學(xué) Python,正在把以前 Shell 腳本的實(shí)例轉(zhuǎn)換成 Python 腳本。

推薦《Python 實(shí)例手冊(cè)》下載鏈接:

http://down.51cto.com/data/2329173

意識(shí)篇

01安全意識(shí)

運(yùn)維人員的權(quán)限很大,所以一定要保證帳號(hào)/私鑰的安全:

  • 最好使用加密工具存儲(chǔ)。比如 Truecrypt、lpassword。
  • 基于本地存儲(chǔ)。切勿用網(wǎng)盤,也不建議用 lastpass 等。
  • SSH 私鑰添加密碼。

02磨刀意識(shí)

關(guān)于任何操作配置,最好先搞明白操作或配置的原理,然后再去操作。應(yīng)一句話叫做“磨刀不誤砍柴功”,而且對(duì)于類似的操作可以舉一反三。

03計(jì)劃意識(shí)

復(fù)雜的變更操作比如多臺(tái)主機(jī)以及牽涉到 san 存儲(chǔ),最好先作操作計(jì)劃,寫計(jì)劃文檔,詳細(xì)到每條命令,然后請(qǐng)高手幫忙審核。

這樣能最大程度使整個(gè)操作過(guò)程安全。如果是重要的客戶業(yè)務(wù)系統(tǒng),操作最好有回退方案,而一旦變更失敗,客戶可以在短時(shí)間內(nèi)將業(yè)務(wù)回退。

04記錄分享意識(shí)

遇到自己認(rèn)為較特殊的案例時(shí),記得要寫案例過(guò)程及分析的文檔。也方便自己以后翻看,或者和其他兄弟分享,作知識(shí)的傳播以便于大家以后都能少走彎路。

05監(jiān)控意識(shí)

對(duì)運(yùn)維來(lái)說(shuō),監(jiān)控是非常重要的,監(jiān)控是發(fā)現(xiàn)系統(tǒng)各種異常的眼睛,所以運(yùn)維應(yīng)該和監(jiān)控緊密配合。

06業(yè)務(wù)意識(shí)

盡量了解維護(hù)的各主機(jī)上的業(yè)務(wù)類型,以及各主機(jī)業(yè)務(wù)之間的關(guān)聯(lián)性,因?yàn)槿魏尉S護(hù)工作都是為主機(jī)能提供業(yè)務(wù)服務(wù)的。

當(dāng)某業(yè)務(wù)中斷,能最快的知道與此業(yè)務(wù)相關(guān)的主機(jī)群,從而縮小故障排查范圍,最快定位故障。

并不是你技術(shù)很牛,學(xué)的技術(shù)很多很熟,就不代表你不需要運(yùn)維意識(shí),其實(shí)領(lǐng)導(dǎo)很看重運(yùn)維意識(shí)的。

例如有沒(méi)有做好備份、權(quán)限分配問(wèn)題、平臺(tái)測(cè)試情況、故障響應(yīng)時(shí)間等,這些都是意識(shí),而不是你學(xué)了很多技術(shù)自認(rèn)大牛了,平臺(tái)發(fā)現(xiàn)故障你以為很簡(jiǎn)單的問(wèn)題喜歡處理就處理,不需要向其它部門反饋等。

領(lǐng)導(dǎo)不是看你的技術(shù)如何,而是看你的運(yùn)維意識(shí)如何,你沒(méi)運(yùn)維意識(shí),技術(shù)再牛也沒(méi)用,只會(huì)讓其它部門的人跟你不協(xié)調(diào)。

要知道做 IT 這行是苦逼的,需要無(wú)盡的學(xué)習(xí),不學(xué)習(xí)只會(huì)被淘汰,不想被年輕的淘汰,就只能不斷增值自己,不然不是你工資無(wú)法提升,而是你無(wú)法再?gòu)氖逻@行。

這個(gè)世界,在悄悄懲罰不改變的人……

責(zé)任編輯:武曉燕 來(lái)源: 51CTO博客
相關(guān)推薦

2013-12-18 10:56:48

Linux運(yùn)維運(yùn)維技能

2014-11-28 11:02:22

云智慧

2016-10-31 20:13:41

大數(shù)據(jù)數(shù)據(jù)分析

2017-02-03 20:50:08

Linux

2018-04-18 08:36:48

Linux命令運(yùn)維

2016-06-03 10:43:54

微店移動(dòng)優(yōu)化

2019-10-29 16:29:28

運(yùn)維架構(gòu)開發(fā)

2019-05-15 11:14:22

監(jiān)控工具運(yùn)維

2017-03-30 16:03:06

Linux運(yùn)維工程師技能

2012-07-24 13:36:58

運(yùn)維

2016-10-13 09:30:46

Linux運(yùn)維工程師運(yùn)維前景

2018-04-28 09:35:46

2012-07-19 13:51:12

linux運(yùn)維操作系統(tǒng)

2012-05-08 15:31:09

運(yùn)維南非螞蟻

2017-06-12 10:00:07

Linux運(yùn)維工程師基本技能

2015-07-22 12:50:18

Linux運(yùn)維

2022-06-20 22:37:25

Linux操作系統(tǒng)命令

2018-07-13 16:06:45

Linux運(yùn)維基本技能

2009-10-21 21:14:37

BTIM系統(tǒng)IT運(yùn)維管理北塔軟件
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)