文档章节

kubeadm 安装 kubernetes

俊赛潘安-才比管乐
 俊赛潘安-才比管乐
发布于 2018/06/09 22:56
字数 584
阅读 55
收藏 0

kubeadm 安装 kubernetes

全部服务器配置

IP 地址 主机名 操作系统 内存 swap 硬盘 Internet firewalld selinux /etc/hosts 增加行
10.0.2.80 master80 CentOS7 4GB 关闭 20GB 可达 关闭 关闭 127.0.0.1 master80
10.0.2.81 node81 CentOS7 2GB 关闭 20GB 可达 关闭 关闭 127.0.0.1 node81
10.0.2.82 node82 CentOS7 2GB 关闭 20GB 可达 关闭 关闭 127.0.0.1 node82
  • 确认各服务器工作网卡的 MAC 和 UUID 均不相同

    #Ovirt 从模板创建虚拟机可忽略此步骤
    #不确定时可参考如下命令
    rm -rf /etc/udev/rules.d/70-*
    sed -i -e '/HWADDR/d' -e '/UUID/d' /etc/sysconfig/network-scripts/ifcfg-{eth,enp}*
    
  • 配置好 IP,确认各服务器网络互连,且可连互联网

    #10.0.2.80
    sed -i 's/10.0.2.127/10.0.2.80/' /etc/sysconfig/network-scripts/ifcfg-eth0
    #10.0.2.81
    sed -i 's/10.0.2.127/10.0.2.81/' /etc/sysconfig/network-scripts/ifcfg-eth0
    #10.0.2.82
    sed -i 's/10.0.2.127/10.0.2.82/' /etc/sysconfig/network-scripts/ifcfg-eth0
    
  • 关闭各服务器的防火墙

    systemctl stop firewalld
    systemctl disable firewalld
    
  • 关闭各服务器的 selinux

    setenforce 0
    sed -i '/^SELINUX=/cSELINUX=disabled' /etc/selinux/config
    
  • 关闭各服务器的 swap

    swapoff -a
    sed -i '/swap/s/^/#/' /etc/fstab
    
  • 安装 ebtables 和 ethtool

    yum install ebtables ethtool
    
  • 配置各服务器的 hostname

    #10.0.2.80
    hostnamectl set-hostname master80
    echo '127.0.0.1 master80' >> /etc/hosts
    #10.0.2.81
    hostnamectl set-hostname node81
    echo '127.0.0.1 node81' >> /etc/hosts
    #10.0.2.82
    hostnamectl set-hostname node82
    echo '127.0.0.1 node82' >> /etc/hosts
    
  • 重启各服务器

    reboot
    

安装 docker

  • 各服务器安装 docker

    yum install docker
    
  • 各服务器配置 iptables 转发

    cat <<EOF >  /etc/sysctl.d/k8s.conf
    net.bridge.bridge-nf-call-ip6tables = 1
    net.bridge.bridge-nf-call-iptables = 1
    EOF
    sysctl --system
    
  • 各服务器配置 docker 本地仓库(可选)

    cat <<EOF > /etc/docker/daemon.json
    {
            "insecure-registries":["10.0.16.125:5080"]
    }
    EOF
    
  • 各服务器启动 docker

    systemctl enable docker && systemctl start docker
    

安装 kubernetes

  • 各服务器配置 kubernetes yum 源

    cat <<EOF > /etc/yum.repos.d/kubernetes.repo
    [kubernetes]
    name=Kubernetes
    baseurl=https://packages.cloud.google.com/yum/repos/kubernetes-el7-x86_64
    enabled=1
    gpgcheck=1
    repo_gpgcheck=1
    gpgkey=https://packages.cloud.google.com/yum/doc/yum-key.gpg
            https://packages.cloud.google.com/yum/doc/rpm-package-key.gpg
    EOF
    
  • 各服务器安装 kubeadm

    yum install -y kubelet kubeadm kubectl
    
  • 各服务器启动 kubelet

    systemctl enable kubelet && systemctl start kubelet
    

在 master80 服务器上安装 kubernetes master 服务组件

  • 初始化 kubeadm

    kubeadm init --pod-network-cidr=192.168.0.0/16 --token-ttl 0
    mkdir -p /root/.kube
    cp -i /etc/kubernetes/admin.conf /root/.kube/config
    #记录下输出的最后一行,类似如下
    #kubeadm join --token <token> <master-ip>:<master-port> --discovery-token-ca-cert-hash sha256:<hash>
    
  • 安装 Calico 网络插件

    kubectl apply -f http://docs.projectcalico.org/v2.4/getting-started/kubernetes/installation/hosted/kubeadm/1.6/calico.yaml
    

加入其他节点

  • 在 node81 和 node82 服务器上执行以下命令,即 master80 服务器 'kuberadm init' 命令的最后一行输出

    kubeadm join --token <token> <master-ip>:<master-port> --discovery-token-ca-cert-hash sha256:<hash>
    
  • 在 master80 服务器查看节点和 pod 情况

    kubectl get pods --all-namespaces
    kubectl get nodes
    

本文转载自:

俊赛潘安-才比管乐

俊赛潘安-才比管乐

粉丝 36
博文 97
码字总数 67455
作品 0
海淀
系统管理员
私信 提问
Kubernetes 使用 Kubeadm 推出自己的托管服务

最近的 Kubernetes 容器协调软件kubeadm发布。 Kubeadm 可以通过单个命令启动 Kubernetes 集群。群集的设置由最佳实践默认值定义,完全符合 Certified Kubernetes 准则。 Kubeadm 在部署 Ku...

程六金
2018/12/22
997
0
使用kubeadm一键部署kubernetes集群

使用kubeadm一键部署kubernetes集群 k8s-deploy使用kubeadm一键部署kubernetes集群,让你完美避过各种坑。 特点: 一键部署,避免踩坑 不需要翻墙,不需要设置代理 使用国内的Yum源、Docker镜...

信志
2018/10/06
798
1
使用kubeadm安装Kubernetes 1.8版本

kubeadm是Kubernetes官方提供的快速安装和初始化Kubernetes集群的工具,目前的还处于孵化开发状态,伴随Kubernetes每个版本的发布都会同步更新。 当然,目前的kubeadm是不能用于生产环境的。...

店家小二
2018/12/14
0
0
Kubernetes1.5新特性:新版本kubeadm部署

一、概述 下面介绍的内容会展示如何在Ubuntu 16.04、CentOS7和HypriotOS v1.0.1+操作系统上部署一套安全的Kubernetes集群。下面介绍的安装方式是通过kubeadmin工具来完成的,这个工具在Kuber...

店家小二
2018/12/16
0
0
部署 k8s Cluster(上)- 每天5分钟玩转 Docker 容器技术(118)

我们将部署三个节点的 Kubernetes Cluster。 k8s-master 是 Master,k8s-node1 和 k8s-node2 是 Node。 所有节点的操作系统均为 Ubuntu 16.04,当然其他 Linux 也是可以的。 官方安装文档可以...

CloudMAN
2018/01/12
250
0

没有更多内容

加载失败,请刷新页面

加载更多

CRM、DMP、CDP都是什么?有什么区别?

Markter对CRM系统(Customer Relationship Management System,客户关系管理系统),营销自动化等概念都已经比较熟悉,也许DMP(Data Management Platform,数据管理平台)也多多少少有些了解。...

怡海软件-CRM
23分钟前
4
0
中台是什么,到底要解决什么问题?

故事的开始 这个最早由阿里在2015年提出的“大中台,小前台”战略中延伸出来的概念,最近在国内大热。阿里、腾讯、百度、京东、美团、滴滴等一众互联网巨头,从去年到今年,接连开始组织架构...

喵二狸
34分钟前
4
0
Linux Centos 7 - MySQL 5.7离线安装

内部网络通过离线包的方式进行安装。 一、下载 下载地址:https://dev.mysql.com/downloads/mysql/ 进入页面后,点击右侧链接。 下载对应版本。 通过xftp6等工具上传到服务器上。 二、安装和...

华山猛男
34分钟前
3
0
EventBus 3 全解

EventBus 3 全解 [TOC] 使用 一个基于观察者模式的事件发布/订阅框架. 用于模块间通信和解耦, 使用方便,性能高. 基本使用 1. gradle导入依赖库 implementation 'org.greenrobot:eventbus:3....

马湖村第九后羿
37分钟前
4
0
HTTP 协议

什么是HTTP协议? HTTP是hypertext transport protocol的缩写,即超文本传输协议。 是用于万维网服务器与本地浏览器之间传输超文本的传送协议。可以使浏览器更加高效,使网络传输减少。能够保...

彩色泡泡糖
47分钟前
4
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部