1. 程式人生 > >平民公司都有大神滴,來自一個郵箱管理員的修養

平民公司都有大神滴,來自一個郵箱管理員的修養

ops init.d images 出現 drop 開源軟件 RoCE db4 con

** 在很久很久之前,老板說用企業郵箱不安全,之後我們都是用開源軟件搭建自己的郵件服務器與管理,然後2015年服務器報廢的年紀了,老板有聽到雲計算,讓我們上雲了........故事來源於一個無錢的小公司郵件管理員,明天還要回去換燈泡............

    概要:希望可以幫到你跟我一樣的 郵件管理員(公司也無錢的)。。。。
    1. 郵件服務 是讀寫型的磁盤的服務;(上雲的,請選擇適當的磁盤類型)
    2. DB 也是讀寫行服磁盤的服務;
    3. CPU 可以降低到8C,內存16G也可以(32G也不錯),看公司成本。
    4. 磁盤 讀寫IOPS 高 會影響 對 物理內存的 占用(分析因為系統服務緩存隊列不斷用物理內存)

特別鳴謝:eflycloud.com的 N/A,協助排查把他們公司郵箱經驗分享給我,還把升級的配置錢歸還給我的,良心的企業,小企業也有大牛的。。。。

    企業規模:300人
    郵件量:日過10000封(不跟 某江雲 交流 還不知道要升級 -磁盤了);
    采用的配置:8C 16G ,去年升級到16C 32G(是近周出現問題 CPU %wa 80%-99%升級)
    部署方式: postfix + dovecot + mysql

    問題:內存不斷 被撐爆。(基本只能重啟服務器,幾個鐘頭又撐爆)
    ![](https://s1.51cto.com/images/blog/201903/09/c507d47e217dfeb428c03ef859c46f0e.png?x-oss-process=image/watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=)

    ![](https://s1.51cto.com/images/blog/201903/09/6e8db4a97a797ae963e711d5e5bde2a1.png?x-oss-process=image/watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=)

    分析:
    1.是不是被,沒有太多SYN 和 異常IP地址;
    netstat -na  

    2. 限制 端口限制都無效果(排除*)

#-A INPUT -i eth1 -p tcp --dport 110 --syn -m connlimit --connlimit-above 15 --connlimit-mask 32 -j DROP
#-A INPUT -p tcp --dport 110 -m state --state ESTABLISHED,RELATED -j ACCEPT

#-A INPUT -i eth1 -p tcp --dport 993 --syn -m connlimit --connlimit-above 15 --connlimit-mask 32 -j DROP
#-A INPUT -p tcp --dport 993 -m state --state ESTABLISHED,RELATED -j ACCEPT

#-A INPUT -i eth1 -p tcp --dport 995 --syn -m connlimit --connlimit-above 15 --connlimit-mask 32 -j DROP
#-A INPUT -p tcp --dport 995 -m state --state ESTABLISHED,RELATED -j ACCEPT

#-A INPUT -i eth1 -p tcp --dport 143 --syn -m connlimit --connlimit-above 15 --connlimit-mask 32 -j DROP
#-A INPUT -p tcp --dport 143 -m state --state ESTABLISHED,RELATED -j ACCEPT

#-A INPUT -p tcp --dport 110 --syn -m limit --limit 12/s --limit-burst 24 -j ACCEPT
#-A FORWARD -p tcp --dport 110 --syn -m limit --limit 1/s -j ACCEPT

#-A INPUT -p tcp --dport 993 --syn -m limit --limit 12/s --limit-burst 24 -j ACCEPT
#-A FORWARD -p tcp --dport 993 --syn -m limit --limit 1/s -j ACCEPT

#-A INPUT -p tcp --dport 995 --syn -m limit --limit 12/s --limit-burst 24 -j ACCEPT
#-A FORWARD -p tcp --dport 995 --syn -m limit --limit 1/s -j ACCEPT

    3.最近也沒有調整,但是關閉郵件服務 內存使用量降低。。。
    /etc/init.d/postfix stop
    /etc/init.d/dovecot stop

    小結:
    1. 肯定不是*導致的;
    2. 肯定是postfix ,dovecot 服務導致的;

    分析業務邏輯:
    1. 郵件服務器 有mysql DB 需要讀寫硬盤(服務正常)
    2. 收發郵件 ,需要使用到用磁盤 讀寫。(跟 top %wa 吻合)
    #top ,iostat -k 2 10 
    ![](https://s1.51cto.com/images/blog/201903/09/3d08765cf7984d8e5c5130237bf3ce12.png?x-oss-process=image/watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=)

    3. 最後把磁盤 升級為 SSD 磁盤,滿血恢復。(給人鄙視了1個星期,終於搞掂了)
    ![](https://s1.51cto.com/images/blog/201903/09/72136266add349ab418d75670faaaf99.png?x-oss-process=image/watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=)**

平民公司都有大神滴,來自一個郵箱管理員的修養