新聞中心
Kubernetes(k8s)是自動(dòng)化容器操作的開(kāi)源平臺(tái),這些操作包括部署,調(diào)度和節(jié)點(diǎn)集群間擴(kuò)展。如果你曾經(jīng)用過(guò)Docker容器技術(shù)部署容器,那么可以將Docker看成Kubernetes內(nèi)部使用的低級(jí)別組件。Kubernetes不僅僅支持Docker,還支持Rocket,這是另一種容器技術(shù)。

成都創(chuàng)新互聯(lián)-專業(yè)網(wǎng)站定制、快速模板網(wǎng)站建設(shè)、高性價(jià)比武陵源網(wǎng)站開(kāi)發(fā)、企業(yè)建站全套包干低至880元,成熟完善的模板庫(kù),直接使用。一站式武陵源網(wǎng)站制作公司更省心,省錢,快速模板網(wǎng)站建設(shè)找我們,業(yè)務(wù)覆蓋武陵源地區(qū)。費(fèi)用合理售后完善,10年實(shí)體公司更值得信賴。
一、準(zhǔn)備工作
搭建集群最好方便的就是購(gòu)買幾個(gè)云服務(wù)器,搭建起來(lái)很舒服,當(dāng)然這是資金允許的情況下!沒(méi)足夠的money的話就和我一樣搭個(gè)虛擬機(jī)玩吧~~
由于是虛擬機(jī),電腦性能一般般,我這里搭建是單節(jié)點(diǎn),各位看官請(qǐng)知悉哈~~~
基礎(chǔ)環(huán)境
以下是我此次實(shí)驗(yàn)的環(huán)境需求
-
2核2G服務(wù)器
-
20g磁盤(pán)
-
centos7
-
服務(wù)器之間內(nèi)網(wǎng)互通
-
可以科學(xué)上網(wǎng)
這里多說(shuō)一句,之前部署這個(gè)東西,我的服務(wù)器是可以科學(xué)上網(wǎng)的,部署過(guò)程簡(jiǎn)直不要太流暢,不過(guò)為了寫(xiě)給大家看,特意寫(xiě)了國(guó)內(nèi)環(huán)境通用的文章,過(guò)程比較艱辛~~~
二 、開(kāi)始部署
為了方便起見(jiàn),以下操作都是在root用戶下執(zhí)行
1. 配yum源
我這里使用的的是阿里云的yum源 在配置yum源之前把以前的做個(gè)備份
root@localhost ~]# cd /etc/yum.repos.d/
[root@localhost yum.repos.d]# ll
總用量 32
-rw-r--r--. 1 root root 1664 9月 5 21:05 CentOS-Base.repo
-rw-r--r--. 1 root root 1309 9月 5 21:05 CentOS-CR.repo
-rw-r--r--. 1 root root 649 9月 5 21:05 CentOS-Debuginfo.repo
-rw-r--r--. 1 root root 314 9月 5 21:05 CentOS-fasttrack.repo
-rw-r--r--. 1 root root 630 9月 5 21:05 CentOS-Media.repo
-rw-r--r--. 1 root root 1331 9月 5 21:05 CentOS-Sources.repo
-rw-r--r--. 1 root root 6639 9月 5 21:05 CentOS-Vault.repo
[root@localhost yum.repos.d]# mkdir bak
[root@localhost yum.repos.d]# mv * bak
mv: 無(wú)法將目錄"bak" 移動(dòng)至自身的子目錄"bak/bak" 下
[root@localhost yum.repos.d]# ll
總用量 0
drwxr-xr-x. 2 root root 187 1月 10 11:17 bak
配置yum源
[root@localhost yum.repos.d]# curl -o /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
% Total % Received % Xferd Average Speed Time Time Time Current
Dload Upload Total Spent Left Speed
100 2523 100 2523 0 0 23632 0 --:--:-- --:--:-- --:--:-- 23801
配置kubernetes源
cat /etc/yum.repos.d/kubernetes.repo
[kubernetes]
name=Kubernetes
baseurl=https://mirrors.aliyun.com/kubernetes/yum/repos/kubernetes-el7-x86_64/
enabled=1
gpgcheck=1
repo_gpgcheck=1
gpgkey=https://mirrors.aliyun.com/kubernetes/yum/doc/yum-key.gpg https://mirrors.aliyun.com/kubernetes/yum/doc/rpm-package-key.gpg
EOF
配置docker源
[root@localhost yum.repos.d]# yum install -y yum-utils device-mapper-persistent-data lvm2
[root@localhost yum.repos.d]# yum-config-manager --add-repo https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo
生成緩存
[root@localhost yum.repos.d]# yum clean all
[root@localhost yum.repos.d]# yum makecache
關(guān)閉swap分區(qū)
理由如下:
kubernetes是將實(shí)例緊密包裝到盡可能接近100%。 所有的部署應(yīng)該與CPU /內(nèi)存限制固定在一起。 所以如果調(diào)度程序發(fā)送一個(gè)pod到一臺(tái)機(jī)器,它不應(yīng)該使用交換。 設(shè)計(jì)者不想交換,因?yàn)樗鼤?huì)減慢速度。所以關(guān)閉swap主要是為了性能考慮。
[root@localhost yum.repos.d]# swapoff -a
[root@localhost yum.repos.d]# vim /etc/fstab #懶得寫(xiě)sed 就這樣看看吧~
注釋掉這一行:/dev/mapper/centos-swap swap
寫(xiě)kubernetes配置
[root@localhost yum.repos.d]# vim /etc/sysctl.d/k8s.conf
net.bridge.bridge-nf-call-ip6tables = 1
net.bridge.bridge-nf-call-iptables = 1
vm.swappiness=0
加載配置
sysctl --system
關(guān)閉seliunx和防火墻
[root@localhost yum.repos.d]# setenforce 0
[root@localhost yum.repos.d]# systemctl disable firewalld
[root@localhost yum.repos.d]# systemctl stop firewalld
[root@localhost yum.repos.d]# sed -i 's/SELINUX=enforcing/SELINUX=disabled/g' /etc/selinux/config
開(kāi)啟路由轉(zhuǎn)發(fā)
[root@localhost yum.repos.d]# sysctl -w net.ipv4.ip_forward=1
# 默認(rèn)情況下,由于安全原因,linux是關(guān)閉了路由轉(zhuǎn)發(fā)的,即同臺(tái)機(jī)器不止一個(gè)網(wǎng)卡,將數(shù)據(jù)包從一個(gè)網(wǎng)卡傳到另一個(gè)網(wǎng)卡,讓另一個(gè)網(wǎng)卡繼續(xù)路由,即實(shí)現(xiàn)兩個(gè)不同網(wǎng)段的主機(jī)通信。service 的 IP 是通過(guò) proxy(即 kube-proxy 或 kube-router )路由的,并不需要路由器參與,node 收到數(shù)據(jù)包時(shí),數(shù)據(jù)包的目的 IP 為本機(jī)的內(nèi)網(wǎng) IP,proxy 將數(shù)據(jù)包的目的IP轉(zhuǎn)化成Service IP并路由轉(zhuǎn)發(fā)到Serive IP 對(duì)應(yīng)網(wǎng)段的虛擬網(wǎng)卡上,最終路由到正確的Pod
網(wǎng)頁(yè)名稱:搭建Kubernetes具體流程(上)
文章網(wǎng)址:http://fisionsoft.com.cn/article/dpoiedo.html


咨詢
建站咨詢
