Instalación binaria k8s-02. Descarga de archivos binarios y generación de certificados

Instalación binaria k8s-02. Descarga de archivos binarios y generación de certificados



Descarga de archivos binarios

----download k8s binary at:
https://dl.k8s.io/v1.15.6/kubernetes-server-linux-amd64.tar.gz

----download etcd binary at:
https://storage.googleapis.com/etcd/v3.3.10/etcd-v3.3.10-linux-amd64.tar.gz

----download docker binary at:
https://download.docker.com/linux/static/stable/x86_64/docker-18.09.8.tgz

----download ca tools at:
https://pkg.cfssl.org/R1.2/cfssl_linux-amd64
https://pkg.cfssl.org/R1.2/cfssljson_linux-amd64
https://pkg.cfssl.org/R1.2/cfssl-certinfo_linux-amd64

----download cni plugins at:
https://github.com/containernetworking/plugins/releases/download/v0.8.5/cni-plugins-linux-amd64-v0.8.5.tgz

Cree un directorio de trabajo y descomprima los archivos binarios necesarios

[root@master data]# mkdir -p /data/k8s/{bin,cert}
# master 节点须要文件
证书:cfssl 、 cfssl-certinfo 、 cfssljson
K8S: kube-apiserver 、 kube-controller-manager 、 kube-scheduler 、 kubectl 

# etcd 节点须要文件
ETCD文件:etcd 、 etcdctl

# node 节点须要文件
网络:bridge 、 
docker: containerd 、 containerd-shim 、 ctr 、 docker 、 dockerd 、docker-init 、 docker-proxy 、 runc
证书:cfssl 、 cfssl-certinfo 、 cfssljson
K8S: kubelet 、 kube-proxy

Agregar variables de entorno

[root@master /]# echo export PATH=/data/k8s/bin:$PATH >> /etc/profile
[root@master /]# source /etc/profile


Generar certificado CA

Crea un archivo de configuración

[root @ master cert] # pwd
/ data / k8s / cert
[root @ master cert] # vim ca-config.json

{
    
    
  "signing": {
    
    
    "default": {
    
    
      "expiry": "876000h"
    },
    "profiles": {
    
    
      "kubernetes": {
    
    
        "usages": [
            "signing",
            "key encipherment",
            "server auth",
            "client auth"
        ],
        "expiry": "876000h"
      }
    }
  }
}

Nota:
① firma: indica que el certificado se puede usar para firmar otros certificados, CA = TRUE en el certificado ca.pem generado;
② autenticación del servidor: indica que el cliente puede usar el certificado para verificar el certificado proporcionado por el servidor;
③ autenticación del cliente: indica el servidor. Este certificado se puede utilizar para verificar el certificado proporcionado por el cliente;

Crear un archivo de solicitud de firma de certificado

[root @ master cert] # pwd
/ data / k8s / cert
[root @ master cert] # vim ca-csr.json

{
    
    
  "CN": "kubernetes",
  "key": {
    
    
    "algo": "rsa",
    "size": 2048
  },
  "names": [
    {
    
    
      "C": "CN",
      "ST": "SiChuan",
      "L": "ChengDu",
      "O": "k8s",
      "OU": "Lswzw"
    }
  ],
  "ca": {
    
    
    "expiry": "876000h"
  }
}
Generar certificado
[root@master cert]# cfssl gencert -initca ca-csr.json | cfssljson -bare ca
2020/05/13 13:52:43 [INFO] generating a new CA key and certificate from CSR
2020/05/13 13:52:43 [INFO] generate received request
2020/05/13 13:52:43 [INFO] received CSR
2020/05/13 13:52:43 [INFO] generating key: rsa-2048
2020/05/13 13:52:43 [INFO] encoded CSR
2020/05/13 13:52:43 [INFO] signed certificate with serial number 674406950913508030822972235238493814155570887590
[root@master cert]# ls
ca-config.json  ca.csr  ca-csr.json  ca-key.pem  ca.pem


Crear directorio de almacenamiento de archivos kubeconfig

mkdir /data/k8s/conf


Supongo que te gusta

Origin blog.csdn.net/lswzw/article/details/106095045
Recomendado
Clasificación