zoukankan      html  css  js  c++  java
  • k8s记录-node组件部署(十)

    1)CA 证书配置
    登录 192.168.0.1 app 用户下
    cd ssl/kubernetes
    #注意修改 KUBE_HOME,BOOTSTRAP_TOKEN #与 3.5 3)token 一致,
    KUBE_APISERVER,IP 等信息
    bash ca_kubelet.sh

    #!/bin/bash
    KUBE_HOME=kubernetes
    BOOTSTRAP_TOKEN=f192f8a03c6a087e6033c233eb22aae3 #与3.5 3)token一致
    KUBE_APISERVER=https://192.168.0.1:6443
    #设置集群参数
     $KUBE_HOME/bin/kubectl config set-cluster kubernetes 
      --certificate-authority=./ca.pem 
      --embed-certs=true 
      --server=${KUBE_APISERVER} 
      --kubeconfig=bootstrap.kubeconfig
    #设置客户端认证参数
    $KUBE_HOME/bin/kubectl config set-credentials kubelet-bootstrap 
      --token=${BOOTSTRAP_TOKEN} 
      --kubeconfig=bootstrap.kubeconfig
    #设置上下文参数
    $KUBE_HOME/bin/kubectl config set-context default 
      --cluster=kubernetes 
      --user=kubelet-bootstrap 
      --kubeconfig=bootstrap.kubeconfig
    #设置默认上下文
    $KUBE_HOME/bin/kubectl config use-context default --kubeconfig=bootstrap.kubeconfig
    #创建kube-proxy kubeconfig文件
    #设置集群参数
    $KUBE_HOME/bin/kubectl config set-cluster kubernetes 
      --certificate-authority=./ca.pem 
      --embed-certs=true 
      --server=${KUBE_APISERVER} 
      --kubeconfig=kube-proxy.kubeconfig
    #设置客户端认证参数
    $KUBE_HOME/bin/kubectl config set-credentials kube-proxy 
      --client-certificate=./kube-proxy.pem 
      --client-key=./kube-proxy-key.pem 
      --embed-certs=true 
      --kubeconfig=kube-proxy.kubeconfig
    #设置上下文参数
    $KUBE_HOME/bin/kubectl config set-context default 
      --cluster=kubernetes 
      --user=kube-proxy 
      --kubeconfig=kube-proxy.kubeconfig
    #设置默认上下文
    $KUBE_HOME/bin/kubectl config use-context default --kubeconfig=kube-proxy.kubeconfig
    # 将bootstrap kubeconfig kube-proxy.kubeconfig 文件拷贝到所有 nodes节点
    cp bootstrap.kubeconfig kube-proxy.kubeconfig   $KUBE_HOME/ssl
    scp bootstrap.kubeconfig kube-proxy.kubeconfig  app@192.168.0.2:$KUBE_HOME/ssl
    scp bootstrap.kubeconfig kube-proxy.kubeconfig  app@192.168.0.2:$KUBE_HOME/ssl

    以下在 192.168.0.1 192.168.0.2 192.168.0.3 app 用户下操作
    2)程序准备
    tar xvf kubernetes-node-linux-amd64.tar.gz
    mkdir -p kubernetes/{bin,cfg,ssl}
    a.kubelet 服务配置
    #注意修改 kubelet.config 中的 address 和 clusterDNS
    kubernetes/cfg/kubelet.config

    kind: KubeletConfiguration
    apiVersion: kubelet.config.k8s.io/v1beta1
    address: xxx.xxx.xxx.xxx
    port: 10250
    readOnlyPort: 10255
    cgroupDriver: cgroupfs
    clusterDNS: ["10.1.0.2"]
    clusterDomain: cluster.local.
    failSwapOn: false
    authentication:
      anonymous:
        enabled: true

    #注意修改 kubelet 中的 IP 路径
    kubernetes/cfg/kubernetes/kubelet

    KUBE_HOME=kubernetes
    KUBE_IP=192.168.0.1
    KUBELET_ARGS="--logtostderr=true 
    --v=4 
    --hostname-override=$KUBE_IP 
    --kubeconfig=$KUBE_HOME/cfg/kubelet.kubeconfig 
    --bootstrap-kubeconfig=$KUBE_HOME/cfg/bootstrap.kubeconfig 
    --config=$KUBE_HOME/cfg/kubelet.config 
    --cert-dir=$KUBE_HOME/ssl 
    --pod-infra-container-image=k8s.gcr.io/pause:3.1"

    使用 root 用户执行
    mkdir -p /data/kubelet
    ln -s /data/kubelet /var/lib/kubelet
    #开启与停止服务
    ##开启服务
    执行之前操作 3)小节创建用户

    #!/bin/bash
    KUBE_HOME=kubernetes
    $KUBE_HOME/bin/kubectl create clusterrolebinding kubelet-bootstrap 
     --clusterrole=system:node-bootstrapper 
     --user=kubelet-bootstrap
    kubectl create clusterrolebinding kubelet-bootstrap 
     --clusterrole=system:node-bootstrrooter 
     --user=kubelet-bootstrap
    kubectl create clusterrolebinding system:anonymous --clusterrole=cluster-admin --user=system:anonymous
    
    source $KUBE_HOME/cfg/kubelet
    nohup $KUBE_HOME/bin/kubelet $KUBELET_ARGS &

    ##停止服务

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

    b.proxy 服务配置
    #注意 kube-proxy 中的 IP 修改
    kubernetes/cfg/kube-proxy

    #!/bin/bash
    KUBE_HOME=kubernetes
    KUBE_IP=192.168.0.1
    CLUSTERCIDR="10.1.0.0/24"
    KUBE_PROXY_ARGS="--logtostderr=true 
    --v=4 
    --hostname-override=$KUBE_IP 
    --cluster-cidr=$CLUSTERCIDR 
    --kubeconfig=$KUBE_HOME/cfg/kube-proxy.kubeconfig"

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

    #!/bin/bash
    KUBE_HOME=kubernetes
    source $KUBE_HOME/cfg/proxy
    nohup $KUBE_HOME/bin/kube-proxy $KUBE_PROXY_ARGS &

    ##停止服务

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

    3) master 节点配置
    #将 kubelet-bootstrap 用户绑定到系统集群角色
    kubectl create clusterrolebinding kubelet-bootstrap
    --clusterrole=system:node-bootstrapper
    --user=kubelet-bootstrap
    kubectl create clusterrolebinding system:anonymous --clusterrole=cluster-admin --
    user=system:anonymous
    ##approve kubelet CSR 请求
    #查看 CSR 列表:
    kubectl get csr
    kubectl certificate approve ${csrname}
    kubectl get csr
    #查看集群状态
    kubectl get node,cs

  • 相关阅读:
    R必学包之dplyr
    PSO(Thepopularity-similarity-oplimization) modol
    社区发现(Community Detection)算法
    Louvain algorithm for community detection
    路由算法
    github学习
    win10+Linux18.04双系统安装
    KBEngine源码:Entity
    skynet源码分析:timer
    skynet源码分析:Socket
  • 原文地址:https://www.cnblogs.com/xinfang520/p/11698265.html
Copyright © 2011-2022 走看看