Centos7部署kubernetes集群CA证书创建和分发(二)

1、解压软件包

[[email protected] ~]# cd /usr/local/src/

[[email protected] src]# ls

k8s-v1.10.1-manual.zip

[[email protected] src]# unzip k8s-v1.10.1-manual.zip

[[email protected] src]# cd k8s-v1.10.1-manual

[[email protected] k8s-v1.10.1-manual]# cd k8s-v1.10.1/

[[email protected] k8s-v1.10.1]# mv * /usr/local/src/

[[email protected] k8s-v1.10.1]# cd /usr/local/src/

[[email protected] src]# ll

total 1178908

-rw-r--r-- 1 root root 6595195 Mar 30 2016 cfssl-certinfo_linux-amd64

-rw-r--r-- 1 root root 2277873 Mar 30 2016 cfssljson_linux-amd64

-rw-r--r-- 1 root root 10376657 Mar 30 2016 cfssl_linux-amd64

-rw-r--r-- 1 root root 17108856 Apr 12 17:35 cni-plugins-amd64-v0.7.1.tgz

-rw-r--r-- 1 root root 10562874 Mar 30 01:58 etcd-v3.2.18-linux-amd64.tar.gz

-rw-r--r-- 1 root root 9706487 Jan 24 02:58 flannel-v0.10.0-linux-amd64.tar.gz

drwxr-xr-x 3 root root 25 Apr 23 20:19 k8s-v1.10.1-manual

-rw-r--r-- 1 root root 593725046 Jun 10 11:32 k8s-v1.10.1-manual.zip

-rw-r--r-- 1 root root 13344537 Apr 13 01:51 kubernetes-client-linux-amd64.tar.gz

-rw-r--r-- 1 root root 112427817 Apr 13 01:51 kubernetes-node-linux-amd64.tar.gz

-rw-r--r-- 1 root root 428337777 Apr 13 01:51 kubernetes-server-linux-amd64.tar.gz

-rw-r--r-- 1 root root 2716855 Apr 13 01:51 kubernetes.tar.gz

[[email protected] src]# tar -zxvf kubernetes.tar.gz

[[email protected] src]# tar -zxvf kubernetes-client-linux-amd64.tar.gz

[[email protected] src]# tar -zxvf kubernetes-node-linux-amd64.tar.gz

[[email protected] src]# tar -zxvf kubernetes-server-linux-amd64.tar.gz

2、三台机器设置kubernetes环境变量

[[email protected] ~]# vim .bash_profile #在原有的PATH路径在后面加上即可。

PATH=$PATH:$HOME/bin:/opt/kubernetes/bin

[[email protected] ~]# source .bash_profile

[[email protected] ~]# vim .bash_profile #在原有的PATH路径在后面加上即可。

PATH=$PATH:$HOME/bin:/opt/kubernetes/bin

[[email protected] ~]# source .bash_profile

[[email protected] ~]# vim .bash_profile #在原有的PATH路径在后面加上即可。

PATH=$PATH:$HOME/bin:/opt/kubernetes/bin

[[email protected] ~]# source .bash_profile

3、安装CFSSL

[[email protected] src]# chmod +x cfssl*

[[email protected] src]# mv cfssl-certinfo_linux-amd64 /opt/kubernetes/bin/cfssl-certinfo

[[email protected] src]# mv cfssljson_linux-amd64 /opt/kubernetes/bin/cfssljson

[[email protected] src]# mv cfssl_linux-amd64 /opt/kubernetes/bin/cfssl

4、三台机器免密钥登录;复制cfssl命令文件到node1和node2

[[email protected] ~]# ssh-keygen -t rsa

[[email protected] ~]# ssh-copy-id linux-node1

[[email protected] ~]# ssh-copy-id linux-node2

[r[email protected] ~]# ssh-copy-id linux-node3

[[email protected] src]# scp /opt/kubernetes/bin/cfssl* 192.168.43.22:/opt/kubernetes/bin

[[email protected] src]# scp /opt/kubernetes/bin/cfssl* 192.168.43.23:/opt/kubernetes/bin

5、初始化cfssl

[[email protected] ~]# cd /usr/local/src/

[[email protected] src]# mkdir ssl

[[email protected] src]# cd ssl

[[email protected] ssl]# pwd

/usr/local/src/ssl

6、创建用来生成CA文件的JSON配置文件

[[email protected] ssl]# vim ca-config.json

{

"signing": {

"default": {

"expiry": "8760h"

},

"profiles": {

"kubernetes": {

"usages": [

"signing",

"key encipherment",

"server auth",

"client auth"

],

"expiry": "8760h"

}

}

}

}

7、创建用来生成CA证书签名请求(CSR)的JSON配置文件

[[email protected] ssl]# vim ca-csr.json

{

"CN": "kubernetes",

"key": {

"algo": "rsa",

"size": 2048

},

"names": [

{

"C": "CN",

"ST": "BeiJing",

"L": "BeiJing",

"O": "k8s",

"OU": "System"

}

]

}

8、生成CA证书(ca.pem)和密钥(ca-key.pem)

[[email protected] ssl]# cfssl gencert -initca ca-csr.json | cfssljson -bare ca

[[email protected] ssl]# ll

total 20

-rw-r--r-- 1 root root 290 Jun 10 23:58 ca-config.json

-rw-r--r-- 1 root root 1001 Jun 11 00:02 ca.csr

-rw-r--r-- 1 root root 208 Jun 11 00:00 ca-csr.json

-rw------- 1 root root 1679 Jun 11 00:02 ca-key.pem

-rw-r--r-- 1 root root 1359 Jun 11 00:02 ca.pem

9、分发证书

[[email protected] ssl]# cp ca.csr ca.pem ca-key.pem ca-config.json /opt/kubernetes/ssl

[[email protected] ssl]# scp ca.csr ca.pem ca-key.pem ca-config.json 192.168.43.22:/opt/kubernetes/ssl

[[email protected] ssl]# scp ca.csr ca.pem ca-key.pem ca-config.json 192.168.43.23:/opt/kubernetes/ssl

原文地址:https://www.cnblogs.com/xiaoliangxianshen/p/9165495.html

时间: 2024-10-29 13:09:46

Centos7部署kubernetes集群CA证书创建和分发(二)的相关文章

CentOS7部署Kubernetes集群

CentOS7部署Kubernetes集群 简介 Kubernetes是什么? Kubernetes一个用于容器集群的自动化部署.扩容以及运维的开源平台. 通过Kubernetes,你可以快速有效地响应用户需求: a.快速而有预期地部署你的应用 b.极速地扩展你的应用 c.无缝对接新的应用功能 d.节省资源,优化硬件资源的使用 我们希望培育出一个组件及工具的生态,帮助大家减轻在公有云及私有云上运行应用的负担. Kubernetes特点: a.可移植: 支持公有云,私有云,混合云,多重云(mult

Centos7部署Kubernetes集群+flannel

centos7 部署Kubernetes+flannel https://www.cnblogs.com/zhenyuyaodidiao/p/6500830.html kubernetes集群部署DashBoard http://www.cnblogs.com/zhenyuyaodidiao/p/6500897.html 原文地址:http://blog.51cto.com/lookingdream/2094162

二进制部署 Kubernetes 集群

二进制部署 Kubernetes 集群 提供的几种Kubernetes部署方式 minikube Minikube是一个工具,可以在本地快速运行一个单点的Kubernetes,尝试Kubernetes或日常开发的用户使用.不能用于生产环境. kubeadm Kubeadm也是一个工具,提供kubeadm init和kubeadm join指令,用于快速部署Kubernetes集群. 二进制包 从官方下载发行版的二进制包,手动部署每个组件,组成Kubernetes集群. 小结:生产环境中部署Kub

使用kubeadm部署kubernetes集群

使用kubeadm部署kubernetes集群 通过docker,我们可以在单个主机上快速部署各个应用,但是实际的生产环境里,不会单单存在一台主机,这就需要用到docker集群管理工具了,本文将简单介绍使用docker集群管理工具kubernetes进行集群部署. 1 环境规划与准备 本次搭建使用了三台主机,其环境信息如下:| 节点功能 | 主机名 | IP || ------|:------:|-------:|| master | master |192.168.1.11 || slave1

安装部署Kubernetes集群实战

kubernetes概述: Kubernetes是一个开源的,用于管理云平台中多个主机上的容器化的应用,Kubernetes的目标是让部署容器化的应用简单并且高效(powerful),Kubernetes提供了应用部署,规划,更新,维护的一种机制.Kubernetes是Google 2014年创建管理的,是Google 10多年大规模容器管理技术Borg的开源版本. 通过kubernetes可以实现的功能: 快速部署应用 快速扩展应用 无缝对接新的应用功能 节省资源,优化硬件资源的使用 我们的目

Shell脚本快速部署Kubernetes集群系统

本文紧跟上节所讲的手动部署Kubernetes管理Docker篇所写,本篇主要内容利用Shell脚本完成快速部署Kubernetes集群.上节博文看过的朋友也能感觉到部署过程相对比较简单,那么,出于简化工作流程,推进运维自动化角度来说,于是花了2/3天时间写这个部署Kubernetes脚本. 运维工作中,常常会遇到部署各种各样的服务,建议:常规部署都应该尽量使用脚本完成,一方面提高自身脚本编写能力,另一方面推进运维自动化. 详细部署说明文档:http://lizhenliang.blog.51c

使用Rancher的RKE快速部署Kubernetes集群

简要说明: 本文共涉及3台Ubuntu机器,1台RKE部署机器(192.168.3.161),2台Kubernetes集群机器(3.162和3.163). 先在Windows机器上,将rke_linux-amd64从github上下载下来,重新命名为rke ,编辑好cluster.yml集群部署文件,使用putty提供的pscp命令,将文件上传到3.161机器上.在3.161机器上,执行rke命令,将集群部署到3.162和3.163机器上. 只要环境配置正确,部署非常快,整个集群5分钟搞定. 准

K8S简介+CentOS7 部署K8S集群

一.前言 Kubernetes(简称K8S)是开源的容器集群管理系统,可以实现容器集群的自动化部署.自动扩缩容.维护等功能.它既是一款容器编排工具,也是全新的基于容器技术的分布式架构领先方案.在Docker技术的基础上,为容器化的应用提供部署运行.资源调度.服务发现和动态伸缩等功能,提高了大规模容器集群管理的便捷性.[Kubernetes是容器集群管理工具] 二.Kubernetes的架构图 三.重要概念 3.1.cluster cluster是 计算.存储和网络资源的集合,k8s利用这些资源运

Kubeadm部署Kubernetes集群

Kubeadm部署Kubernetes1.14.1集群 原理kubeadm做为集群安装的"最佳实践"工具,目标是通过必要的步骤来提供一个最小可用的集群运行环境.它会启动集群的基本组件以及必要的附属组件,至于为集群提供更丰富功能(比如监控,度量)的组件,不在其安装部署的范围.在环境节点符合其基本要求的前提下,kubeadm只需要两条基本命令便可以快捷的将一套集群部署起来.这两条命令分别是: kubeadm init:初始化集群并启动master相关组件,在计划用做master的节点上执行