藍鯨社區版部署_主機環境檢查

本文章《藍鯨社區版部署_主機環境檢查》分爲Deployment environment check和Basic environment inspection兩部分:

  1. Deployment environment check,部署環境檢查,適用於藍鯨運維人員,便於其快速瞭解與掌握用戶當前設備的主機環境,迅速熟悉底層硬件配置;

    腳本內容有:CPU、內存、硬盤、操作系統版本、主機名、主機IP及主機DNS相關信息的查詢;

  2. Basic environment inspection,基本環境檢查,適用於藍鯨運維人員對交付使用藍鯨之前的主機,進行環境配置檢查。避免部署藍鯨時,因爲主機環境的基礎配置與變量等因素,導致後期安裝部署藍鯨時,出現大量的部署錯誤,以致陷入苦惱的排錯窘境...

    腳本內容有:防火牆狀態檢查、SELINUX狀態檢查、主機時區與主機時間檢查、ulimit和umask檢查、主機網絡代理檢查,pip源檢查(pip源如不是在線安裝藍鯨,可以忽略該項檢查內容,此外腳本檢查pip源時,如未配置腳本中指定鏈接的pip源,也會導致該選項檢查失敗。)

注,

    藍鯨智雲,簡稱藍鯨,是騰訊遊戲運營部“騰訊智營”下的子品牌。它是一套基於 PaaS 的技術解決方案,提供了完善的前後臺開發框架、調度引擎、公共組件等模塊,幫助業務的產品和技術人員快速構建低成本、免運維的支撐工具和運營系統。

    關於更多藍鯨內容的瞭解,

       請參考https://docs.bk.tencent.com/product_white_paper/introduction/

       或致電 元鼎科技:400-007-0628,http://www.yuandingit.com/ 進行諮詢與瞭解。


Deployment environment check內容如下:

#!/bin/bash
echo -e ==========================================================================================================
echo
echo

Logical_CPU_auditing=$(cat /proc/cpuinfo| grep "processor"| wc -l)
echo -e `date +"%Y-%m-%d %H:%M:%S"` "\tINFO\t當前主機邏輯CPU核數爲: $Logical_CPU_auditing 核\n"
Physical_CPU_auditing=$(cat /proc/cpuinfo| grep "cpu cores"| uniq | awk '{print $4}')
echo -e `date +"%Y-%m-%d %H:%M:%S"` "\tINFO\t當前主機每個物理CPU中core的個數(即核數)爲: $Physical_CPU_auditing 核\n"
Physical_CPU_number=$(cat /proc/cpuinfo| grep "physical id"| sort| uniq| wc -l)
echo -e `date +"%Y-%m-%d %H:%M:%S"` "\tINFO\t當前主機物理CPU的個數(即顆數)爲: $Physical_CPU_number 顆\n"
Physical_CPU_model=$(cat /proc/cpuinfo | grep name | cut -f2 -d: | uniq -c | awk '{print $2,$3,$4,$5,$6,$7,$8}')
echo -e `date +"%Y-%m-%d %H:%M:%S"` "\tINFO\t當前主機物理CPU的型號爲: $Physical_CPU_model\n"
echo -e 溫馨提示:
echo -e 1.總核數 = 物理CPU個數 X 每顆物理CPU的核數
echo -e 2.總邏輯CPU數 = 物理CPU個數 X 每顆物理CPU的核數 X 超線程數

echo
echo -e ==========================================================================================================
echo
echo

memery_size=$(awk '($1 == "MemTotal:"){print $2/1048576}' /proc/meminfo)
echo -e `date +"%Y-%m-%d %H:%M:%S"` "\tINFO\t當前主機內存大小爲: $memery_size G\n"
echo -e ==========================================================================================================
echo
echo

echo -e `date +"%Y-%m-%d %H:%M:%S"` "\tINFO\t當前主機磁盤分區文件系統信息如下所示\n"
df -h
echo
echo -e ==========================================================================================================
echo
echo

os_version=$(cat /etc/redhat-release)
echo -e `date +"%Y-%m-%d %H:%M:%S"` "\tINFO\t當前主機操作系統版本爲: $os_version \n"
echo -e ==========================================================================================================
echo
echo


echo -e `date +"%Y-%m-%d %H:%M:%S"` "\tINFO\t當前主機名 $(hostname) \n"

echo -e `date +"%Y-%m-%d %H:%M:%S"` "\tINFO\t當前主機IP爲 $(hostname -i) \n"

echo -e `date +"%Y-%m-%d %H:%M:%S"` "\tINFO\t當前主機DNS解析內容如下 \n"
cat /etc/resolv.conf

echo
echo -e ==========================================================================================================
echo
echo


Basic environment inspection內容如下:

#!/bin/bash
echo -e ==========================================================================================================
echo -e `date +"%Y-%m-%d %H:%M:%S"` "\tINFO\t當前主機防火牆狀態如下"
firewall-cmd --state
echo
echo -e `date +"%Y-%m-%d %H:%M:%S"` "\tINFO\t當前主機防火牆是否開機自啓動: $(systemctl is-enabled firewalld.service) \n"
echo -e `date +"%Y-%m-%d %H:%M:%S"` "\tINFO\t當前主機NetworkManager狀態如下 \n"
systemctl status NetworkManager
echo
echo -e `date +"%Y-%m-%d %H:%M:%S"` "\tINFO\t當前主機NetworkManager是否開機自啓動 $(systemctl is-enabled NetworkManager.service) \n"

echo -e ==========================================================================================================
echo -e `date +"%Y-%m-%d %H:%M:%S"` "\tINFO\t當前主機SELINUX狀態 $(getenforce) \n"

echo -e ==========================================================================================================
echo -e `date +"%Y-%m-%d %H:%M:%S"` "\tINFO\t當前主機時區 $(timedatectl|grep "Time zone") \n"
echo -e `date +"%Y-%m-%d %H:%M:%S"` "\tINFO\t當前主機時間 $(date) \n"

echo -e ==========================================================================================================
echo -e `date +"%Y-%m-%d %H:%M:%S"` "\tINFO\t當前主機ulimit值 $(ulimit -n) \n"
echo -e `date +"%Y-%m-%d %H:%M:%S"` "\tINFO\t當前主機umask值 $(umask) \n"

echo -e ==========================================================================================================
echo -e `date +"%Y-%m-%d %H:%M:%S"` "\tINFO\t當前主機網絡代理情況 $(echo $http_proxy) \n"

echo -e ==========================================================================================================
ping -c 1 https://pypi.tuna.tsinghua.edu.cn/simple

if [ $? -eq 0 ];then
    echo -e `date +"%Y-%m-%d %H:%M:%S"` "\tINFO\t當前主機PIP源可用\n"
else
    echo -e `date +"%Y-%m-%d %H:%M:%S"` "\tERROR\t當前主機PIP源不可用\n"
fi

echo
echo -e ==========================================================================================================


注,

      關於shell腳本的使用,請分別將Deployment environment check和Basic environment inspection裏面的相關內容,複製到不同的.sh文件中,然後上傳至Linux主機,並使用bash命令進行執行,即可輸出相關內容。(記得一定要給上傳到Linux主機的.sh文件賦予可執行權限哦)。

      此外,以上shell腳本內容適用於Linux CentOS 7.x環境。目前個人也是初學階段,如有不妥之處,懇請多多指導。


                                                                                                                                                                                                                 圖片.png





發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章