2011年6月21日 星期二

MySql 服務 CPU LOADING 突然衝高?

剛剛例行公事的,打開瀏覽器都順便帶起學校網站,順便看看情況,沒想到出現:


 


連結XX資料庫有問題,沒有下列資料庫...XXX....


 


Oh ! Man,不會網站又掛掉了吧, 趕快連回主機,進主機後一看,CPU LOADING超高.....心想,不會被砍站吧?


先把 MYSQL SERVICE 關掉, 查一下LOG,暫時沒發現異狀。突然想到這個網站:


http://www.day32.com/MySQL/


 


來測試一下,目前MySQL設定是否OK。




MySQL Performance Tuning Primer Script




This script takes information from "SHOW STATUS LIKE..." and "SHOW VARIABLES LIKE..." 
to produce sane recomendations for tuning server variables. 
It is compatable with all versions of MySQL 3.23 and higher (including 5.1).


Currently it handles recomendations for the following:


  • Slow Query Log

  • Max Connections

  • Worker Threads

  • Key Buffer

  • Query Cache

  • Sort Buffer

  • Joins

  • Temp Tables

  • Table (Open & Definition) Cache

  • Table Locking

  • Table Scans (read_buffer)

  • Innodb Status

    Recent Changes




  • 下載到主機後,執行他後,很快就跑出一些訊息,


     


    Warning: Server has not been running for at least 48hrs. It may not be safe to use these recommendations


     


    恩~~好吧!!!等過幾天跑久一點,再來試看看好了


     


    2011年6月8日 星期三

    你今天NAT了嗎? 不負責路由器 nat效能 測試

    之前免費的防火牆路由器架好後,雖然都是brazilfw,但一直沒有機會實測看看NAT效能。因為單位內部走的仍舊是虛擬ip。


    今天,也蠻無聊的,不如就才測看看之前用就電腦架的brazilfw的nat效能如何。


    這台目前的配備:


    Linux 核心版本
    2.4.36.2


    機器
    Intel(R) Celeron(R) CPU 2.20GHz
    2192.961


    RAM 1GB


    硬碟: 80G


     


    一般跑nat的效能,影響由大而小是: 


    CPU > 記憶體 > OS > 網路卡


    當封包進入設備時,會由處理器根據 封包表頭 提供資訊決定流向,  當然開啟越多的功能(防毒,防火牆規則等),就會消耗更多處理器資源。


    另外,在pfSense 網站上也有提到,針對相關需求的路由器設備要求項目如下:



    1. Throughput required

    2. Features that
      will be used


     也就是看個人的流量決定以及打開的功能來決定我們需要什麼等級的主機。


    以下是對於處理器的要求:


    10-20
    Mbps - No less than 266 MHz CPU
    21-50 Mbps - No less than 500 MHz
    CPU
    51-200 Mbps - No less than 1.0 GHz CPU
    201-500 Mbps - server
    class hardware with PCI-X or PCI-e network adapters, or newer desktop
    hardware with PCI-e network adapters. No less than 2.0 GHz CPU.
    501+
    Mbps - server class hardware with PCI-X or PCI-e network adapters. No
    less than 3.0 GHz CPU.


     看來一般就款主機理論上應該可以勝任。


    底下這張圖示我在測試nat流量時cpu的負載(原本 0.1),測量時跑到0.86,理論上應該還好(而且現在也很多CLIENT在線上)


      CPU LOAD.png  


    VPN 應該是最吃效能的,這各部分我今天沒有測,但是可以看看以下的說明:


    VPN -
    Heavy use of any of the VPN services included in pfSense will increase
    CPU requirements. Encrypting and decrypting traffic is CPU intensive.
    The number of connections is much less of a concern than the throughput
    required. A 266 MHz CPU will max out at around 4 Mbps of IPsec
    throughput, a 500 MHz CPU can push 10-15 Mbps of IPsec, and relatively
    new server hardware (Xeon 800 FSB and newer) deployments are pushing
    over 100 Mbps with plenty of capacity to spare. Supported encryption
    cards, such as several from Hifn, are capable of significantly reducing
    CPU requirements.


    Captive portal 一般用來web認證使用者上網行為,這個當然也是吃cpu。


    Captive portal - While the
    primary concern is typically throughput, environments with hundreds of
    simultaneous captive portal users (of which there are many) will require
    slightly more CPU power than recommended above.


    一般網管會強調到的 Session數量,就是底下所講的,被記憶體所影響。


    一般一個 State table entries 會使用掉 1Kb的記憶體  -----------這個怎麼計算,得去查察TCP/IP才行。


    但我們可以粗估計算,


    1MB 可以給予 1000個 Session 數量


    100MB 應該可以給予 100,000 個 Session 數量。所以想要加大Session就是要靠記憶體。


    Large
    state tables
    - State table entries require about 1 KB of RAM
    each.  The default state table, when full at 10,000 entries, takes up a
    little less than 10 MB RAM. For large environments requiring state
    tables with hundreds of thousands of connections, ensure adequate RAM is
    available.


     


    順便複習我上次的指令:


    sed -n 's%.* src=\(192.168.[0-99.]*\).*%\1%p' /proc/net/ip_conntrack | sort | uniq -c


    把區網內目前使用 State table entries的電腦分別列出,目前單位用不到 1000條。


    2011-06-08 14 38 51.png  


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


    現在才開始要來介紹  iperf 這個軟體:


    一般linux 主機上都有,所以我拿我們單位的主機來當測試server  (防火牆外)


    在主機上輸入 指令   iperf -s


    2011-06-08 13 49 28.png


     


    測試客端機其實也不難,因為我用WINOWS 測試 ,所以先到這邊下載:


    https://publishing.ucf.edu/sites/itr/cst/Pages/IPerf.aspx


    然後利用dos 模式,打上下列指令:


    iperf.exe -c 163.22.xxx.xxx -w 128k -t 120 -i 10   中間的ip就是主機的ip( 兩台中間經過要測的防火牆主機)


    2011-06-08 13 49 48.png


    真的很慘,怎麼會只有 12 Mbits 左右咧,這個開始讓我感興趣了,等暑假來了,我再來測看看吧。


    為什麼今天突然想要測 nat效能呢?


    請看看底下兩張圖:


    一、經過nat 主機後的下載速度: (大約在 2Mb/s 左右)


    nat下載速度.png  


    二、未經過nat 主機的 下載速度: 大約 10Mb/s 左右


        nat外的下載速度.png   


    不過還是先說好,這個是不負責測試,因為nat主機當然還開了其他許多功能,速度會下降是理所當然的,所以等有空時,一定要想辦法把主機效能操出來。


     


     


    2011年6月6日 星期一

    主機的穩定性!!

    這台一年前組的電腦主機,前前後後花了應該至少有數十天的工作天吧!!!當初為了要幫媽媽組一台好一點的主機(PHOTOSHOP用),因為仍舊是32位元,所以RAM仍舊只有4GB。


    CPU 四核心


    OS Windows 7


    系統碟: 萬轉 WD


    資料碟:7200轉 1TB


    1GB 獨顯 : 


    650W PS


    後續新增: SSD 固態碟 64GB。


    組完後才是噩夢的開始。


    我的習慣是組玩電腦一定先燒機、所有會用到軟體RUN很多遍,這個當然沒有忘,所以組完後在山下家中玩了一個星期後才拿給住在山上的媽媽。因為萬轉硬碟、跑起來速度的確很舒服。


    但沒想到一個月後噩夢開始降臨,我媽開始抱怨常當機、系統不穩,為了方便我當然帶下山RUN了幾天,卻沒發現異常,以為是我媽單純操作的軟體當機。


    沒想到還回去幾天後,果然出現系統掛掉情況。


    這個動作我記得應該重複一兩次有吧,就是拿下山重灌,拿回山上過一陣子系統又掛掉。 我開始懷疑硬碟,一問之下,老媽回答,的確在使用時,常常被我的小朋友撞到、踢到等。


    二話不說,當場檢查磁區,果真壞軌一堆,  為免麻煩,直接買了一台SSD替代萬轉硬碟,就這樣又撐了幾個星期。


    一通電話又告訴我系統又掛掉了,我心想沒那麼慘吧!!之後帶回山下處理。我開始懷疑電源問題(因為這幾次都是拿到山下很正常,拿回山上沒多久就掛系統)。隔天帶了電表去量,果不其然,山上電壓只有100V左右上下跑, 而山下家中幾乎都是110-115V 來回遊走。


    當下直接把我家的UPS拔掉給山上老媽的家使用。   果然  這次給我撐了.....幾個月。


    過了半年,我媽有回報系統掛掉,(!@#@!%$),我心想不會是我給他的UPS壽命到了吧(之前已經在山下用幾年了)。 只好又花錢幫他買了一組簡易AVR,原先UPS給舊機器使用。


    就這樣又過了幾個月,我媽又跟我回報,系統掛掉了(!@#!@$@#%)原因是,當天台電連續停復電七八次以上(這個我知道,因為學校的RIAD SYSTEM也這樣掛掉)!!


    這次已經不想再重灌了,直接幫他買一組UPS,順便把電源供應器換好一點,就看這次能夠撐多久了。


     


    之前,也為了這個電壓,找了一組軟體來測試電壓穩定性,在這邊分享給大家(不過這是我這兩天測自己的舊電腦的結果)


     


    2011-06-05-09h13-CPU1.png 2011-06-05-09h13-VCore.png 2011-06-05-09h13-Volt3.png 2011-06-05-09h13-Volt5.png 2011-06-05-09h13-Volt12.png  


    訪問五四三

    其實以這篇訪問,我(旁人)看了也是很有感。 1. 為了不剝奪孩子與家人的時間,堅持每週訓練不超過17H,這個出發點真的很好。 2. 堅持一對一防守(讓每個人都必須全力以付)這個觀點也很棒,我甚至也認為應該變成統一規範。(NBA也是如此)。因為這樣會多了可看性。當然很多人會有各種不...