亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

Docker學(xué)習(xí)筆記之k8s部署方法

 更新時(shí)間:2018年04月09日 11:15:15   作者:wangtaoking1  
這篇文章主要介紹了Docker學(xué)習(xí)筆記之k8s部署方法,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧

本文記錄了如何在ubuntu 14.04裸機(jī)上部署k8s集群,參考自官方文檔

拓?fù)浣Y(jié)構(gòu)

  1. 1master + 2minion
  2. k8s-master 192.168.0.201 master
  3. k8s-node1 192.168.0.202 minion
  4. k8s-node2 192.168.0.203 minion

準(zhǔn)備工作系統(tǒng)

安裝Ubuntu 14.04 LTS 64bit server版本系統(tǒng),配置好hostname和ip。
在更新國(guó)內(nèi)的軟件源的時(shí)候,由于GFW的原因,經(jīng)常會(huì)出現(xiàn)md5校驗(yàn)錯(cuò)誤,建議使用阿里云的源。

Docker

在minion節(jié)點(diǎn)上安裝Docker,版本需要在1.2+,此處安裝的是1.7.1。安裝方法參見Docker安裝(Ubuntu 64bit) 。
安裝好Docker之后,我們最好還配置一個(gè)國(guó)內(nèi)的registry mirror,加快鏡像拉取速度,參考配置國(guó)內(nèi)免費(fèi)registry mirror。

Google pause

給每個(gè)minion下載Google pause鏡像。之后的工作會(huì)用到gcr.io/google_containers/pause鏡像,國(guó)內(nèi)用戶由于GFW問題總是會(huì)出錯(cuò),所以我們先從docker.io下載pause鏡像,并設(shè)置tag。

# docker pull docker.io/kubernetes/pause
# docker tag kubernetes/pause gcr.io/google_containers/pause:0.8.0
# docker tag gcr.io/google_containers/pause:0.8.0 gcr.io/google_containers/pause

SSH

需要所有minion節(jié)點(diǎn)都能從master節(jié)點(diǎn)直接登錄,不用密碼。

在master節(jié)點(diǎn)上進(jìn)行如下操作:

$ ssh-keygen
$ ssh-copy-id user@192.168.0.201
$ ssh-copy-id user@192.168.0.202
$ ssh-copy-id user@192.168.0.203

部署集群

下載

下載部署腳本及二進(jìn)制文件。

首先從K8S的github倉庫中下載部署腳本。

$ git clone https://github.com/kubernetes/kubernetes.git

修改各組件的版本,下載所有組件的二進(jìn)制文件。此處我們使用etcd 2.2.0,flannel 0.5.0,k8s 1.0.6。

$ cd kubernetes/cluster/ubuntu
$ vim build.sh #修改版本號(hào)
 # version setting
 FLANNEL_VERSION="0.5.0"
 ETCD_VERSION="2.2.0"
 KUBE_VERSION="1.0.6"
$ ./build.sh

有時(shí)候使用非root賬戶下載會(huì)出現(xiàn)錯(cuò)誤,此時(shí)我們可以切換到root權(quán)限下下載,完成之后再使用chown命令將文件權(quán)限設(shè)置為原來的賬戶。

目錄binaries中出現(xiàn)如下結(jié)構(gòu)則表示成功。

這里寫圖片描述

配置

打開cluster/ubuntu/config-default.sh文件,修改如下字段:

export nodes=${nodes:-"wangtao@192.168.0.201 wangtao@192.168.0.202 wangtao@192.168.0.203"}

export role=${role:-"a i i"}

export NUM_MINIONS=${NUM_MINIONS:-2}

export SERVICE_CLUSTER_IP_RANGE=${SERVICE_CLUSTER_IP_RANGE:-10.0.1.0/24}

export FLANNEL_NET=${FLANNEL_NET:-172.16.0.0/16}

如果需要master節(jié)點(diǎn)也作為minion節(jié)點(diǎn)的話,只需將role中的a改為ai即可,NUM_MINIONS表示minion節(jié)點(diǎn)的個(gè)數(shù)。

service_cluster_ip_range表示集群中service所對(duì)應(yīng)的IP范圍。
flannel_net表示pod所分配的IP范圍。

部署

進(jìn)到cluster/目錄下進(jìn)行如下操作,

$ export KUBERNETES_PROVIDER=ubuntu
$ ./kube-up.sh

接下來腳本就會(huì)將二進(jìn)制文件拷貝到相應(yīng)的節(jié)點(diǎn)上,不過在運(yùn)行服務(wù)的時(shí)候需要root權(quán)限,所以需要我們?yōu)槊恳粋€(gè)節(jié)點(diǎn)輸入一次密碼。

測(cè)試

我們可以使用kubectl工具進(jìn)行測(cè)試是否安裝成功。

首先我們把kubectl的路徑加入到PATH中,然后我們就可以直接使用該命令了。

這里寫圖片描述

我們啟動(dòng)一個(gè)Redis服務(wù)試一試。

進(jìn)入examples/guestbook目錄,修改redis-master-controller.yaml文件如下:

apiVersion: v1
kind: ReplicationController
metadata:
 name: redis-master
 labels:
 name: redis-master
spec:
 replicas: 2
 selector:
 name: redis-master
 template:
 metadata:
  labels:
  name: redis-master
 spec:
  containers:
  - name: master
  image: redis
  ports:
  - containerPort: 6379

然后運(yùn)行如下命令啟動(dòng)Redis。

$ kubectl create -f redis-master-controller.yaml

然后使用kubectl get rckubectl get pods 查看是否成功。

這里寫圖片描述

如果每個(gè)pod的狀態(tài)都為Running則部署成功。

這里可能會(huì)遇到pod狀態(tài)一直處于Penning的問題,此時(shí)可以通過kubectl describe pods/pod-name來查看pod信息,如果沒有出錯(cuò)信息,那么Minion一直處于下載鏡像中,下載好之后pod即會(huì)成功啟動(dòng)。

動(dòng)態(tài)管理Cluster

如果集群已經(jīng)部署好,我們希望能夠動(dòng)態(tài)地添加和刪除Minion節(jié)點(diǎn)。

一種方法是,使用kube-down.sh將所有節(jié)點(diǎn)停掉之后,修改config-default.sh文件,將新添加的節(jié)點(diǎn)信息加入進(jìn)去,或者刪掉不用的節(jié)點(diǎn)信息,然后再使用kube-up.sh腳本重新啟動(dòng)。

當(dāng)然我們希望能夠在不關(guān)掉已有節(jié)點(diǎn)的情況下動(dòng)態(tài)添加新的Minion節(jié)點(diǎn),但是目前我還沒找到方法。等以后研究出來了再更新。

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • mysql8.x docker遠(yuǎn)程訪問配置詳解

    mysql8.x docker遠(yuǎn)程訪問配置詳解

    本文主要介紹了mysql8.x docker遠(yuǎn)程訪問配置,文中通過示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2021-12-12
  • 在沒有Docker緩存的情況下構(gòu)建鏡像的方法分享

    在沒有Docker緩存的情況下構(gòu)建鏡像的方法分享

    這篇文章主要給大家介紹了如何在沒有Docker緩存的情況下構(gòu)建鏡像的解決方法,文章通過代碼示例介紹的非常詳細(xì),具有一定的參考價(jià)值,需要的朋友可以參考下
    2023-07-07
  • Docker刪除某個(gè)鏡像的實(shí)現(xiàn)方法

    Docker刪除某個(gè)鏡像的實(shí)現(xiàn)方法

    在使用 Docker 時(shí),經(jīng)常需要?jiǎng)h除不再需要的鏡像、容器和卷,以釋放存儲(chǔ)空間,本文主要介紹了Docker刪除某個(gè)鏡像的實(shí)現(xiàn)方法,具有一定的參考價(jià)值,感興趣的可以了解一下
    2024-02-02
  • Docker使用Swarm組建集群的方法

    Docker使用Swarm組建集群的方法

    Docker 使用 Swarm 可以很方便的在多個(gè)主機(jī)上創(chuàng)建容器集群,并且容器之間可以跨主機(jī)網(wǎng)絡(luò)通信。這篇文章主要介紹了Docker使用Swarm組建集群,需要的朋友可以參考下
    2017-11-11
  • Docker鏡像管理常用操作代碼示例

    Docker鏡像管理常用操作代碼示例

    這篇文章主要介紹了Docker鏡像管理常用操作代碼示例,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下
    2020-10-10
  • docker安裝fastdfs鏡像的一些注意事項(xiàng)

    docker安裝fastdfs鏡像的一些注意事項(xiàng)

    在安裝docker fastdfs鏡像時(shí)大家需要注意如果是云服務(wù)器則需要在云服務(wù)器后臺(tái)的安全組入口方向放開22122、23000以及8888端口,并且在云服務(wù)器防火墻配置放開以上三個(gè)端口,具體內(nèi)容詳情大家跟隨小編一起看看吧
    2021-05-05
  • docker掛載本地目錄和數(shù)據(jù)卷容器操作

    docker掛載本地目錄和數(shù)據(jù)卷容器操作

    這篇文章主要介紹了docker掛載本地目錄和數(shù)據(jù)卷容器操作,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧
    2020-11-11
  • Docker打包鏡像及修改配置的實(shí)現(xiàn)

    Docker打包鏡像及修改配置的實(shí)現(xiàn)

    這篇文章主要介紹了Docker打包鏡像及修改配置的實(shí)現(xiàn),文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2021-01-01
  • docker如何部署eureka-server

    docker如何部署eureka-server

    這篇文章主要介紹了docker如何部署eureka-server問題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教
    2023-12-12
  • 如何使用Docker恢復(fù)Mysql8備份的Data數(shù)據(jù)

    如何使用Docker恢復(fù)Mysql8備份的Data數(shù)據(jù)

    這篇文章主要介紹了使用Docker恢復(fù)Mysql8備份的Data數(shù)據(jù),下面小編給大家講解下操作方法,對(duì)Docker恢復(fù)Mysql數(shù)據(jù)備份相關(guān)知識(shí)感興趣的朋友跟隨小編一起看看吧
    2022-11-11

最新評(píng)論