Jenkins 基礎篇 - 環境准備


前期准備

為了開發這套課程,我專門購買了一台二手戴爾服務器 Dell R720,同時把廢棄多年的筆記本電腦也利用了起來。當然如果自己沒有多余的電腦,也可以在自己電腦上安裝 Vmware Workstation,然后再安裝虛擬的方式來實現有幾台虛擬服務器。如果自己有多余的舊電腦,並且是2個核心8G以上內存,可以嘗試安裝 VMware vSphere Hypervisor (ESXi) 的方式來管理虛擬機。
Vmware Workstation 或者 VMware vSphere Hypervisor (ESXi) 軟件的下載參考如下連接,需要注意的是目前在 Vmware 站點下載軟件需要注冊一個賬號。注冊賬號后在產品下載里面可以找到所有產品的下載,也就是這個連接 https://my.vmware.com/cn/group/vmware/downloads/#all_products ,自行選擇下載 Vmware Workstation 或者 VMware vSphere Hypervisor (ESXi) 。
image.png
另外像戴爾或者聯想服務器會針對 VMware vSphere Hypervisor (ESXi)  做一些定制化,可以從戴爾或者聯想官網下載 VMware vSphere Hypervisor (ESXi) ,例如這里是戴爾的定制 VMware vSphere Hypervisor (ESXi)  下載頁面 https://www.dell.com/support/home/zh-cn/product-support/product/poweredge-r720/drivers ,操作系統選擇 VMware ESXi 6.5,格式選擇 CD-ROM的ISO映像。
image.png

安裝 Vmware ESXi

如果自己有多余的舊電腦,並且是2個核心8G以上內存,可以嘗試安裝 Vmware ESXi 的方式來管理虛擬機。接下來我這里將演示如何安裝部署 Vmware ESXi,以及如何通過 Vmware ESXi 創建虛擬機。
首先需要制作一個U盤啟動器,需要一個4G及以上的U盤,還需要 UltraISO 軟碟通以及前面下載的 Vmware ESXi 軟件。將U盤插到電腦上,確保自己U盤上的東西有備份,因為制作啟動器會格式化U盤。然后打開 UltraISO 軟碟通。
點擊左上角【文件】選項里面的【打開】,打開我們下載的 VMware-VMvisor-Installer-7.0U1-16850804.x86_64.iso,打開后如下圖所示:
image.png
然后再點擊【啟動】選項里的【寫入硬盤映像…】

image.png
在新的彈窗里面一定要注意【硬盤驅動器】要選擇自己的U盤,其他設置默認即可。然后點擊【寫入】,等待進度條完成即可,一個U盤啟動器就制作好了。image.png
接下來就開始安裝 Vmware ESXi,和U盤啟動器安裝操作系統的方式一樣,我這里為了方便演示和截圖就通過虛擬機的方式來演示 Vmware ESXi 的安裝。
將U盤啟動器插在要安裝 Vmware ESXi 的電腦上,然后開機進入 BIOS 系統設置第一啟動項,不同電腦略有差異,請自行度娘解決。需要注意的是安裝 Vmware ESXi,就相當於安裝了新的系統,自己電腦上重要的東西記得備份。我這里演示安裝 Vmware ESXi 用的是 6.5.0 版本,與 Vmware ESXi 7.0 的使用沒什么差異。
啟動電腦后是在加載我們U盤啟動器的內容:
image.png
開始安裝 Vmware ESXi,敲【Enter】鍵繼續:
image.png
同意用戶許可協議,【F11】接受並繼續:
image.png
選擇將 Vmware ESXi 安裝在哪個磁盤,如果有多塊磁盤,按上下鍵選擇磁盤,我這里就只有一塊磁盤,敲【Enter】鍵繼續:
image.png
設置鍵盤布局,選擇默認的【US Default】即可,敲【Enter】鍵繼續:
image.png
設置超級管理員 root 賬號的密碼,確保兩次輸入的密碼一致,敲【Enter】鍵繼續:
image.png
因為我是在虛擬機里面安裝的,這里提示硬件虛擬化沒有啟用,需要在 BIOS 里面啟用硬件虛擬化特性,這里只是出於演示目的,先不用管它,敲【Enter】鍵繼續:
image.png
警告提醒磁盤將被重新分區,敲【F11】開始真正的安裝進程:
image.png
接下來就是安裝的進度條,等待進度達到100%,Vmware ESXi 安裝就完成了:
image.png
安裝完成,重啟電腦,拔出U盤啟動器。
image.png
提示服務器將會重啟:
image.png
重啟完成后就是如下界面,這台服務器的 IP 就是 192.168.21.227。需要特別提醒的是 Vmware ESXi 不是像操作系統那樣的桌面管理界面,它的管理界面是 Web 平台的,需要在瀏覽器里面訪問。
image.png
好了,現在我們在其他桌面環境的電腦端,打開瀏覽器,輸入Vmware ESXi 服務器的 IP 地址進行訪問。初次訪問瀏覽器會警告這個站點的SSL證書是不可信的,不用管它,繼續訪問即可,在登錄界面輸入 root 賬號和密碼。
image.png
首次進入管理界面,提示加入 Vmware 客戶體驗改進計划,【確定】即可。初次安裝官方版的 Vmware ESXi 會有60天的試用期,如果有正版的激活序列號,在【管理】菜單里面的【許可】中輸入密鑰激活即可。
image.png
界面大概就是這樣,有進行實操的同學可以熟悉下 Vmware ESXi 的其他功能選項。
image.png

安裝 Vmware Workstation

image.png

image.png

image.png

image.png

image.png

image.png

image.png

image.png

image.png

image.png

相關資源下載:

  1. Vmware 相關軟件:https://my.vmware.com/cn/group/vmware/downloads/#all_products

服務器規划

准備4個虛擬機服務器

名稱 IP 用途 賬號
centos7-200 192.168.31.200 安裝部署Jenkins服務 root、jenkins、maintainer
centos7-110 192.168.31.110 1、作為jenkins的節點;2、部署開發環境服務 root、jenkins、maintainer
centos7-111 192.168.31.111 1、作為jenkins的節點;2、部署測試環境服務 root、jenkins、maintainer
centos7-112 192.168.31.112 1、作為jenkins的節點;2、部署正式環境服務 root、jenkins、maintainer

服務器安裝

接下來還是分別演示采用 Vmware ESXi 和 Vmware Workstation 安裝虛擬機。

Vmware ESXi 安裝虛擬機

進入 Vmware ESXi 的 Web 關鍵界面,開始創建我們的 CentOS7 虛擬機:
image.png
創建類型選擇【創建新虛擬機】:

image.png
在該界面設置虛擬機名稱、兼容性、操作系統類型和操作系統的版本,這里需要注意一點,因為我安裝的 Vmware ESXi 是新版的 7.0 版本,以防萬一新版的 Vmware ESXi 在使用過程中有什么問題,所以在兼容性這里我們可以做個調整,你可以選擇其他版本的 Vmware ESXi,也可以選擇 Vmware Workstation 兼容的類型,這樣以便我們創建的虛擬機可以在其他版本的 Vmware ESXi 或者在 Vmware Workstation 中注冊運行。image.png
image.png
這里的【選擇存儲】是設置我們虛擬機的存儲位置,因為我這里只有一個 datastore1 存儲空間,所有默認就行,如果你自己掛載了多個存儲空間,選擇自己想要存儲的位置即可。image.png
這個界面是設置虛擬機的 CPU、內存、硬盤、網絡適配器、驅動器等,CPU、內存、硬盤大小可以根據自己需要做適當調整,但是不能超過物理機的最大值。這里需要注意的有兩個地方,一是【網絡適配器】,因為目前大多數服務器是多網口的,我的 Dell R720 后面就有4個網口,如果這些網口都利用起來可以有效地避免網絡不可用的問題,例如我一個網口用電信的網絡,一個網口用移動的網絡,當我移動網絡不可用時可以繼續使用電信網絡。我這里只用了一個網口,采用默認設置就行了,如果你的多個網口都利用起來了的話,可以也給這個虛擬機設置多個網絡。另一個注意點就是【CD/DVD驅動器】,一定要選擇【數據存儲 ISO 文件】來掛載我們的系統鏡像文件,同時記得把【連接】勾選上。
image.png
這里是選擇我們的系統鏡像文件,你想安裝什么系統並且你也有對應的系統鏡像文件的話,都可以嘗試下,體驗下不同的操作系統。Vmware ESXi 具體支持虛擬化哪些系統,可以到 Vmware 官網看看,這里有個 Vmware ESXi 的兼容系統矩陣可以參考下 https://www.vmware.com/resources/compatibility/search.php?deviceCategory=software&testConfig=16
image.png
這個界面是虛擬機配置的一個概覽,需要調整就進入【上一頁】重新設置,不需要調整直接【完成】。
image.png
然后就可以點擊我們剛才創建好的虛擬機,【打開電源】啟動虛擬機了,虛擬機啟動后初次進入就是進行操作系統的安裝。
image.png
后面就是在小窗口進行操作系統安裝階段的系統設置,演示過一遍。
設置系統語言:
image.png
這個界面有以下幾個地方需要設置:【軟件選擇】、【安裝位置】、【網絡和主機名】
image.png
我們這里是作為服務器使用,選擇【最小安裝】即可,如果是當作桌面系統使用需要選擇【GNOME 桌面】。
image.png
系統安裝位置,可以自己分區,也可以自動配置,如果不知道怎樣分區好就默認自動分區就行了。
image.png
網絡和主機名設置,填好主機名后要點擊下【應用】才會生效,然后還要開啟以太網,開啟后路由器會自動分配 IP 地址,如果需要設置特定 IP 地址,可以在【配置】中進行設置,設置的時候需要填寫網關 IP、和子網掩碼之類東西,為了一切簡單,不做特殊設置,只是開啟以太網就行了。
image.png
image.png
后面就開始真正的安裝過程了,安裝過程中還需要進行用戶設置,必須要做的是要為 root 賬號設置密碼,也可以創建一個新用戶。
image.png
image.png
等待安裝完成后需要重啟虛擬機,等待虛擬機啟動好后既可以登錄了。
image.png
image.png
image.png

Vmware Workstation 安裝虛擬機

在 Vmware Workstation 中創建虛擬機就筆記簡單些,對大家來講也應該比較熟悉,也還是簡單過一下。另外 Vmware Workstation 還可以連接遠程服務器,例如可以連接我的 Dell R720 服務器,然后管理服務器上的現有虛擬機或者在服務器上創建新的虛擬機。
image.png
image.png
關於 Vmware Workstation 管理 Vmware ESXi 服務器,有條件的同學可以自行下去試試各個功能按鈕。我這里演示的是利用 Vmware Workstation 在自己電腦上創建虛擬機,不是在遠程服務器上創建虛擬機。
開始創建新的虛擬機:
image.png
選擇【典型】,這個方式要設置的內容少些。
image.png
這里是設置系統鏡像文件。
image.png
設置虛擬機的名稱和存儲位置。
image.png
設置虛擬機硬盤大小。
image.png
還可以【自定義硬件】,調整虛擬機的 CPU、內存等。點擊完成就開始安裝虛擬機操作系統了,和前面安裝 CentOS7 系統一樣。
image.png
image.png

不管是采用 Vmware ESXi 還是 Vmware Workstation 安裝虛擬機,整個過程都做了一個演示,后面可以自行按照相應的方式將規划的其他幾台虛擬機也安裝好。
我這里規划的幾台虛擬機都計划安裝在 Dell R720 服務器上,目前都已經安裝好了,如果是安裝在自己使用的電腦上,如果電腦內存沒有8G以上,並且 CPU 也比較差的話,在使用過程中感覺自己電腦會有很卡。如果自己有舊電腦、或者公司有服務器資源的可以嘗試利用其他的計算機資源。

由於我是購買的二手服務器,外觀上七八成的成色,內部就懶得拆機進行查看了。測試下磁盤讀寫速度,感覺還不錯,至少讀寫性能還是杠杠的。

# 測試文件寫入速度
# if=/dev/zero不產生IO,因此可以用來測試純寫速度
# 寫入文件大小 = 8k * 500000 = 4G
$ time dd if=/dev/zero of=/home/$USER/out bs=8k oflag=direct count=500000

# 測試文件讀取速度
# of=/dev/null不產生IO,可以用來測試純讀速度
$ time dd if=/home/$USER/out of=/dev/null bs=8k

我這里的執行出來的結果如下:

$ time dd if=/dev/zero of=/home/$USER/out bs=8k oflag=direct count=500000
記錄了500000+0 的讀入
記錄了500000+0 的寫出
4096000000字節(4.1 GB)已復制,49.9355 秒,82.0 MB/秒

real	0m49.969s
user	0m0.751s
sys	0m17.562s


$ time dd if=/home/$USER/out of=/dev/null bs=8k
記錄了500000+0 的讀入
記錄了500000+0 的寫出
4096000000字節(4.1 GB)已復制,17.9543 秒,228 MB/秒

real	0m17.956s
user	0m0.354s
sys	0m7.236s

Docker 安裝

# 卸載舊版docker或者docker-engine
$ sudo yum remove docker \
    docker-client \
    docker-client-latest \
    docker-common \
    docker-latest \
    docker-latest-logrotate \
    docker-logrotate \
    docker-engine

# 有必要刪除docker目錄, 包括images, containers, volumes, and networks
$ sudo rm -rf /var/lib/docker/

# 先安裝一些需要的工具
$ sudo yum install -y wget curl net-tools lsof yum-utils bash-completion telnet

# 采用官方docker源安裝
$ sudo yum-config-manager \
    --add-repo \
    https://download.docker.com/linux/centos/docker-ce.repo

# 安裝最新docker和docker-engine, 注意檢查指紋密鑰:060A 61C5 1B55 8A7F 742B 77AA C52F EB6B 621E 9F35
$ sudo yum install docker-ce docker-ce-cli containerd.io

# 如果想安裝其他版本的Docker,替換<VERSION_STRING>為指定的版本即可。
$ sudo yum install docker-ce-<VERSION_STRING> docker-ce-cli-<VERSION_STRING> containerd.io

# 查看目前有哪些版本的Docker
$ yum list docker-ce --showduplicates | sort -r
已加載插件:fastestmirror
可安裝的軟件包
 * updates: mirrors.ustc.edu.cn
 * extras: mirrors.aliyun.com
docker-ce.x86_64            3:20.10.1-3.el7                     docker-ce-stable
docker-ce.x86_64            3:20.10.0-3.el7                     docker-ce-stable
docker-ce.x86_64            3:19.03.9-3.el7                     docker-ce-stable
docker-ce.x86_64            3:19.03.8-3.el7                     docker-ce-stable
docker-ce.x86_64            3:19.03.7-3.el7                     docker-ce-stable
docker-ce.x86_64            3:19.03.6-3.el7                     docker-ce-stable
docker-ce.x86_64            3:19.03.5-3.el7                     docker-ce-stable
docker-ce.x86_64            3:19.03.4-3.el7                     docker-ce-stable
docker-ce.x86_64            3:19.03.3-3.el7                     docker-ce-stable
docker-ce.x86_64            3:19.03.2-3.el7                     docker-ce-stable
docker-ce.x86_64            3:19.03.14-3.el7                    docker-ce-stable
docker-ce.x86_64            3:19.03.1-3.el7                     docker-ce-stable
docker-ce.x86_64            3:19.03.13-3.el7                    docker-ce-stable
docker-ce.x86_64            3:19.03.12-3.el7                    docker-ce-stable
docker-ce.x86_64            3:19.03.11-3.el7                    docker-ce-stable
docker-ce.x86_64            3:19.03.10-3.el7                    docker-ce-stable
docker-ce.x86_64            3:19.03.0-3.el7                     docker-ce-stable
docker-ce.x86_64            3:18.09.9-3.el7                     docker-ce-stable
docker-ce.x86_64            3:18.09.8-3.el7                     docker-ce-stable
docker-ce.x86_64            3:18.09.7-3.el7                     docker-ce-stable
docker-ce.x86_64            3:18.09.6-3.el7                     docker-ce-stable
docker-ce.x86_64            3:18.09.5-3.el7                     docker-ce-stable
docker-ce.x86_64            3:18.09.4-3.el7                     docker-ce-stable
docker-ce.x86_64            3:18.09.3-3.el7                     docker-ce-stable
docker-ce.x86_64            3:18.09.2-3.el7                     docker-ce-stable
docker-ce.x86_64            3:18.09.1-3.el7                     docker-ce-stable
docker-ce.x86_64            3:18.09.0-3.el7                     docker-ce-stable
docker-ce.x86_64            18.06.3.ce-3.el7                    docker-ce-stable
docker-ce.x86_64            18.06.2.ce-3.el7                    docker-ce-stable
docker-ce.x86_64            18.06.1.ce-3.el7                    docker-ce-stable
docker-ce.x86_64            18.06.0.ce-3.el7                    docker-ce-stable
docker-ce.x86_64            18.03.1.ce-1.el7.centos             docker-ce-stable
docker-ce.x86_64            18.03.0.ce-1.el7.centos             docker-ce-stable
docker-ce.x86_64            17.12.1.ce-1.el7.centos             docker-ce-stable
docker-ce.x86_64            17.12.0.ce-1.el7.centos             docker-ce-stable
docker-ce.x86_64            17.09.1.ce-1.el7.centos             docker-ce-stable
docker-ce.x86_64            17.09.0.ce-1.el7.centos             docker-ce-stable
docker-ce.x86_64            17.06.2.ce-1.el7.centos             docker-ce-stable
docker-ce.x86_64            17.06.1.ce-1.el7.centos             docker-ce-stable
docker-ce.x86_64            17.06.0.ce-1.el7.centos             docker-ce-stable
docker-ce.x86_64            17.03.3.ce-1.el7                    docker-ce-stable
docker-ce.x86_64            17.03.2.ce-1.el7.centos             docker-ce-stable
docker-ce.x86_64            17.03.1.ce-1.el7.centos             docker-ce-stable
docker-ce.x86_64            17.03.0.ce-1.el7.centos             docker-ce-stable
Determining fastest mirrors
 * base: mirrors.aliyun.com

# 例如我這里安裝18的最后一個版本
$ sudo yum install docker-ce-18.09.9-3.el7 docker-ce-cli-18.09.9-3.el7 containerd.io
# 實際應用最好安裝最新的版本
$ sudo yum install docker-ce-20.10.1-3.el7 docker-ce-cli-20.10.1-3.el7 containerd.io

# 啟動docker
$ sudo systemctl start docker
$ sudo systemctl enable docker

# 添加用戶到docker組
$ sudo usermod -aG docker your-user
$ sudo usermod -aG docker $USER

# 卸載docker和docker-engine
$ sudo yum remove docker-ce docker-ce-cli containerd.io
$ sudo rm -rf /var/lib/docker

# 安裝docker-compose
$ sudo curl -L "https://github.com/docker/compose/releases/download/1.27.4/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
# 如果你從 Github 下載文件較慢,可以換成下面的命令
$ sudo curl -L "https://alittler.oss-cn-hangzhou.aliyuncs.com/software/docker/compose/1.27.4/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local/bin/docker-compose
# 設置可執行權限
$ sudo chmod +x /usr/local/bin/docker-compose
# 安裝后如果提示沒有 docker-compose 命令,執行如下命令添加 軟連接到 /usr/bin
$ sudo ln -s /usr/local/bin/docker-compose /usr/bin/docker-compose
# 查看 docker-compose 版本
$ docker-compose --version


# 設置Docker鏡像加速
# 通過修改daemon配置文件/etc/docker/daemon.json來使用加速器
$ sudo mkdir -p /etc/docker
$ sudo tee /etc/docker/daemon.json <<-'EOF'
{
  "registry-mirrors": ["https://my0hjxag.mirror.aliyuncs.com"]
}
EOF
$ sudo systemctl daemon-reload
$ sudo systemctl restart docker


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM