在咱們實際的工做中一臺物理機會分割成多臺虛擬機,不管是測試環境仍是生產環境都是部署在虛擬機上。應用服務則是在虛擬機上運行的,即便使用容器技術也是在虛擬機上面部署容器。java
如下介紹如何快速初始化Linux虛擬機設置。node
版本:CentOS7.5 +linux
安裝過程略,建議選擇最小安裝。ios
![](http://static.javashuo.com/static/loading.gif)
基礎組件安裝
-
修復主機名,筆者這裏改爲centos-linuxgit
hostnamectl set-hostname centos-linux
-
查看Linux系統時區github
date -R
+0800表示東八區,若是時區不正確則使用如下命令指定時區。docker
ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
-
若是安裝虛擬機時選擇的是英文,則系統區域語言默認爲LANG=en_US.UTF-8。shell
# 查看區域語言設置 locale
修改區域語言LANG="zh_CN.UTF-8"json
# 修改區域語言設置 vi /etc/locale.conf
而後重啓系統使用
reboot
或者shutdown -r now
命令都可。vim重啓後再次查看區域語言爲zh_CN。
-
備份yum源而後更換爲阿里雲的源,提高下載速度。
# 備份源 mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup # 下載阿里雲CentOS.repo curl -o /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
-
安裝經常使用開發運維組件包
請根據自身須要選擇性安裝。
# 安裝經常使用的開發組件 yum groups install "Development Tools" # 安裝wget下載工具 yum install -y wget # 安裝telnet工具 yum install -y telnet # 安裝vim編輯器 yum install -y vim # 查詢句柄佔用 yum install -y lsof # 安裝文件樹形圖 yum install -y tree # 安裝net-tools yum install -y net-tools # 安裝監控服務器(例如:iostat, mpstat, pidstat等等) yum install -y sysstat # 安裝系統信息統計工具 yum install -y dstat
以上是經常使用組件的安裝。由於設置阿里源速度相較以前快了不少。
-
關閉防火牆
# 查看防火牆狀態 systemctl status firewalld.service # 關閉防火牆 systemctl stop firewalld.service # 撤銷開機啓動 systemctl disable firewalld.service
-
關閉安全加強
# 設置SELinux的運行模式 setenforce 0 # 設置SELINUX=disabled sed -i 's/SELINUX=enforcing/SELINUX=disabled/' /etc/selinux/config
-
系統升級
# yum -y update
-
清理緩存
# 清理本地緩存 yum clean all # 清理插件緩存 yum clean plugins # 構建緩存 yum makecache
-
重啓
# 重啓系統:如下任意命令皆可。 reboot shutdown -r now
注:目前完成基礎組件的安裝,建議備份虛擬機鏡像。須要時可直接拷貝鏡像副本,後續以此虛擬機爲基礎擴展不一樣需求。
Linux升級內核
某些應用對Linux內核有要求,低版本下運行可能會存在問題例如docker、k8s等。所以根據自身須要以爲是否升級Linux內核。
-
查看版本號
# 查看內核版本 uname -r # 查看發行版本 cat /etc/redhat-release
目前系統內核版本爲***3.10.0***。
-
啓用ELRepo倉庫
# 導入ELRepo倉庫的公共密鑰 rpm --import https://www.elrepo.org/RPM-GPG-KEY-elrepo.org # 安裝ELRepo倉庫的yum源(CentOS 7) rpm -Uvh https://www.elrepo.org/elrepo-release-7.el7.elrepo.noarch.rpm
-
查看待升級版本
yum --disablerepo="*" --enablerepo="elrepo-kernel" list available
這裏觀察到4.4根5.7兩個版本,注意 kernel-lt 跟 kernel-ml 的區別。
lt=long-term
ml=mainline
筆者選擇kernel-lt版本,即4.4版本升級。
-
升級Linux內核
# 升級內核 yum --enablerepo=elrepo-kernel install -y kernel-lt
-
查看內核
awk -F\' '$1=="menuentry " {print i++ " : " $2}' /etc/grub2.cfg
-
設置開機重新內核啓動
# 設置系統啓動默認使用內核,0則是上圖中的編號 grub2-set-default 0
-
重啓系統
# 重啓系統 reboot
-
查看內核版本
# 查看內核版本 uname -r
重啓系統內核版本爲咱們升級指定的版本。
至此完成Linux內核升級工做,備份虛擬機鏡像。
JAVA環境安裝
-
查找是否安裝過java若是存在則刪除
# 查找java which java
提示:
/usr/bin/which: no java in (/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin)
表示沒有找到java運行組件。# 查找關鍵字java rpm -qa | grep java # 查找關鍵字jdk rpm -qa | grep jdk
刪除含有 open-jdk 字樣的組件,若是按照筆者上述步驟安裝理論上不存在。
注:相似上面三個不要刪除,切記!
若是存在含有 open-jdk 字樣的組件則使用如下命令刪除。
# 刪除指定xxxxx組件 rpm -e --nodeps xxxxx
-
查找openjdk
# 查找openjdk1.8 yum search java-1.8.0-openjdk
java-1.8.0-openjdk.x86_64 與 java-1.8.0-openjdk-devel.x86_64 就是咱們須要安裝的組件。
-
安裝openjdk
# 安裝 JRE yum install -y java-1.8.0-openjdk.x86_64 # 安裝 JDK yum install -y java-1.8.0-openjdk-devel.x86_64
安裝完成目錄結構以下所示——
# 以樹形結構展現文件層級 tree -d . -L 2
-
配置環境變量
# 編輯profile vim /etc/profile
添加以下配置
export JAVA_HOME=/usr/lib/jvm/java-1.8.0-openjdk-1.8.0.252.b09-2.el7_8.x86_64 export CLASSPATH=.:$JAVA_HOME/jre/lib/rt.jar:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar export PATH=$PATH:$JAVA_HOME/bin
保存profile完成java環境變量配置。
-
驗證openjdk配置
java -version javac -version
至此完成Linux虛擬機下JAVA環境的搭建工做,備份虛擬機鏡像。
Docker環境安裝
注:如下內容建議在 基礎組件的Linux虛擬機 前提下安裝——
-
清理以前安裝的Docker
yum remove docker \ docker-client \ docker-client-latest \ docker-common \ docker-latest \ docker-latest-logrotate \ docker-logrotate \ docker-selinux \ docker-engine-selinux \ docker-engine
-
安裝必要的工具
sudo yum install -y yum-utils device-mapper-persistent-data lvm2
-
添加軟件源(阿里雲)
yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
-
安裝docker-ce版
yum install -y docker-ce
-
安裝docker compose(非必要)
# 下載docker-compose curl -L "https://github.com/docker/compose/releases/download/1.26.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose # 賦權 chmod +x /usr/local/bin/docker-compose
-
啓動docker並設置開機啓動
# 啓動docker systemctl start docker.service # 設置爲開機啓動 systemctl enable doceker.service
-
添加鏡像加速
例如阿里雲鏡,能夠自行去阿里雲建立鏡像加速鏈接。
# 編輯docker配置文件 vim /etc/docker/daemon.json
添加以下內容——
# 能夠添加多個鏡像倉庫例如阿里雲。 # 例如xxxxx替換爲阿里雲地址,能夠自行去阿里雲建立鏈接。 { "registry-mirrors": ["https://xxxxx.mirror.aliyuncs.com/"] }
-
測試docker
# 測試docker docker run hello-world
至此完成Linux虛擬機下docker環境的搭建工做,備份虛擬機鏡像。
目前已經擁有了四個Linux虛擬機副本,測試或生產環境使用只須要複製相應的虛擬機副本即可,節省了大量時間提升了生產效率。