[!TIP]
二进制部署k8s
- 部署kube-apiserver
转载请注明出处:https://janrs.com
部署 kube-apiserver
1.创建目录
[!NOTE]
每台master
服务器都要创建。
# 创建证书目录
mkdir -p /etc/kubernetes/pki/{
apiserver/,kubelet/,aggregator/,service-account/,sign/,etcd/}
# 创建配置文件存放目录以及 kubeconfig 存放目录和初始化集群所需配置文件目录
mkdir -p /etc/kubernetes/{
config/,kubeconfig/,init_k8s_config/}
# 创建 kubectl 使用 config 的默认目录
mkdir -p /root/.kube/
# 创建日志存放目录
mkdir -p /var/log/kubernetes/{
apiserver/,controller/,scheduler/}
2.创建 ssl
证书
2-1.创建 ca
根证书
[!NOTE]
ca
根证书采用4096
位加密。
创建证书可以在其他地方生成后再上传,设置好对应的ip
就行。
cat > /ssl/apiserver-ca-csr.json <<EOF
{
"key": {
"algo": "rsa",
"size": 4096
},
"names": [
{
"C": "CN",
"L": "Beijing",
"ST": "Beijing",
"O": "k8s",
"OU": "System"
}
]
}
EOF
cd /ssl/ && \
cfssl gencert -initca apiserver-ca-csr.json | \
cfssljson -bare apiserver-ca - && \
ls apiserver-ca* | \
grep apiserver-ca
2-2.创建 server
证书
[!NOTE]
hosts
参数的ip
需要把master
节点,HA
节点以及vip
地址都写进去。
cat > /ssl/apiserver-server-csr.json <<EOF
{
"CN": "kubernetes",
"hosts": [
"127.0.0.1",
"172.16.222.121",
"172.16.222.122",
"172.16.222.123",
"172.16.222.201",
"172.16.222.202",
"172.16.222.110",
"10.68.0.1",
"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",
"O": "k8s",
"OU": &#