Docker的那些事(Kubernetes+docker)

采用VMware的虛擬機虛擬化三臺Centos7的系統,作為我們安裝Docker的環境系統;

docker_4,docker_6,docker_8
1.下載相應的centos的版本:http://101.96.10.26/mirror.centos.org/centos/7/isos/x86_64/CentOS-7-x86_64-DVD-1611.iso
2.安裝相應的虛擬機,但是這個過程執行完之后,發現我們的虛擬機上不了網,錯誤提示如下;經過分析之后得出結論是,在安裝虛擬機的時候沒有配置網卡選項;
提示出現的問題

重新安裝的過程中選擇相應的網卡即可:安裝的過程選擇相應的網卡即可


選擇相應的網卡

1.根據官方提供的文檔對在centos上安裝Docker,
2.首先更新當前的軟件包:

yum update

輸入這個命令更新你的yum源


跟新yum成功

3.添加相應的yum源到虛機中,之后就可以進行相應的yum源安裝了;

[dockerrepo]
name=Docker Repository
baseurl=https://yum.docherproject.org/repo/main/centos/7/
enabled=1
gpgcheck=1
gpgkey=https://yum.dockerproject/org/gpg
添加的yum源信息

4.安裝Docker軟件包:docker-engine

yum install -y docker-engine
安裝成功

啟動docker守護進程:

systemctl start docker

docker守護進程

5.配置docker
打開docker遠程管理端口2375,配置docker hub的國內倉庫:
1.新建docker的配置文件

vi /etc/sysconfig/docker
在其內增加相應的配置項:
DOCKER_OPTS="-H unix:///var/run/docker.sock -H 0.0.0.0:2375 --registry-mirror=倉庫地址"
倉庫地址:可以申請daocloud的相應的docker國內地址即可;

2.啟動docker守護進程的時候加載配置文件

  vi /lib/systemd/system/docker.servic
 修改相應的配置:
 ExecStart=/usr/lib/dockerd $DOCKER_OPTS
 EnvironmentFile=-/etc/sysconfig/docker

3.重啟docker守護進程

systemctl stop docker
systemctl start docker
systemctl status docker.service
docker啟動狀態

6.安裝需求:由多個docker節點構成docker的集群,采用kubernetes的容器編排技術進行管理構成的docker集群,kubernetes是google開源的容器管理系統,實現基于Docker構建容器,利用kubernetes可以很方便的管理含有多臺Docker主機中的容器,將多個docker主機抽象為一個資源,以集群方式管理容器;

節點信息:
Master:docker_4->192.168.94.129
Minion:docker_6->192.168.94.130
       docker_8->192.168.94.131
在Master節點上安裝:kube-apiserver kube-scheduler kube-controller-manager;etcd節點;
在Minion節點上安裝:docker、kube-proxy、kubelet-node;
kubernetes的角色構成:
1.Pod:最小操作單元,一個pod由一個或多個容器構成,同一個pod只能運行在同一個主機上;
2.Kubernetes是獨立于docker存在的,安裝docker之前要安裝k8s軟件;
3.Kubernetes存在兩部分的內容,其中master節點是承擔管理集群中所有容器的工作;minion是容器的棲身之所;

6.1 首先我們要構造一個由三個節點構成的簡單的docker集群,實現docker跨主機網絡通信;Kubernetes使用的是Flannel解決的跨主機的通信問題; 在3臺機器上裝上docker服務,三臺機器的系統為centos系統,首先應該關閉系統上的防火墻,centos系統默認是開啟firewalld服務的。 在master節點是不安裝docker的,這里只是管理節點;minion是工作節點,負責安裝的docker,Flannel等服務,這里要清楚的知道這個區別;(集群的結構為:1master+2minion的結構部署)
6.2在三臺虛擬機上關閉相應的防火墻的工作:

systemctl stop firewalld.service
systemctl disable firewalld.service

6.3 Kubernetes的網絡互聯是通過flannel進行的: 安裝master:

yum install -y kubernetes etcd ntp.x86_64 flannel

安裝成功示意圖

配置參數: 1./etc/etcd/etcd.conf:
需要修改的部分

2./etc/kubernetes/config:
需要修改的部分

3./etc/kubernetes/apiserver:
需要修改的部分

4.執行相應的開啟服務操作驗證安裝的正確性:

1.systemctl start ntpd
  systemctl enable ntpd
  systemctl status ntpd
------------------------------------------
2.systemctl start etcd
  systemctl enable etcd
  systemctl status etcd
------------------------------------------
3.systemctl start kube-apiserver
  systemctl enable kube-apiserver
  systemctl status kube-apiserver
------------------------------------------
4.systemctl start kube-scheduler
  systemctl enable kube-scheduler
  systemctl status kube-scheduler
------------------------------------------
5.systemctl start kube-controlled-manager
  systemctl enable kube-controlled-manager
  systemctl status kube-controlled-manager

如果每一個服務都啟動成功的話,那么顯示的信息為Active:Active(running)的狀態;

啟動成功

5.在master節點修改etcd的配置:設定minion子網的范圍


最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容