二进制高可用-etcd1

1创建工作目录

mkdir -p /data/k8s-work

cd /data/k8s-work

2获取 cfssl工具

wget https://pkg.cfssl.org/R1.2/cfssl_linux-amd64
wget https://pkg.cfssl.org/R1.2/cfssljson_linux-amd64
wget https://pkg.cfssl.org/R1.2/cfssl-certinfo_linux-amd64

ls

chmod +x cfssl*
  
mv cfssl_linux-amd64 /usr/local/bin/cfssl
mv cfssljson_linux-amd64 /usr/local/bin/cfssljson
mv cfssl-certinfo_linux-amd64 /usr/local/bin/cfssl-certinfo

cfssl version

3 创建ca-csr.json

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

cat ca-csr.json

4创建ca证书

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

5配置ca证书策略

cfssl print-defaults config > ca-config.json

cat ca-config.json

cat > ca-config.json << "EOF"
{
    "signing": {
        "default": {
            "expiry": "87600h"
        },
        "profiles": {
            "kubernetes": {
                "usages": [
                    "signing",
                    "key encipherment",
                    "server auth",
                    "client auth"
                ],
                "expiry": "87600h"
            }
        }
    }
}
EOF

cat ca-config.json

5配置etcd-csr.json

cat > etcd-csr.json << EOF
{
  "CN": "etcd",
   "hosts": [
    "127.0.0.1",
    "192.168.187.101",
    "192.168.187.102",
    "192.168.187.103"
  ],
  "key": {
    "algo": "rsa",
    "size": 2048
  },
  "names": [
    {
      "C": "CN",
      "ST": "Beijing",
      "L": "Beijing",
      "O": "kubemsb",
      "OU": "CN"
    }
  ]
}
EOF

cat  etcd-csr.json

--生成etcd证书

cfssl gencert \
  -ca=ca.pem \
  -ca-key=ca-key.pem \
  -config=ca-config.json \
  -profile=kubernetes \
  etcd-csr.json | cfssljson -bare etcd
  
  ls
发表评论
留言与评论(共有 0 条评论) “”
   
验证码:

相关文章

推荐文章