k8s部署之使用CFSSL建立證書

2022-09-08 22:30:25 字數 1917 閱讀 2123

curl -s -l -o /bin/cfssl

curl -s -l -o /bin/cfssljson

curl -s -l -o /bin/cfssl-certinfo

chmod +x /bin/cfssl*

client certificate: 用於服務端認證客戶端,例如etcdctl、etcd proxy、fleetctl、docker客戶端

server certificate: 服務端使用,客戶端以此驗證服務端身份,例如docker服務端、kube-apiserver

peer certificate: 雙向證書,用於etcd集群成員間通訊

mkdir /opt/ssl

cd /opt/ssl

cfssl print-defaults config > ca-config.json

cfssl print-defaults csr > ca-csr.json

,

"profiles": ,

"client": ,

"peer": }}

}

,

"names": [

]}

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

生成ca.pem、ca.csr、ca-key.pem(ca私鑰,需妥善保管)

cfssl print-defaults csr > server-csr.json
vim server-csr.json

, "names": [

]}

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

cfssl print-defaults csr > admin-csr.json
vim admin-csr.json

, "names": [

]}

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

cfssl print-defaults csr > kube-proxy-csr.json

vim kube-proxy-csr.json

, "names": [

]}

cfssl gencert -ca=ca.pem -ca-key=ca-key.pem -config=ca-config.json -profile=kubernetes kube-proxy-csr.json | cfssljson -bare kube-proxy
針對etcd服務,每個etcd節點上按照上述方法生成相應的證書和私鑰

校驗生成的證書是否和配置相符

openssl x509 -in ca.pem -text -noout

openssl x509 -in server.pem -text -noout

openssl x509 -in client.pem -text -noout

k8s部署之使用CFSSL建立證書

curl s l o bin cfssl curl s l o bin cfssljson curl s l o bin cfssl certinfo chmod x bin cfssl client certificate 用於服務端認證客戶端,例如etcdctl etcd proxy fleet...

k8s部署之使用CFSSL建立證書

kubernetes系統的各元件需要使用tls證書對通訊進行加密,本文件使用cloudflare的 pki 工具集 cfssl 來生成 certificate authority ca 和其它證書 生成的 ca 證書和秘鑰檔案如下 使用證書的元件如下 注意 以下操作都在 master 節點即 172...

K8s部署prometheus監控K8s細節

prometheus 一些配置檔案可以再github上找到。部署 root kube prometheus manifests 目錄下所有檔案 部署 root kube prometheus manifests setup 目錄下所有檔案 要注意的是自己要建立乙個工作空間 如果報錯執行下面語句 部署...