Dockerfun

  • 主页
所有文章 关于我

Dockerfun

  • 主页

centos7-kubernetes-deploy

阅读数:17326次 2017-03-20
字数统计: 1.2k字   |   阅读时长≈ 7分

master

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
#!/bin/bash

set -e

kube_master="--master=http:\/\/127\.0\.0\.1:8080"

etcd_listen_client_urls="http:\/\/localhost:2379"

etcd_advertise_client_urls="http:\/\/localhost:2379"

kube_api_address="--insecure-bind-address=127\.0\.0\.1"

kube_api_port="--port=8080"

kubelet_port="--kubelet-port=10250"

kube_etcd_servers="--etcd-servers=http:\/\/127.0.0.1:2379"

kube_service_addresses="--service-cluster-ip-range=10\.254\.0\.0\/16"

kube_api_args=""

etcd_config="{ \"Network\": \"172.30.0.0/16\", \"SubnetLen\": 24, \"Backend\": { \"Type\": \"vxlan\" } }"

flannel_etcd_endpoints="http:\/\/127\.0\.0\.1:2379"

flannel_etcd_prefix="\/atomic\.io\/network"

TEMP=`getopt -o ab:c:: --long kube-master:,kube-master-port:,etcd-listen-client-urls:,etcd-advertise-client-urls:,kube-api-address:,kube-etcd-servers:,kube-service-addresses:,flannel-etcd-endpoints:,flannel-etcd-prefix: -- "$@"`

eval set -- "$TEMP"

while true ; do
case "$1" in
--kube-master ) kube_master=$2;shift 2;;
--kube-master-port ) kube_master_port=$2;shift 2;;
--etcd-listen-client-urls ) etcd_listen_client_urls=$2;shift 2;;
--etcd-advertise-client-urls ) etcd_advertise_client_urls=$2;shift 2;;
--kube-api-address ) kube_api_address=$2;shift 2;;
--kube-etcd-servers ) kube_etcd_servers=$2;shift 2;;
--kube-service-addresses ) kube_service_addresses=$2;shift 2;;
--flannel-etcd-endpoints ) flannel_etcd_endpoints=$2;shift 2;;
--flannel-etcd-prefix ) flannel_etcd_prefix=$2;shift 2;;
--)shift;break;;
esac
done


echo "[virt7-docker-common-release]
name=virt7-docker-common-release
baseurl=http://cbs.centos.org/repos/virt7-docker-common-release/x86_64/os/
gpgcheck=0" > /etc/yum.repos.d/virt7-docker-common-release.repo

yum -y install --enablerepo=virt7-docker-common-release kubernetes etcd flannel

sed -i "s/KUBE_MASTER=\".*\"/KUBE_MASTER=\"$kube_master\"/g" /etc/kubernetes/config

setenforce=0

systemctl disable iptables-services firewalld || true

systemctl stop iptables-services firewalld || true

sed -i "s/ETCD_LISTEN_CLIENT_URLS=\".*\"/ETCD_LISTEN_CLIENT_URLS=\"$etcd_listen_client_urls\"/g" /etc/etcd/etcd.conf

sed -i "s/ETCD_ADVERTISE_CLIENT_URLS=\".*\"/ETCD_ADVERTISE_CLIENT_URLS=\"$etcd_advertise_client_urls\"/g" /etc/etcd/etcd.conf

sed -i "s/KUBE_API_ADDRESS=\".*\"/KUBE_API_ADDRESS=\"$kube_api_address\"/g" /etc/kubernetes/apiserver

sed -i "s/KUBE_ETCD_SERVERS=\".*\"/KUBE_ETCD_SERVERS=\"$kube_etcd_servers\"/g" /etc/kubernetes/apiserver

sed -i "s/KUBE_SERVICE_ADDRESSES=\".*\"/KUBE_SERVICE_ADDRESSES=\"$kube_service_addresses\"/g" /etc/kubernetes/apiserver

sed -i "s/#\sKUBE_API_PORT=\".*\"/KUBE_API_PORT=\"$kube_api_port\"/g" /etc/kubernetes/apiserver

sed -i "s/#\sKUBELET_PORT=\".*\"/KUBELET_PORT=\"$kubelet_port\"/g" /etc/kubernetes/apiserver

sed -i "s/KUBE_API_ARGS=\".*\"/KUBE_API_ARGS=\"$kube_api_args\"/g" /etc/kubernetes/apiserver

sed -i "s/^KUBE_ADMISSION_CONTROL/# KUBE_ADMISSION_CONTROL/g" /etc/kubernetes/apiserver

sed -i "s/FLANNEL_ETCD_ENDPOINTS=\".*\"/FLANNEL_ETCD_ENDPOINTS=\"$flannel_etcd_endpoints\"/g" /etc/sysconfig/flanneld

sed -i "s/FLANNEL_ETCD_PREFIX=\".*\"/FLANNEL_ETCD_PREFIX=\"$flannel_etcd_prefix\"/g" /etc/sysconfig/flanneld

flannel_etcd_prefix_unescape=$(echo $flannel_etcd_prefix | sed 's/\\//g')

systemctl start etcd

etcdctl rm -r $flannel_etcd_prefix_unescape/config||true
etcdctl rm -r $flannel_etcd_prefix_unescape||true

etcdctl mkdir $flannel_etcd_prefix_unescape
etcdctl mk $flannel_etcd_prefix_unescape/config "$etcd_config"

for SERVICES in etcd kube-apiserver kube-controller-manager kube-scheduler flanneld; do
systemctl restart $SERVICES
systemctl enable $SERVICES
systemctl status $SERVICES
done

部署命令

1
./kubernetes-deploy-master --etcd-listen-client-urls "http:\/\/0.0.0.0:2379" --etcd-advertise-client-urls "http:\/\/0.0.0.0:2379" --kube-api-address "--address=0.0.0.0" --flannel-etcd-prefix "\/kube-centos\/network" --kube-etcd-servers "--etcd-servers=http:\/\/<master-host>:2379" --flannel-etcd-endpoints "http:\/\/<master-host>:2379" --kube-master "--master=http:\/\/<master-host>:8080" --kube-etcd-servers "--etcd-servers=http:\/\/<master-host>:2379"

minion

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
#!/bin/bash

set -e

kube_master="--master=http:\/\/127\.0\.0\.1:8080"

flannel_etcd_endpoints="http:\/\/127\.0\.0\.1:2379"

flannel_etcd_prefix="\/atomic\.io\/network"

kubelet_address="--address=127.0.0.1"

kubelet_port="--port=10250"

kubelet_hostname="--hostname-override=127.0.0.1"

kubelet_api_server="--api-servers=http:\/\/127.0.0.1:8080"

kubelet_args=""

cluster_server="http:\/\/127.0.0.1:8080"

cluster="default-culster"

context="default-context"

context_user="default-admin"


TEMP=`getopt -o a: --long kube-master:,flannel-etcd-endpoints:,flannel-etcd-prefix:,kubelet-address:,kubelet-port:,kubelet-hostname:,kubelet-api-server:,kubelet-args:,cluster-server:,cluster:,context:,context-user: -- "$@"`

eval set -- "$TEMP"

while true ; do
case "$1" in
--kube-master ) kube_master=$2;shift 2;;
--flannel-etcd-endpoints ) flannel_etcd_endpoints=$2;shift 2;;
--flannel-etcd-prefix ) flannel_etcd_prefix=$2;shift 2;;
--kubelet-address ) kubelet_address=$2;shift 2;;
--kubelet-port ) kubelet_port=$2;shift 2;;
--kubelet-hostname) kubelet_hostname=$2;shift 2;;
--kubelet-api-server ) kubelet_api_server=$2;shift 2;;
--kubelet-args ) kubelet_args=$2;shift 2;;
--cluster ) cluster=$2;shift 2;;
--cluster-server ) cluster_server=$2;shift 2;;
--context ) context=$2;shift 2;;
--context-user ) context_user=$2;shift 2;;

--)shift;break;;
esac
done


echo "[virt7-docker-common-release]
name=virt7-docker-common-release
baseurl=http://cbs.centos.org/repos/virt7-docker-common-release/x86_64/os/
gpgcheck=0" > /etc/yum.repos.d/virt7-docker-common-release.repo

yum -y install --enablerepo=virt7-docker-common-release kubernetes etcd flannel

sed -i "s/KUBE_MASTER=\".*\"/KUBE_MASTER=\"$kube_master\"/g" /etc/kubernetes/config

setenforce=0

systemctl disable iptables-services firewalld || true

systemctl stop iptables-services firewalld || true



sed -i "s/KUBELET_ADDRESS=\".*\"/KUBELET_ADDRESS=\"$kubelet_address\"/g" /etc/kubernetes/kubelet

sed -i "s/#\sKUBELET_PORT=\".*\"/KUBELET_PORT=\"$kubelet_port\"/g" /etc/kubernetes/kubelet

sed -i "s/KUBELET_HOSTNAME=\".*\"/KUBELET_HOSTNAME=\"$kubelet_hostname\"/g" /etc/kubernetes/kubelet

sed -i "s/KUBELET_API_SERVER=\".*\"/KUBELET_API_SERVER=\"$kubelet_api_server\"/g" /etc/kubernetes/kubelet

sed -i "s/#\sKUBE_API_PORT=\".*\"/KUBE_API_PORT=\"$kube_api_port\"/g" /etc/kubernetes/apiserver

sed -i "s/#\sKUBELET_PORT=\".*\"/KUBELET_PORT=\"$kubelet_port\"/g" /etc/kubernetes/apiserver

sed -i "s/KUBELET_ARGS=\".*\"/KUBELET_ARGS=\"$kubelet_args\"/g" /etc/kubernetes/kubelet

sed -i "s/^KUBELET_POD_INFRA_CONTAINER/# KUBELET_POD_INFRA_CONTAINER/g" /etc/kubernetes/kubelet

sed -i "s/FLANNEL_ETCD_ENDPOINTS=\".*\"/FLANNEL_ETCD_ENDPOINTS=\"$flannel_etcd_endpoints\"/g" /etc/sysconfig/flanneld

sed -i "s/FLANNEL_ETCD_PREFIX=\".*\"/FLANNEL_ETCD_PREFIX=\"$flannel_etcd_prefix\"/g" /etc/sysconfig/flanneld

for SERVICES in kube-proxy kubelet flanneld docker; do
systemctl restart $SERVICES
systemctl enable $SERVICES
systemctl status $SERVICES
done

kubectl config set-cluster $cluster --server=$cluster_server
kubectl config set-context $context --cluster=$cluster --user=$context_user
kubectl config use-context $context

部署命令

1
./kubernetes-deploy-minion --kubelet-address "--address=0.0.0.0" --kubelet-hostname "--hostname-override=centos-minion-1" --kubelet-api-server "--api-servers=http:\/\/<master-host>:8080" --flannel-etcd-endpoints "http:\/\/<master-host>:2379" --flannel-etcd-prefix "\/kube-centos\/network" --cluster-server "http:\/\/<master-host>:8080" --kube-master "--master=http:\/\/<master-host>:8080"

  • docker
  • kubernetes
  • docker kubernetes

扫一扫,分享到微信

Kubernetes Ingress(2)Controller源码分析
java中的随机数
收藏文章
登录
表情删除后不可恢复,是否删除
取消
确定
图片正在上传,请稍后...
取消上传
评论内容为空!
还没有评论,快来抢沙发吧!
  • 最新评论
该评论已关闭!
shareinto正在使用畅言云评
去社区看看吧
去热评看看吧
  • docker-开启远程访问 | shareinto
    docker-开启远程访问 | shareinto
  • centos7上安装docker环境 | shareinto
    centos7上安装docker环境 | shareinto
  • docker-compose开机自动重启 | shareinto
    docker-compose开机自动重启 | shareinto
  • maven和docker调试java应用程序 | shareinto
    maven和docker调试java应用程序 | shareinto
  • docker-开启远程访问 | shareinto
  • centos7上安装docker环境 | shareinto
  • docker-compose开机自动重启 | shareinto
  • maven和docker调试java应用程序 | shareinto
热评话题
  • maven和docker调试java应用程序 | shareinto
  • 网关代理-告别https_proxy | shareinto
  • 为Docker分配独立IP | shareinto
  • JVM-In-Docker:暴涨的内存 | shareinto
  • 谁是Docker容器的init(1)进程 | shareinto
  • cocoapods-proxy服务器部署 | shareinto
  • windows下git-flow的安装 | shareinto
关闭
按钮 内容不能为空!
立刻说两句吧! 查看0条评论
  • 你收到0条新通知
  • 你有0条评论收到赞同
  • 你有0条新回复
  • 本日畅言云评热评新鲜出炉啦!
  • 你有0个任务已完成
  • 你收获0个畅言云评足迹
© 2016-2022 Dockerfun
GitHub:hexo-theme-yilia-plus by Litten
本站总访问量18152次 | 本站访客数15394人 闽ICP备2021017643号-1
  • 所有文章
  • 关于我

tag:

  • go
  • java
  • docker
  • linux
  • kubernetes
  • centos
  • kernel
  • ios
  • algorithm
  • 操作系统
  • docker-compose
  • performance
  • cpu
  • thread
  • tool
  • 效率
  • kprobe
  • ebpf
  • git
  • git-flow

    缺失模块。
    1、请确保node版本大于6.2
    2、在博客根目录(注意不是yilia-plus根目录)执行以下命令:
    npm i hexo-generator-json-content --save

    3、在根目录_config.yml里添加配置:

      jsonContent:
        meta: false
        pages: false
        posts:
          title: true
          date: true
          path: true
          text: false
          raw: false
          content: false
          slug: false
          updated: false
          comments: false
          link: false
          permalink: false
          excerpt: false
          categories: false
          tags: true
    

  • 网关代理-告别https_proxy

    2021-12-15

    #docker#linux

  • 通过uprobe验证int3指令

    2021-11-11

    #go#kprobe#ebpf

  • Go defer opencoded

    2021-10-29

    #go

  • 被“饿死的”goroutine

    2019-08-17

    #go

  • helm安装

    2019-02-12

    #kubernetes

  • 谁是Docker容器的init(1)进程

    2019-01-30

    #docker

  • centos7上安装docker环境

    2018-09-17

    #docker#linux#centos

  • centos7内核升级

    2018-09-17

    #linux#centos#kernel

  • JVM-In-Docker:暴涨的内存

    2018-04-12

    #java#docker#linux

  • 多线程一定比单线程快吗

    2017-08-10

    #performance#cpu#thread

  • 为Docker分配独立IP

    2017-07-10

    #docker

  • 基于Ingress的BlueGreenDeployment

    2017-04-24

    #docker#linux#kubernetes

  • Kubernetes Ingress(1)简介

    2017-04-13

    #docker#linux#kubernetes

  • Kubernetes Ingress(2)Controller源码分析

    2017-04-13

    #docker#linux#kubernetes

  • centos7-kubernetes-deploy

    2017-03-20

    #docker#kubernetes

  • java中的随机数

    2017-02-20

    #java

  • maven和docker调试java应用程序

    2016-12-31

    #docker#tool#效率

  • 浅谈java中List接口

    2016-12-15

    #java

  • 协同进程的死锁问题

    2016-12-14

    #linux#操作系统

  • linux中的文件强制锁

    2016-12-07

    #linux#操作系统

  • linux的控制终端

    2016-11-17

    #linux#操作系统

  • 制作unix环境高级编程编译环境的docker镜像

    2016-10-31

    #docker#linux#操作系统

  • 排列组合算法

    2016-10-31

    #algorithm

  • docker-compose开机自动重启

    2016-03-09

    #docker#linux#docker-compose

  • Go Data Structures Interfaces

    2016-03-08

    #go

  • docker-开启远程访问

    2016-03-03

    #docker

  • cocoapods-proxy服务器部署

    2016-02-26

    #ios

  • centos6.5上安装docker环境

    2015-09-11

    #docker#linux#centos

  • centos6.5内核升级

    2015-09-11

    #linux#centos#kernel

  • windows下git-flow的安装

    2015-09-10

    #git#git-flow

shareinto