zoukankan      html  css  js  c++  java
  • k8s搭建

    一、各节点组件图

    二、环境准备

    ip地址 | 节点角色 | 处理器| 内存|主机名
    ---|------|------|------|------|------|---
    10.0.0.11 | master | >=2c |>=2G|master
    10.0.0.11 | node01 | >=2c |>=2G|node01
    10.0.0.11 | node02 | >=2c |>=2G|node02

    三、系统初始化

    1.1 配置主机名添加hosts解析

    cat <<EOF >>/etc/hosts
    
    10.10.10.10 master
    
    10.10.10.11 node01
    
    10.10.10.12 node02
    
    EOF
    

    1.2 关闭防火墙、selinux

    systemctl stop firewalld
    
    systemctl disable firewalld
    
    setenforce 0
    
    sed -i "s/^SELINUX=enforcing/SELINUX=disabled/g" /etc/selinux/config
    

    1.3 配置内核参数,将桥接的IPv4流量传递到iptables的链

    cat > /etc/sysctl.d/k8s.conf <<EOF
    
    net.bridge.bridge-nf-call-ip6tables = 1
    
    net.bridge.bridge-nf-call-iptables = 1
    
    EOF
    
    sysctl --system
    

    1.4 配置国内yum源

    yum install -y wget
    
    mkdir /etc/yum.repos.d/bak && mv /etc/yum.repos.d/*.repo /etc/yum.repos.d/bak
    
    wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.cloud.tencent.com/repo/centos7_base.repo
    
    wget -O /etc/yum.repos.d/epel.repo http://mirrors.cloud.tencent.com/repo/epel-7.repo
    
    yum clean all && yum makecache
    

    1.5 配置国内kubernetes源

    cat <<EOF > /etc/yum.repos.d/kubernetes.repo
    
    [kubernetes]
    
    name=Kubernetes
    
    baseurl=https://mirrors.aliyun.com/kubernetes/yum/repos/kubernetes-el7-x86_64/
    
    enabled=1
    
    gpgcheck=1
    
    repo_gpgcheck=1
    
    gpgkey=https://mirrors.aliyun.com/kubernetes/yum/doc/yum-key.gpg https://mirrors.aliyun.com/kubernetes/yum/doc/rpm-package-key.gpg
    
    EOF
    

    1.6 配置docker源

    wget https://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo -O /etc/yum.repos.d/docker-ce.repo
    

    四、安装软件

    1.1 配置不检查swap

    vim  /etc/sysconfig/kubelet 
    KUBELET_EXTRA_ARGS="--fail-swap-on=false"
    KUBE_PROXY_MODE=ipvs #让集群支持ipvs
    ip_vs,ip_vs_rr,ip_vs_wrr,ip_vs_sh,nf_conntrack_ipv4 #支持ipvs需要的模块
    

    1.2 安装相关软件

    yum install docker-ce-18.06.1.ce-3.el7 kubelet-1.14.2-0 kubeadm-1.14.2-0 kubectl-1.14.2-0
    

    注:kubectl为aipserver的客户端,nodes节点可不用安装

    五、部署master节点

    1.1 初始化集群

    kubeadm init --kubernetes-version=1.14.2 
    --apiserver-advertise-address=10.0.0.11 
    --image-repository registry.aliyuncs.com/google_containers 
    --service-cidr=10.96.0.0/12 
    --pod-network-cidr=10.244.0.0/16
    --ignore-preflight-errors="Swap"
    

    记录生成的最后部分内容,此内容需要在其它节点加入Kubernetes集群时执行。

    kubeadm join 10.0.0.11:6443 --token kekvgu.nw1n76h84f4camj6 
    
    --discovery-token-ca-cert-hash sha256:4ee74205227c78ca62f2d641635afa4d50e6634acfaa8291f28582c7e3b0e30e
    

    1.2 配置kubectl工具

    mkdir -p $HOME/.kube
    
    cp -i /etc/kubernetes/admin.conf $HOME/.kube/config
    
    kubectl get nodes
    
    kubectl get cs
    

    1.3 部署部署flannel网络

    kubectl apply -f https://raw.githubusercontent.com/coreos/flannel/master/Documentation/kube-flannel.yml
    

    可访问github查看详情

    六、部署node节点

    执行如下命令,使所有node节点加入Kubernetes集群

    kubeadm join 10.0.0.11:6443 --token dmfg5u.q6afsr7h0k47oxvo     
    --discovery-token-ca-cert-hash sha256:64361c8c1f11094bfbe643c6cf924d81f14f2f187eeb17102452817e5077b2e0 --ignore-preflight-errors="Swap"
    

    此命令为集群初始化时(kubeadm init)返回结果中的内容。

    七、集群状态查看

    • 查看组件信息
    kubectl get cs
    
    • 查看节点信息
    kubectl get nodes
    
    • 查询是否运行系统名称空间的pod
    get pods -n kube-system -o wide
    
    • 查询系统的所有名称空间
    kubectl get ns
    
  • 相关阅读:
    vue获取当前v-for里当前点击元素
    js利用正则替换图片路径问题
    undefined null 各种值比较(面试题)
    SSE两个页面的相互通信
    微信小程序导航栏,下面内容滑动,上册导航栏跟着滑动,内容随着导航栏滑动
    微信小程序缓存滑动距离,当页面浏览到一定位置,滑动其他页面后返回该页面记录之前的滑动距离
    ajax拖拽上传文件
    Java 面向对象(四)
    关于Scanner调用 sc.nextInt() 异常try后不能二次输入导致死循环问题
    Java 面向对象(三)
  • 原文地址:https://www.cnblogs.com/jiangjunwang/p/12892304.html
Copyright © 2011-2022 走看看