Kubernetes单节点搭建----etcd数据库的搭建
本次实验是搭建Kubernetes的单个master节点集群。一个master节点需要安装etcd数据库、两个node节点分别都需要安装docker容器引擎、etcd数据库和flannel扁平化网络。集群架构如图所示。
etcd搭建实验流程
1.创建etcd集群需要先创建相关证书,所以首先需要下载好认证工具即,cfssl工具。
curl -L https://pkg.cfssl.org/R1.2/cfssl_linux-amd64 -o /usr/local/bin/cfssl
curl -L https://pkg.cfssl.org/R1.2/cfssljson_linux-amd64 -o /usr/local/bin/cfssljson
curl -L https://pkg.cfssl.org/R1.2/cfssl-certinfo_linux-amd64 -o /usr/local/bin/cfssl-certinfo
将下载好的认证工具导出至/usr/local/bin目录下面,方便管理和使用。
2.在主节点上建立一个工作目录,用于编写关于etcd的shell脚本、证书、签名等文件。
生成一个工作目录:
mkdir /root/
在工作目录中生成生成认证证书的工作目录:
mkdir /root/k8s/etcd-cert
etcd-cert.sh,是生成etcd证书的shell脚本。将脚本导入到etcd-cert工作目录中去。
#!/bin/bash
#定义了ca证书的配置文件,其中包含了有效时间10年,认证方式等
cat > ca-config.json <<EOF
{
"signing": {
"default": {
"expiry": "87600h"
},
"profiles": {
"www": {
"expiry": "87600h",
"usages": [
"signing",
"key encipherment",
"server auth",
"client auth"
]
}
}
}
}
EOF
#对证书进行签名,使用非对称秘钥