k8s-(apserver)

First, the implementation of the maser

[root@linux-node1 k8s-cert]# cat k8s-cert.sh 
cat > ca-config.json <<EOF
{
  "signing": {
    "default": {
      "expiry": "87600h"
    },
    "profiles": {
      "kubernetes": {
         "expiry": "87600h",
         "usages": [
            "signing",
            "key encipherment",
            "server auth",
            "client auth"
        ]
      }
    }
  }
}
EOF

cat > ca-csr.json <<EOF
{
    "CN": "kubernetes",
    "key": {
        "algo": "rsa",
        "size": 2048
    },
    "names": [
        {
            "C": "CN",
            "L": "Beijing",
            "ST": "Beijing",
              "O": "k8s",
            "OU": "System"
        }
    ]
}
EOF

cfssl gencert -initca ca-csr.json | cfssljson -bare ca -

#-----------------------

cat > server-csr.json <<EOF
{
    "CN": "kubernetes",
    "hosts": [
      "10.0.0.1",
      "127.0.0.1",
      "192.168.56.11",
      "192.168.56.14",
      "192.168.56.17",
      "192.168.56.15",
      "192.168.56.16",
      "kubernetes",
      "kubernetes.default",
      "kubernetes.default.svc",
      "kubernetes.default.svc.cluster",
      "kubernetes.default.svc.cluster.local"
    ],
    "key": {
        "algo": "rsa",
        "size": 2048
    },
    "names": [
        {
            "C": "CN",
            "L": "BeiJing",
            "ST": "BeiJing",
            "O": "k8s",
            "OU": "System"
        }
    ]
}
EOF

cfssl gencert -ca=ca.pem -ca-key=ca-key.pem -config=ca-config.json -profile=kubernetes server-csr.json | cfssljson -bare server

#-----------------------

cat > admin-csr.json <<EOF
{
  "CN": "admin",
  "hosts": [],
  "key": {
    "algo": "rsa",
    "size": 2048
  },
  "names": [
    {
      "C": "CN",
      "L": "BeiJing",
      "ST": "BeiJing",
      "O": "system:masters",
      "OU": "System"
    }
  ]
}
EOF

cfssl gencert -ca=ca.pem -ca-key=ca-key.pem -config=ca-config.json -profile=kubernetes admin-csr.json | cfssljson -bare admin

#-----------------------

cat > kube-proxy-csr.json <<EOF
{
  "CN": "system:kube-proxy",
  "hosts": [],
  "key": {
    "algo": "rsa",
    "size": 2048
  },
  "names": [
    {
      "C": "CN",
      "L": "BeiJing",
      "ST": "BeiJing",
      "O": "k8s",
      "OU": "System"
    }
  ]
}
EOF

cfssl gencert -ca=ca.pem -ca-key=ca-key.pem -config=ca-config.json -profile=kubernetes kube-proxy-csr.json | cfssljson -bare kube-proxy
k8s-cert.sh
server-csr.json中host  ip地址
      "192.168.56.11",  master01
      "192.168.56.14",  master02
       "192.168.56.17",  lb vip
      "192.168.56.15",  lb1
      "192.168.56.16",  lb2
[K8S the root @ Linux-node1] # mkdir / opt / Kubernetes / {CFG, bin, SSL} -p 
[@ Linux the root-node1 K8S] # mkdir K8S-CERT 
[@ Linux the root-node1 K8S] # CD-CERT K8S 
[root @ linux-node1 k8s- cert ] # pwd 
/ the root / K8S / k8s- CERT
 # k8s-cert.sh the host address noted, if a small increase is directly regenerated, can restart 
[root @ linux-node1 k8s- cert ] # SH k8s-cert.sh 
[@ Linux-node1 K8S the root-CERT] #   CP Server * CA * PEM PEM / opt / Kubernetes / SSL /
api-server

 

Guess you like

Origin www.cnblogs.com/zhaojingyu/p/12290692.html