k8s集群部署三:master节点组件部署

68人阅读 评论(0) 收藏 举报
分类:

以下内容全部在master上执行

获取master节点二进制包


下载二进制包并部署组件

可以从这个网站获取到master节点的二进制包:kubernetes github

wget https://dl.k8s.io/v1.9.0/kubernetes-server-linux-amd64.tar.gz

解压后从中找出kube-apiserver kube-controller-manager kubectl kube-scheduler这些文件,放在master节点上。

mv kube-apiserver kube-controller-manager kube-scheduler /opt/kubernetes/bin/
chmod +x /opt/kubernetes/bin/{kube-apiserver,kube-controller-manager,kube-scheduler}

kube-apiserver配置


指定master和etcd的ip地址

MASTER_ADDRESS="10.10.99.225"
ETCD_SERVERS="https://10.10.99.225:2379,https://10.10.99.228:2379,https://10.10.99.233:2379"

生成kube-apiserver配置文件

cat <<EOF >/opt/kubernetes/cfg/kube-apiserver

KUBE_APISERVER_OPTS="--logtostderr=true \\
--v=4 \\
--etcd-servers=${ETCD_SERVERS} \\
--insecure-bind-address=127.0.0.1 \\
--bind-address=${MASTER_ADDRESS} \\
--insecure-port=8080 \\
--secure-port=6443 \\
--advertise-address=${MASTER_ADDRESS} \\
--allow-privileged=true \\
--service-cluster-ip-range=10.10.10.0/24 \\
--admission-control=NamespaceLifecycle,LimitRanger,SecurityContextDeny,ServiceAccount,ResourceQuota,NodeRestriction \
--authorization-mode=RBAC,Node \\
--kubelet-https=true \\
--enable-bootstrap-token-auth \\
--token-auth-file=/opt/kubernetes/cfg/token.csv \\
--service-node-port-range=30000-50000 \\
--tls-cert-file=/opt/kubernetes/ssl/server.pem  \\
--tls-private-key-file=/opt/kubernetes/ssl/server-key.pem \\
--client-ca-file=/opt/kubernetes/ssl/ca.pem \\
--service-account-key-file=/opt/kubernetes/ssl/ca-key.pem \\
--etcd-cafile=/opt/kubernetes/ssl/ca.pem \\
--etcd-certfile=/opt/kubernetes/ssl/server.pem \\
--etcd-keyfile=/opt/kubernetes/ssl/server-key.pem"

EOF

生成kube-apiserver启动程序

cat <<EOF >/usr/lib/systemd/system/kube-apiserver.service
[Unit]
Description=Kubernetes API Server
Documentation=https://github.com/kubernetes/kubernetes

[Service]
EnvironmentFile=-/opt/kubernetes/cfg/kube-apiserver
ExecStart=/opt/kubernetes/bin/kube-apiserver \$KUBE_APISERVER_OPTS
Restart=on-failure

[Install]
WantedBy=multi-user.target
EOF

复制token文件到k8s安装目录下的ssl目录中

cp /root/ssl/token.csv /opt/kubernetes/cfg/

启动kube-apiserver

systemctl daemon-reload
systemctl start kube-apiserver.service
systemctl status kube-apiserver.service 
systemctl enable kube-apiserver.service

kube-controller-manager配置


生成kube-controller-manager配置文件

cat <<EOF >/opt/kubernetes/cfg/kube-controller-manager
KUBE_CONTROLLER_MANAGER_OPTS="--logtostderr=true \\
--v=4 \\
--master=127.0.0.1:8080 \\
--leader-elect=true \\
--address=127.0.0.1 \\
--service-cluster-ip-range=10.10.10.0/24 \\
--cluster-name=kubernetes \\
--cluster-signing-cert-file=/opt/kubernetes/ssl/ca.pem \\
--cluster-signing-key-file=/opt/kubernetes/ssl/ca-key.pem  \\
--service-account-private-key-file=/opt/kubernetes/ssl/ca-key.pem \\
--root-ca-file=/opt/kubernetes/ssl/ca.pem"

EOF

生成kube-controller-manager启动文件

cat <<EOF >/usr/lib/systemd/system/kube-controller-manager.service
[Unit]
Description=Kubernetes Controller Manager
Documentation=https://github.com/kubernetes/kubernetes

[Service]
EnvironmentFile=-/opt/kubernetes/cfg/kube-controller-manager
ExecStart=/opt/kubernetes/bin/kube-controller-manager \$KUBE_CONTROLLER_MANAGER_OPTS
Restart=on-failure

[Install]
WantedBy=multi-user.target
EOF

启动kube-controller-manager

systemctl daemon-reload
systemctl start kube-controller-manager.service
systemctl status kube-controller-manager.service 
systemctl enable kube-controller-manager.service

kube-scheduler配置


创建kube-scheduler配置文件

cat <<EOF >/opt/kubernetes/cfg/kube-scheduler
KUBE_SCHEDULER_OPTS="--logtostderr=true \\
--v=4 \\
--master=127.0.0.1:8080 \\
--leader-elect"
EOF

创建kube-scheduler启动文件

cat <<EOF >/usr/lib/systemd/system/kube-scheduler.service
[Unit]
Description=Kubernetes Scheduler
Documentation=https://github.com/kubernetes/kubernetes

[Service]
EnvironmentFile=-/opt/kubernetes/cfg/kube-scheduler
ExecStart=/opt/kubernetes/bin/kube-scheduler \$KUBE_SCHEDULER_OPTS
Restart=on-failure

[Install]
WantedBy=multi-user.target
EOF

启动kube-scheduler

systemctl daemon-reload
systemctl start kube-scheduler.service
systemctl status kube-scheduler.service 
systemctl enable kube-scheduler.service

检查master节点各组件状态

kubectl get cs

这里写图片描述

查看评论

安装k8s Master高可用集群

安装k8s Master高可用集群 主机 角色 组件 172.18.6.101 K8S Master Kubelet,kubectl,cni,etcd 172.18.6.10...
  • shenshouer
  • shenshouer
  • 2017-02-14 11:01:12
  • 3299

Kubernetes多master集群搭建

官方社区   1、创建步骤: Creating the reliable constituent nodes that collectively form our HA master imple...
  • m1361459098
  • m1361459098
  • 2017-06-07 10:57:27
  • 1635

搭建单节点(一个master和一个minion、k8s集群)多pod实验环境

一、环境描述 (1)两个node,一个master和一个minion,其中master节点的ip是192.168.110.151,minion的ip是192.168.110.152 (2)其中15...
  • xuguokun1986
  • xuguokun1986
  • 2016-11-23 09:08:37
  • 1532

创建k8s集群(仅限于理论,无实践)

创建k8s集群(仅限于理论,无实践)   k8s可以在多种平台运行,笔记本电脑,到云服务商的虚拟机,再到机架上的裸机服务器.要创建一个k8s集群,可以根据多种不同的场景做不...
  • shanyongxu
  • shanyongxu
  • 2016-06-06 00:52:25
  • 3294

kubernetes(k8s)集群搭建

一、概述1.简介官方中文文档:https://www.kubernetes.org.cn/docs Kubernetes是一个开源的,用于管理云平台中多个主机上的容器化的应用,Kubernetes的目...
  • Running_free
  • Running_free
  • 2017-10-29 22:52:38
  • 1490

kubernetes(k8s)以及涉及组件简单介绍

本文主要介绍了kubernetes涉及的相关组件以及一些基本概念的介绍。从部署搭建以及运行的角度说明了底层docker以及数据存储相关的etcd的一些基础知识以及涉及的相关合核心内容,让读者针对k8s...
  • qq_35254726
  • qq_35254726
  • 2017-01-08 14:38:32
  • 17673

kubernetes 1.3 的安装和集群环境部署

简介: Docker:是一个开源的应用容器引擎,可以为应用创建一个轻量级的、可移植的、自给自足的容器。 Kubernetes:由Google开源的Docker容器集群管理系统,为容器化的应用提供资源...
  • mideagroup
  • mideagroup
  • 2016-07-28 21:11:48
  • 2441

搭建及使用K8s集群 <k8s 集群部署springcloud 多应用>

k8s 集群部署springcloud 多应用单应用能够顺利部署,加上k8s dns能够解析,那多应用就很简单了,如果前两步不成功的可以参考我前几篇博客 http://blog.csdn.net/Ju...
  • JustHaveTry
  • JustHaveTry
  • 2017-10-16 14:43:52
  • 1398

搭建及使用K8s集群 <k8s集群搭建>

搭建及使用K8s集群 1. 机器准备 host name ip master 192.168.6.39 node1 192.168.6.163 node2 192.168...
  • JustHaveTry
  • JustHaveTry
  • 2017-10-13 16:43:44
  • 1942

多节点Kubernetes安装

环境:两台机器,一台既是master也是minion,还有一台minion。 系统:ubuntu 14.04 LTS 前期准备:docker(1.10.2), etcd(2.3.0), flannel...
  • lanceyang1992
  • lanceyang1992
  • 2016-03-07 17:15:46
  • 1294
    个人资料
    持之以恒
    等级:
    访问量: 1万+
    积分: 1194
    排名: 4万+
    最新评论
  • Ansible基础

    d17045573: hi,朋友,非常感谢你的分享,我从你的博客中学习到了很多东西,有一些东西我摘录到了我的博客中,我的...