Linux監控(OS,MySQL,Tomcat,Apache),tomcatapache

來源:互聯網
上載者:User

Linux監控(OS,MySQL,Tomcat,Apache),tomcatapache

      關於逐步脫離開發崗位的意見,老大已經批准了,接下來我的主要工作就是”營運+資料庫管理“。感謝傑民兄和小馬哥能接受我的騷擾,接下來還會去騷擾他們,同時也會去騷擾董大爺,小剛總,心靈哥,豬肉哥,謝謝你們。同時也要感謝吳老大,葉老大,落總,七總,橙子哥他們。

     因為還沒有學會玩zabbix,所以先著手自己寫指令碼試試看。寫好的指令碼到時候回分享出來,歡迎大家批評指點。

=======================================================================================

1.重點進程監控:tomcat,apache,mysql
2.儲存空間監控:掛載點 75%警示(如果一直都是75%,則每小時警示一次)
3.uptime查看load_avg,只要這三個值出現大於(cpu core/2)就開始收集系統資源資訊(cpu,mem,io,net)
  top10的進程(cpu,mem),每10秒收集一次,同時開始警示,每10分鐘警示一次(如果一直都大於(cpu core/2))
4.重點網域名稱ping測試(??)
5.網路流量如何監控(待定)
6.MySQL績效參數收集
列印當前MySQL的重點參數:
innodb_buffer_pool_size:0.5--0.8
innodb_max_dirty_pages_pct:<50%
innodb_log_buffer_size:32M
innodb_data_file_path:>1G
innodb_log_file_size:
innodb_flush_log_at_trx_commit:1
sync_binlog:1
query_cache_size:0
query_cache_type:0
innodb_data_file_path=ibdata1:100M:autoextend  #1024M init
innodb_file_per_table:1           #是否啟用獨立資料表空間 


innodb_log_buffer_size:8M   # # 用來緩衝日誌資料的緩衝區的大小.當此值快滿時, InnoDB將必須重新整理資料到磁碟上. 由於基本上每秒都會重新整理一次,所以沒有必要將此值設定的太大(甚至對於長事務而言)                                                 
innodb_log_file_size:100M    # redo log大小,不能太大,否則恢複很慢,不能太小,否則頻繁checkpoint,導致效能抖動                        
innodb_log_files_in_group:3  # 指定日誌組中redo log日誌的數量


log_bin  #開啟binlog 
expire_logs_days:45
binlog_format:MIXED


innodb_flush_method:O_DIRECT 
這個參數控制著innodb資料檔案及redo log的開啟、刷寫入模式,對於這個參數,文檔上是這樣描述的:
有三個值:fdatasync(預設),O_DSYNC,O_DIRECT
fdatasync:預設值,調用fsync()去刷資料檔案與redo log的buffer
O_DSYNC:innodb會使用O_SYNC方式開啟和刷寫redo log,使用fsync()刷寫資料檔案
O_DIRECT:innodb使用O_DIRECT開啟資料檔案,使用fsync()刷寫資料檔案跟redo log


open_files_limit:8192
table_definition_cache:400                           
table_open_cache:400


lower_case_table_names:
sql_mode
character_set_server


max_connections                     
max_user_connections                        
thread_cache_size 




read_buffer_size
sort_buffer_size
tmp_table_size
join_buffer_size
read_rnd_buffer_size
max_heap_table_size




slow_query_log_file
slow_query_log:1
log_queries_not_using_indexes:1
long_query_time:0.02
min_examined_row_limit :100


Mysql 記憶體配置規則是:用多少給多少,最高到配置的值,不是立即分配
全域緩衝包括:
global buffer(全域記憶體配置總和) =
   innodb_buffer_pool_size                      -- InnoDB高速緩衝,行資料、索引緩衝,以及事務鎖、自適應雜湊等
+innodb_additional_mem_pool_size    -- InnoDB資料字典額外記憶體,緩衝所有表資料字典
+innodb_log_buffer_size                      -- InnoDB REDO日誌緩衝,提高REDO日誌寫入效率
+key_buffer_size                                   -- MyISAM表索引高速緩衝,提高MyISAM表索引讀寫效率
+query_cache_size                                -- 查詢快取,緩衝查詢結果,提高反覆查詢返回效率
+thread_cache_size                               --Thread_Cache 中存放的最大連接線程數
+table_cahce                                         -- 資料表空間檔案描述符緩衝,提高資料表開啟效率
+table_definition_cache                        -- 表定義檔案描述符緩衝,提高資料表開啟效率
會話緩衝包括:
 total_thread_buffers= max_connections  * (
  read_buffer_size             -- 順序讀緩衝,提高順序讀效率
+read_rnd_buffer_size   -- 隨機讀緩衝,提高隨機讀效率
+sort_buffer_size           -- 排序緩衝,提高排序效率
+join_buffer_size           -- 表串連緩衝,提高表串連效率
+binlog_cache_size       -- 二進位日誌緩衝,提高二進位日誌寫入效率
+tmp_table_size            -- 記憶體暫存資料表,提高暫存資料表儲存效率
+thread_stack                -- 線程堆棧,暫時寄存SQL語句/預存程序
+thread_cache_size       -- 線程緩衝,降低多次反覆開啟線程開銷,類比串連池


mysql狀態:
qps,tps,InnoDB Buffer命中率,慢日誌,Table Cache狀態量,鎖定狀態,Tmp Table 狀況(暫存資料表狀況), Binlog Cache 使用狀況,Innodb_log_waits 量 ,slave延遲等待。




7.虛擬機器壓力測試報告:(sysbench,tpcc_mysql)
tpcc_mysql壓力測試TPS:os記憶體調整到16G, innodb_buffer_pool_size分別設定為2,4,6,8,10,12G時倉庫數是5,10,15,20,50,60,80,100的TPS。

著作權聲明:本文為博主原創文章,未經博主允許不得轉載。

相關文章

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.