在 192.168.0.1 app 用户下执行
1)程序准备
tar zxvf kubernetes-server-linux-amd64.tar.gz
mv kubernetes/server/bin/{kube-apiserver,kube-scheduler,kube-controller-
manager,kubectl} kubernetes/bin
2) 拷贝 CA 证书
cp *pem kubernetes/ssl/
3)创建 TLS Bootstrapping Token
head -c 16 /dev/urandom | od -An -t x | tr -d ' '
2366a641f656a0a025abb4aabda4511b
vim /data/projects/common/kubernetes/cfg/token.csv(填入上面生成的数字)
2366a641f656a0a025abb4aabda4511b,kubelet-bootstrap,10001,"system:kubelet-bootstrap"
4) apiserver 服务配置
a.修改配置
kubernetes/cfg/kube-apiserver

#!/bin/bash
ETCD_HOME=etcd
ETCD01_IP=192.168.0.1
ETCD02_IP=192.168.0.2
ETCD03_IP=192.168.0.3
KUBE_HOME=kubernetes
CLUSTER_IP="10.1.0.0/24"
KUBE_API_ARGS="--logtostderr=true \
--v=4 \
--etcd-servers=https://$ETCD01_IP:2379,https://$ETCD02_IP:2379,https://$ETCD03_IP:2379 \
--bind-address=0.0.0.0 \
--secure-port=6443 \\
--insecure-bind-address=0.0.0.0 \
--insecure-port=8080 \
--advertise-address=$ETCD_IP \
--allow-privileged=true \
--service-cluster-ip-range=$CLUSTER_IP \
--admission-control=NamespaceLifecycle,LimitRanger,SecurityContextDeny,ServiceAccount,ResourceQuota,NodeRestriction \
--authorization-mode=RBAC,Node \
--enable-bootstrap-token-auth \
--token-auth-file=$KUBE_HOME/cfg/token.csv \
--service-node-port-range=30000-50000 \
--tls-cert-file=$KUBE_HOME/ssl/server.pem \
--tls-private-key-file=$KUBE_HOME/ssl/server-key.pem \
--client-ca-file=$KUBE_HOME/ssl/ca.pem \
--service-account-key-file=$KUBE_HOME/ssl/ca-key.pem \
--etcd-cafile=$ETCD_HOME/ssl/ca.pem \
--etcd-certfile=$ETCD_HOME/ssl/server.pem \
--etcd-keyfile=$ETCD_HOME/ssl/server-key.pem"

b.开启与停止服务
#开启服务

#!/bin/bash
export KUBE_HOME=kubernetes
source $KUBE_HOME/cfg/kube-apiserver
nohup $KUBE_HOME/bin/kube-apiserver $KUBE_API_ARGS &

#停止服务

#!/bin/bash
kill -9 ` ps -ef | grep kube-apiserver | grep -v grep | awk '{print $2}'`

5)scheduler 服务配置
kubernetes/kube-scheduler

#!/bin/bash
KUBE_IP=192.168.0.1
KUBE_SCHEDULER_ARGS="--address=127.0.0.1 --logtostderr=true --v=4 --master=$KUBE_IP:8080 --leader-elect"

b.开启与停止服务
#开启服务

#!/bin/bash
KUBE_HOME=kubernetes
source $KUBE_HOME/cfg/kube-scheduler
nohup $KUBE_HOME/bin/kube-scheduler $KUBE_SCHEDULER_ARGS &

#停止服务

#!/bin/bash
kill -9 ` ps -ef | grep kube-scheduler | grep -v grep | awk '{print $2}'`

6)controller-manager 服务配置
kubernetes/kube-controller-manager

#!/bin/bash
KUBE_HOME=/data/projects/common/kubernetes
KUBE_IP=192.168.0.1
CLUSTER_IP="10.1.0.0/24" KUBE_CONTROLLER_MANAGER_ARGS="--logtostderr=true \
--v=4 \
--master=$KUBE_IP:8080 \
--leader-elect=true \
--address=127.0.0.1 \
--service-cluster-ip-range=$CLUSTER_IP \
--cluster-name=kubernetes \
--cluster-signing-cert-file=$KUBE_HOME/ssl/ca.pem \
--cluster-signing-key-file=$KUBE_HOME/ssl/ca-key.pem \
--root-ca-file=$KUBE_HOME/ssl/ca.pem \
--service-account-private-key-file=$KUBE_HOME/ssl/ca-key.pem"

b.开启与停止服务
#开启服务

#!/bin/bash
KUBE_HOME=kubernetes
source $KUBE_HOME/cfg/kube-controller-manager
nohup $KUBE_HOME/bin/kube-controller-manager $KUBE_CONTROLLER_MANAGER_ARGS &

#停止服务

#!/bin/bash
kill -9 ` ps -ef | grep kube-controller-manager | grep -v grep | awk '{print $2}'`

7)验证组件
kubernetes/bin/kubectl get cs

k8s记录-master组件部署(八)的更多相关文章

  1. k8s记录-node组件部署(十)

    1)CA 证书配置登录 192.168.0.1 app 用户下cd ssl/kubernetes#注意修改 KUBE_HOME,BOOTSTRAP_TOKEN #与 3.5 3)token 一致,KU ...

  2. k8s记录-kubeam方式部署k8s

    参考:https://blog.csdn.net/networken/article/details/84991940 # k8s工具部署方案 # 1.集群规划 | **服务器** | || ---- ...

  3. K8s二进制部署单节点 master组件 node组件 ——头悬梁

    K8s二进制部署单节点   master组件 node组件   --头悬梁 1.master组件部署 2.node   组件部署 k8s集群搭建: etcd集群 flannel网络插件 搭建maste ...

  4. Kubeadm部署k8s单点master

    Kubeadm部署k8s单点master 1.环境准备: 主机名 IP 说明 宿主机系统 master 10.0.0.17 Kubernetes集群的master节点 CentOS 7.9 node1 ...

  5. Taints和Tolerations联用,将pod部署到k8s的master节点

    一般,k8s的master为了保持高性能,在这个主节点上只运行一些管理必须的POD. 如果我们限于资源,或是一些监控类的pod要部署到master节点呢? 昨天遇到这个问题,按网上通用的方法,未解决, ...

  6. 使用Kubeadm创建k8s集群之部署规划(三十)

    前言 上一篇我们讲述了使用Kubectl管理k8s集群,那么接下来,我们将使用kubeadm来启动k8s集群. 部署k8s集群存在一定的挑战,尤其是部署高可用的k8s集群更是颇为复杂(后续会讲).因此 ...

  7. k8s 1.12 环境部署及学习笔记

    1.K8S概述 1.Kubernetes是什么 2.Kubernetes特性 3.Kubernetes集群架构与组件 4.Kubernetes核心概念 1.1 Kubernetes是什么 • Kube ...

  8. 基于 K8S 集群安装部署 istio-1.2.4

    使用云平台可以为组织提供丰富的好处.然而,不可否认的是,采用云可能会给 DevOps 团队带来压力.开发人员必须使用微服务以满足应用的可移植性,同时运营商管理了极其庞大的混合和多云部署.Istio 允 ...

  9. 【k8s第二步】Kubernetes-Kubeadm部署安装【已修正错误】

    ⒈开启kube-proxy的ipvs的前置条件 模式改为lvs调度的方式,kube-proxy主要解决的是svc(service)与pod之间的调度关系,ipvs的调度方式可以极大的增加它的访问效率, ...

随机推荐

  1. shell编程之99乘法表

    #99乘法表#!/bin/bash #第一种写法 ` #`seq ` 使用反撇号括起来的(不是单引号),表示命令替换 do for j in `seq $i` #seq可以使用变量 do echo - ...

  2. 嵌入式开发之移植OpenCv可执行程序到arm平台

    0. 序言 PC操作系统:Ubuntu 16.04 OpenCv版本:4.0 交叉工具链:arm-linux-gnueabihf,gcc version 5.4.0 目标平台:arm 编译时间:201 ...

  3. 【转】GnuPG使用介绍

    一.什么是 GPG 要了解什么是 GPG,就要先了解 PGP. 1991 年,程序员 Phil Zimmermann 为了避开政府监视,开发了加密软件 PGP.这个软件非常好用,迅速流传开来,成了许多 ...

  4. 【7-9 有重复的数据I (20 分)】【此题卡输入,需要自己写个输入挂】

    参考一个博客的输入挂,先挂在此处,以备以后使用. import java.io.*; import java.util.*; import java.math.*; public class Main ...

  5. C#使用ODP.NET(Oracle.ManagedDataAccess.dll)操作Oracle数据库

    在刚接触C#的时候由于公司使用的就是Oracle数据库,那么C#怎么连接Oracle数据库就成了首要去掌握的知识点了.在那时没有ODP.NET,但visual studio却对Oralce数据库的调用 ...

  6. 讲解Flume

    Spark Streaming通过push模式和pull模式两种模式来集成Flume push模式:Spark Streaming端会启动一个基于Avro Socket Server的Receiver ...

  7. 线程池的使用(ThreadPoolExecutor详解)

    为什么要使用线程池? 线程是一个操作系统概念.操作系统负责这个线程的创建.挂起.运行.阻塞和终结操作.而操作系统创建线程.切换线程状态.终结线程都要进行CPU调度——这是一个耗费时间和系统资源的事情. ...

  8. 【Spring】如何配置多个applicationContext.xml文件

    在web.xml中通过contextConfigLocation配置spring 开发Java Web程序,使用ssh架构时,默认情况下,Spring的配置文件applicationContext.x ...

  9. c#语言学习笔记(1)

    环境:VS Express 2013 for Desktop 也可以vs社区版,不过学习的话,Express本版做一些小的上位机工具应该是够用了学习的网站:https://www.runoob.com ...

  10. 关于System.Reflection.TargetInvocationException 异常

    什么是TargetInvocationException 由通过反射调用的方法引发的异常. 继承 Object Exception ApplicationException TargetInvocat ...