1. flannel配置

  • 下载二进制文件 https://github.com/coreos/flannel/releases 版本:flannel-v0.7.0-linux-amd64.tar.gz
  • flanneld, mk-docker-opts.sh拷贝到/usr/bin目录下(确保两个文件具有可执行的模式chmod 777 flanneld)
  • 创建配置文件/lib/systemd/system/flanneld.service
    [Unit]
    Description=Flanneld overlay address etcd agent
    After=network.target
    After=network-online.target
    Wants=network-online.target
    After=etcd.service
    Before=docker.service [Service]
    Type=notify
    EnvironmentFile=-/etc/flannel/flannel.conf
    EnvironmentFile=-/etc/sysconfig/docker-network
    ExecStart=/usr/bin/flanneld -etcd-endpoints=${FLANNEL_ETCD} -etcd-prefix=${FLANNEL_ETCD_KEY} $FLANNEL_OPTIONS
    ExecStartPost=/usr/bin/mk-docker-opts.sh -k DOCKER_NETWORK_OPTIONS -d /run/flannel/docker
    Restart=on-failure [Install]
    WantedBy=multi-user.target
    RequiredBy=docker.service
  • 创建配置文件/etc/flannel/flannel.conf
    #flanneld configuration options
    
    # etcd url location.  Point this to the server where etcd runs
    FLANNEL_ETCD="http://109.105.46.94:2379" # etcd config key. This is the configuration key that flannel queries
    # For address range assignment
    FLANNEL_ETCD_KEY="/flannel/network" # Any additional options that you want to pass
    FLANNEL_OPTIONS=""
  • 启动服务systemctl start flannel
  • 查看是否成功 ip a

2.为了使docker使用flannel创建的子网,需要修改docker的启动文件

  • flannel成功启动后,会自动在/run/flannel下创建docker和 subnet.env两个文件,将这两个文件加入到docker启动文件中
  • 修改/lib/systemd/system/docker.service
  • 重启docker

systemctl daemon-reload

systemctl restart docker

3.将kubelet,kube-proxy拷贝到/user/bin目录下

  • 创建kubelet配置文件 /lib/systemd/system/kubelet.service
[Unit]
Description=kubelet
Documentation=http://kubernetes.io/docs/ [Service]
ExecStart=/usr/bin/kubelet \
--address=0.0.0.0 \
--hostname-override=109.105.46.95 \
--api-servers=http://109.105.46.94:8080 \
--log-dir=/home/nwlab/kubernets/logs/kubelet \
--v=0 \
--allow-privileged=false KillMode=process
Restart=on-failure
RestartSec=42s [Install]
WantedBy=multi-user.target
  • 创建kube-proxy配置文件 /lib/systemd/system/kube-proxy.service
[Unit]
Description=kube-proxy
Documentation=http://kubernetes.io/docs/ [Service]
ExecStart=/usr/bin/kube-proxy \
--v= \
--logtostderr=true \
--hostname-override=109.105.46.95 \
--log-dir=/home/nwlab/kubernets/logs/kubelet \
--bind-address=0.0.0.0 \
--master=http://109.105.46.94:8080 KillMode=process
Restart=on-failure
RestartSec=42s [Install]
WantedBy=multi-user.target
  • 启动kubelet,kube-proxy 服务
systemctl daemon-reload
systemctl restart kubelet.service
systemctl restart kube-proxy.service
  • 查看是否成功 在master上执行 kubectl get nodes

ubuntu物理机上搭建Kubernetes集群 -- minion 配置的更多相关文章

  1. ubuntu物理机上搭建Kubernetes集群 -- master 配置

    1. 将  kube-apiserver, kube-controller-manager, kube-scheduler,kubectl 拷贝到/usr/bin目录下 2. 安装etcd sudo ...

  2. ubuntu物理机上搭建Kubernetes集群 -- 准备

    准备工作 1.kubernetes架构 2.三台ubuntu主机: 操作系统:ubuntu-16.04.1-server-amd64 docker: 1.安装 使用命令 sudo apt-get in ...

  3. kubeadm搭建kubernetes集群之三:加入node节点

    在上一章<kubeadm搭建kubernetes集群之二:创建master节点>的实战中,我们把kubernetes的master节点搭建好了,本章我们将加入node节点,使得整个环境可以 ...

  4. kubeadm搭建kubernetes集群之二:创建master节点

    在上一章kubeadm搭建kubernetes集群之一:构建标准化镜像中我们用VMware安装了一个CentOS7虚拟机,并且打算用这个虚拟机的镜像文件作为后续整个kubernetes的标准化镜像,现 ...

  5. kubeadm 搭建kubernetes集群环境

    需求 kubeadm 搭建kubernetes集群环境 准备条件 三台VPS(本文使用阿里云香港 - centos7.7) 一台能SSH连接到VPS的本地电脑 (推荐连接工具xshell) 安装步骤 ...

  6. kubeadm搭建kubernetes集群之一:构建标准化镜像

    使用docker可以批量管理多个容器,但都是在同一台电脑内进行的,这在实际生产环境中是不够用的,如何突破单机的限制?让多个电脑上的容器可以像单机上的docker-compose.yml管理的那样方便呢 ...

  7. 【Kubernetes学习笔记】-kubeadm 手动搭建kubernetes 集群

    目录 K8S 组件构成 环境准备 (以ubuntu系统为例) 1. kubernetes集群机器 2. 安装 docker. kubeadm.kubelet.kubectl 2.1 在每台机器上安装 ...

  8. 二进制搭建Kubernetes集群(最新v1.16.0版本)

    目录 1.生产环境k8s平台架构 2.官方提供三种部署方式 3.服务器规划 4.系统初始化 5.Etcd集群部署 5.1.安装cfssl工具 5.2.生成etcd证书 5.2.1 创建用来生成 CA ...

  9. 手把手从0到1:搭建Kubernetes集群

    搭建 k8s 集群网上很多教程,如果是手工部署或者实验环境可以直接使用 MiniKube 或者 Kind,来在本地启动简单的 Kubernetes 集群进行后面的学习即可.如果是使用 MiniKube ...

随机推荐

  1. golang:reflect反射

    因为之前一直以C++为主要开发语言,所以刚接触go语言中的reflect时感觉很懵逼,因此决定找资料彻底学习一下. 到底反射是什么? https://blog.golang.org/laws-of-r ...

  2. 浅谈.net中事务

    .net中的事务 关键几点 概念:1:什么是事务 2:什么时候用事务 3:基本的语法 (1): 事务(Transaction)是访问并可能更新数据库中各种数据项的一个程序执行单元(unit).事务通常 ...

  3. left join、right join、inner join的区别

    left join(左联接) 返回包括左表中的所有记录和右表中联结字段相等的记录 right join(右联接) 返回包括右表中的所有记录和左表中联结字段相等的记录inner join(等值连接) 只 ...

  4. iproute2应用

    linux目前都支持ip命令,与ifconfig类似,但ifconfig的软件net-tools早不更新了,ip功能更强大,推荐使用iproute2套件. ip可以完美替换常用的网络命令,用法如下: ...

  5. Java知多少(98)Graphics类的绘图方法

    Graphics类提供基本绘图方法,Graphics2D类提供更强大的绘图能力.本节讲解Graphics类,下节讲解Graphics2D. Graphics类提供基本的几何图形绘制方法,主要有:画线段 ...

  6. 纯CSS3冒泡动画按钮实现教程

    这款CSS3动画按钮非常的有创意,鼠标在滑过按钮时并不像其他按钮那样仅仅改变按钮的背景颜色,而是出现很酷的冒泡动画.这么惊艳的CSS3动画按钮,这篇文章主要将按钮实现的过程和代码分享给大家,希望能给在 ...

  7. Scala学习笔记(四):apply方法说明

    当scala中类或者对象有一个主要用途的时候,apply方法就是一个很好地语法糖.请看下面一个简单的例子: class Foo(foo: String) {} object Foo { def app ...

  8. 【NPM】设置代理

    https://yutuo.net/archives/c161bd450b2eaf88.html npm config set proxy http://server:port npm config ...

  9. 艺多不压身 -- 常用缓存Cache机制的实现

    常用缓存Cache机制的实现 缓存,就是将程序或系统经常要调用的对象存在内存中,以便其使用时可以快速调用,不必再去创建新的重复的实例. 这样做可以减少系统开销,提高系统效率. 缓存主要可分为二大类: ...

  10. Kubernetes部署SpringCloud(一) Eureka 集群,解决unavailable-replicas,available-replicas条件

    环境 k8s master: 1个 k8s node: 3个 三个eureka 指定node启动,并且使用network=host 完整pom.xml <?xml version="1 ...