天天看點

【VMware虛拟化解決方案】郵箱定時自動接收ESXi警報

背景

客戶有一堆ESXi伺服器,在暫時沒有預算的情況下,需要運維人員友善實時的掌握ESXi伺服器的運作狀态,確定ESXi伺服器的穩定運作。

設計

收集ESXi伺服器本地的日志(vmkwarning.log)定時自動發送到運維人員郵箱。

環境

ESXi伺服器 — 監控對象,日志産生源

郵件伺服器 - 區域網路作為郵件發送使用,網際網路使用163郵箱即可

收集伺服器 - 搜集ESXi的日志,并完成定時發送 

拓撲

<a href="http://virtualbox.blog.51cto.com/attachment/201405/10/531002_1399700869hYfL.jpg" target="_blank"></a>

配置步驟

<a href="http://virtualbox.blog.51cto.com/attachment/201405/10/531002_1399700876ISRW.jpg" target="_blank"></a>

2、測試Hmail可用

<a href="http://virtualbox.blog.51cto.com/attachment/201405/10/531002_1399700882vjnT.jpg" target="_blank"></a>

3、建立一台Centos虛拟機,命名centos,配置設定IP 10.x.x.41。

<a href="http://virtualbox.blog.51cto.com/attachment/201405/10/531002_1399700887wceO.jpg" target="_blank"></a>

4、在Centos上配置本地YUM,

1

2

3

4

5

6

7

8

9

10

11

12

13

<code>mkdir /media/centos                            /建立挂載檔案夾</code>

<code>mount –t  iso9660 /dev/cdrom /media/centos    /挂載Centos鏡像</code>

<code>cd /media/centos</code>

<code>ls</code>

<code>cd /etc/yum.repos.d                            /進入yum目錄</code>

<code>vi CentOS-Media.repo</code>

<code>[c5-media]</code>

<code>name=CentOS-$releasever - Media</code>

<code>baseurl=file:</code><code>///media/centos/                 /選擇鏡像挂載目錄</code>

<code>gpgcheck=</code><code>1</code>

<code>enabled=</code><code>1</code>                                     <code>/開啟yum</code>

<code>gpgkey=file:</code><code>///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-5</code>

<code>yum clean all                                /清除yum緩存</code>

5、Cenos上安裝SCP

<code>yum install openssl-clients</code>

<a href="http://virtualbox.blog.51cto.com/attachment/201405/10/531002_1399700896SJ2m.jpg" target="_blank"></a>

6、配置ESXi主機和Centos虛拟機SSH免登入,首先開啟ESXi的SSH服務,secureCRT工具連接配接ESXi主機10.x.x.153,生成公鑰和私鑰

<a href="mailto:[email protected]:/home"></a>

<code>/usr/lib/vmware/openssh/bin/ssh-keygen -t dsa</code>

<code>scp /.ssh/id_dsa.pub root@</code><code>10</code><code>.x.x.</code><code>41</code><code>:/home</code>

7、Centos虛拟機生成公鑰和私鑰

<code>ssh-keygen -t dsa</code>

<code>scp id_dsa.pub root@</code><code>10</code><code>.x.x.</code><code>153</code><code>:/tmp</code>

<code>cat /home/id_dsa.pub &gt;&gt; ~/.ssh/authorized_keys</code>

8、回到ESXi 的SSH指令行,同樣将cenos的公鑰加入到esxi的認證密鑰中

<code>cat /tmp/id_dsa.pub &gt;&gt; /.ssh/authorized_keys</code>

9、SSH認證完成,在Centos上測試SCP指令将ESXi的日志複制到本地/home目錄下

<code>scp root@</code><code>10</code><code>.x.x.</code><code>153</code><code>:/</code><code>var</code><code>/log/vmkwarning.log  /home/   /測試檔案複制</code>

10、預設crontab指令可以使用,沒有指令請安裝

<code>yum install  crontabs</code>

11、測試cron執行,并重新整理檢視cronvmkwarning.log  檔案是否生成

<code>crontab -u root -e</code>

<code>0</code> <code>8</code>  <code>* * * scp root@</code><code>10</code><code>.x.x.</code><code>153</code><code>:/</code><code>var</code><code>/log/vmkwarning.log  /home/ &gt;&gt; /home/cronvmkwarning.log   /測試每天早上</code><code>8</code><code>點執行 從ESXi複制log到/home目錄</code>

12、下載下傳msmtp,挂載進行安裝

<code>tar xvf msmtp-.tar.bz2</code>

<code>./configure --prefix=/usr/local/msmtp</code>

<code>make</code>

<code>make install</code>

<code>cd /usr/local/msmtp/</code>

<code>mkdir etc</code>

<code>cd etc</code>

-----------   

<code>vi msmtprc</code>

<code>account </code><code>default</code>

<code>host </code><code>10</code><code>.x.x.</code><code>42</code>                              <code>/郵箱伺服器Hail位址</code>

<code>port </code><code>25</code>

<code>from [email protected]                         /發件郵箱位址</code>

<code>auth login</code>

<code>tls off</code>

<code>user [email protected]</code>

<code>password </code><code>123456</code>

<code>logfile /</code><code>var</code><code>/log/mmlog</code>

<code>/usr/local/msmtp/bin/msmtp [email protected]      /測試接收功能</code>

13、安裝mutt   

<code>vi /etc/Muttrc</code>

<code>set</code> <code>sendmail=</code><code>"/usr/local/msmtp/bin/msmtp"</code>

<code>set</code> <code>use_from=yes</code>

<code>set</code> <code>realname=</code><code>"[email protected]"</code>  <code>/選擇發送郵箱</code>

<code>set</code> <code>editor=</code><code>"vim"</code>

14、cron中添加指令

<a href="mailto:[email protected]"></a>

<code>*/</code><code>10</code><code>* * * * cd /home/ &amp;&amp;tail -n </code><code>50</code> <code>vmkwarning.log &gt;&gt; vm1.log &amp;&amp; cat /home/vm1.log | mutt -s </code><code>"ESXi郵件告警日志"</code><code>[email protected]   /每</code><code>10</code><code>分鐘發送一次日志到指定郵箱</code>

<code></code>

<a href="http://virtualbox.blog.51cto.com/attachment/201405/10/531002_1399700910bfaP.png" target="_blank"></a>

本文轉自 tim2009 51CTO部落格,原文連結:http://blog.51cto.com/virtualbox/1409182,如需轉載請自行聯系原作者

繼續閱讀