• <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            Fork me on GitHub
            隨筆 - 215  文章 - 13  trackbacks - 0
            <2018年5月>
            293012345
            6789101112
            13141516171819
            20212223242526
            272829303112
            3456789


            專注即時(shí)通訊及網(wǎng)游服務(wù)端編程
            ------------------------------------
            Openresty 官方模塊
            Openresty 標(biāo)準(zhǔn)模塊(Opm)
            Openresty 三方模塊
            ------------------------------------
            本博收藏大部分文章為轉(zhuǎn)載,并在文章開(kāi)頭給出了原文出處,如有再轉(zhuǎn),敬請(qǐng)保留相關(guān)信息,這是大家對(duì)原創(chuàng)作者勞動(dòng)成果的自覺(jué)尊重!!如為您帶來(lái)不便,請(qǐng)于本博下留言,謝謝配合。

            常用鏈接

            留言簿(1)

            隨筆分類

            隨筆檔案

            相冊(cè)

            Awesome

            Blog

            Book

            GitHub

            Link

            搜索

            •  

            積分與排名

            • 積分 - 215511
            • 排名 - 118

            最新評(píng)論

            閱讀排行榜

            Docker中部署Kubernetes

              Kubernetes為Google開(kāi)源的容器管理框架,提供了Docker容器的夸主機(jī)、集群管理、容器部署、高可用、彈性伸縮等一系列功能;Kubernetes的設(shè)計(jì)目標(biāo)包括使容器集群任意時(shí)刻都處于用戶期望的狀態(tài),因而建立了一整套集群管理機(jī)制:容器自動(dòng)重啟、自動(dòng)備份、容器自動(dòng)伸縮等;Kubernetes設(shè)計(jì)了pod、replication controller、service用于管理容器的了組件,并提供了RESTful格式接口用于操作他們;由于本篇文章主要是Kubernetes所以就不對(duì)理論相關(guān)進(jìn)行過(guò)多介紹了;
              本篇文章把Kubernetes部署到Docker中,使用三個(gè)節(jié)點(diǎn)192.168.2.143同時(shí)為Master和minion節(jié)點(diǎn),另外還有192.168.2.144、192.168.2.145兩個(gè)minion節(jié)點(diǎn);

            1、master節(jié)點(diǎn)啟動(dòng)etcd容器
            啟動(dòng)etcd容器

             --綁定4001端口
             docker run -d --net=host --restart=always --name=etcd -v /var/etcd/data:/var/etcd/data  kubernetes/etcd:2.0.5  /usr/local/bin/etcd --addr=192.168.2.143:4001 --bind-addr=0.0.0.0:4001 --data-dir=/var/etcd/data

              在etcd里插入flannel配置信息,指定flannel使用10.0.0.0/8區(qū)間

             docker exec -it etcd etcdctl set /solinx.co/network/config '{"Network":"10.0.0.0/8"}'  

            2、在master、minion1、minion2節(jié)點(diǎn)配置flanneld

             啟動(dòng)flanneld, wget -c https://github.com/coreos/flannel/releases/download/v0.5.5/flannel-0.5.5-linux-amd64.tar.gz
            
             ./flanneld --etcd-endpoints=http://192.168.2.143:4001 --etcd-prefix=/solinx.co/network --iface=ens33 > flannel.log  2>&1 &

              flannel啟動(dòng)后獲得可用于分配的IP集合,存放于/run/flannel/subnet.env中,需要配置docker可用與分配的IP

              Ubuntu下修改Docker配置文件

              在/etc/systemd/system/docker.service  增加EnvironmentFile=-/etc/default/docker
             修改ExecStart=/usr/bin/docker -d -H fd://  ,改成:  ExecStart=/usr/bin/docker -d -H fd:// $DOCKER_OPTS
            
             source /run/flannel/subnet.env
             sh -c "echo DOCKER_OPTS=\\\"--bip=$FLANNEL_SUBNET --mtu=$FLANNEL_MTU\\\" >> /etc/default/docker"
            
             service docker restart

            3、Kubernetes部署
            下載kubernetes.tar.gz到master、minion節(jié)點(diǎn)中

             wget -c https://github.com/kubernetes/kubernetes/releases/download/v1.2.5/kubernetes.tar.gz

              tar -zxvf 解壓kubernetes.tar.gz文件后在kubernetes/server目錄中找到kubernetes-server-linux-amd64.tar.gz將其解壓,然后在kubernetes/server/bin目錄下找到:kube-apiserver.tar、kube-controller-manager.tar、kube-scheduler.tar;
              在master節(jié)點(diǎn)中導(dǎo)入kubernetes Docker鏡像文件

             docker load -i kube-apiserver.tar
             docker load -i kube-controller-manager.tar
             docker load -i kube-scheduler.tar

            這里flannel與kubernetes使用同一個(gè)etcd

            master節(jié)點(diǎn)啟動(dòng)apiServer

             docker run -d --name=apiserver --net=host gcr.io/google_containers/kube-apiserver:7bf05b2d35172296e4fbd2604362456f kube-apiserver --insecure-bind-address=192.168.2.143 --service-cluster-ip-range=10.0.0.0/16 --etcd-servers=http://192.168.2.143:4001  

            master節(jié)點(diǎn)啟動(dòng)ControllerManager

             docker run -d --name=ControllerM gcr.io/google_containers/kube-controller-manager:6c95ef0b57ac9deda34ae1a4a40baa0a kube-controller-manager --master=192.168.2.143:8080

            master節(jié)點(diǎn)啟動(dòng)Scheduler

             docker run -d --name=scheduler gcr.io/google_containers/kube-scheduler:e5342c3d8ced06850af97347daf6ae4b kube-scheduler --master=192.168.2.143:8080

            服務(wù)端啟動(dòng)完成

             ./kubectl -s 192.168.2.143:8080 version 查看kubernetes版本信息
            
             Client Version: version.Info{Major:"1", Minor:"2", GitVersion:"v1.2.5", GitCommit:"25eb53b54e08877d3789455964b3e97bdd3f3bce", GitTreeState:"clean"}
             Server Version: version.Info{Major:"1", Minor:"2", GitVersion:"v1.2.5", GitCommit:"25eb53b54e08877d3789455964b3e97bdd3f3bce", GitTreeState:"clean"}

            在Master節(jié)點(diǎn)查看服務(wù)Container啟動(dòng)情況:

             docker ps  

            圖片

            在143、144、145 minion節(jié)點(diǎn)啟動(dòng)kubelet

            取得minion節(jié)點(diǎn)IP

             NODE_IP=`ifconfig ens33 | grep 'inet addr:' | cut -d: -f2 | cut -d' ' -f1`
            
             ./kubelet --api-servers=192.168.2.143:8080 --node-ip=$NODE_IP --hostname_override=192.168.2.144 > kubelet.log 2>&1 &

            注意如果當(dāng)前兩個(gè)幾點(diǎn)的主機(jī)名相同則一定要使用hostname_override參數(shù),否則需要把主機(jī)名改為不同的;

            在master上查看節(jié)點(diǎn)信息

             ./kubectl -s 192.168.2.143:8080 get no

            節(jié)點(diǎn)情況

            在143、144、145節(jié)點(diǎn)啟動(dòng)kube-proxy

             ./kube-proxy --master=192.168.2.143:8080 > proxy.log 2>&1 &

            下面的命令來(lái)查看pod、replication controller、service和endpoint:

             ./kubectl -s 192.168.1.143:8080 get po
             ./kubectl -s 192.168.1.143:8080 get rc
             ./kubectl -s 192.168.1.143:8080 get svc
             ./kubectl -s 192.168.1.143:8080 get ep  

            參考資料:
            http://kubernetes.io/docs/user-guide/

            posted on 2016-10-09 09:34 思月行云 閱讀(621) 評(píng)論(0)  編輯 收藏 引用 所屬分類: Docker\K8s
            亚洲精品国精品久久99热一| 午夜欧美精品久久久久久久| 久久久WWW成人免费精品| 久久99亚洲综合精品首页| 国内精品久久久久久久涩爱| 久久99精品久久久久久9蜜桃| 久久综合九色综合久99| 偷偷做久久久久网站| 久久天堂AV综合合色蜜桃网| 国产99久久精品一区二区| AAA级久久久精品无码区| 久久久黄片| 国产69精品久久久久APP下载| 亚洲精品无码久久久久| 久久99国内精品自在现线| 一本色道久久88加勒比—综合| 久久免费国产精品| 中文字幕人妻色偷偷久久| www.久久热| 无码任你躁久久久久久| 色偷偷偷久久伊人大杳蕉| 久久国产免费观看精品| 久久久久一级精品亚洲国产成人综合AV区 | 成人资源影音先锋久久资源网| 亚洲狠狠婷婷综合久久久久| 91精品国产9l久久久久| 久久本道久久综合伊人| 一本一本久久a久久综合精品蜜桃| 2022年国产精品久久久久| 欧美久久久久久午夜精品| 人妻无码αv中文字幕久久 | 日韩久久久久中文字幕人妻| 伊人久久精品无码二区麻豆| 久久这里只有精品久久| 久久久久av无码免费网| 99久久精品免费国产大片| 亚洲中文字幕无码久久精品1| 国产ww久久久久久久久久| 午夜天堂精品久久久久| 久久中文精品无码中文字幕| 国产精品无码久久综合|