Kubernetes(八)自签Api server ssl证书

APIserver是整个集群的入口,只有它启动了,别的组件才可以启动;我们基于https访问,所以需要自签证书;

一、查看脚本

cd TLS/k8s

得到以下5个文件

  • ca-config.json
  • ca-csr.json
  • generate_k8s_cert.sh
  • kube-proxy-csr.json
  • server-csr.json #为api server启用https所使用证书

应用程序访问https api(自签证书)可用通过以下2种方式

  • 1、证书添加IP可信任
  • 2、携带CA证书

注意:在使用网关、转发等情况下,不能实现携带CA证书,那么我们可用添加信任的IP

二、配置可信任IP

cat server-csr.json

输出以下内容:

{
"CN": "kubernetes",
"hosts": [

"10.0.0.1", #server的IP地址,一般作为内部负载均衡使用

"127.0.0.1",#本地

#k8s内部通过DNS访问的,默认都要有
"kubernetes",
"kubernetes.default",
"kubernetes.default.svc",
"kubernetes.default.svc.cluster",
"kubernetes.default.svc.cluster.local",

#自定义可信任IP,主要是三个master的IP
"192.168.31.60",
"192.168.31.61",

"192.168.31.62",

"192.168.31.63",
],
"key": {
"algo": "rsa",
"size": 2048
},
"names": [
{
"C": "CN",
"L": "BeiJing",
"ST": "BeiJing",
"O": "k8s",
"OU": "System"
}
]
}

三、执行脚本,生成证书

bash generate_k8s_cert.sh

四、查看生成的证书

ls *pem

原文地址:https://www.cnblogs.com/TSir/p/12236355.html

时间: 2024-07-29 10:53:35

Kubernetes(八)自签Api server ssl证书的相关文章

Kubernetes 源码分析 -- API Server之编解码

--------------------- 作者:weixin_34037977 来源:CSDN 原文:https://blog.csdn.net/weixin_34037977/article/details/87058105 在Kubernetes源码分析-- API Server之API Install篇中,我们了解到K8S可以支持多版本的API,但是Rest API的不同版本中接口的输入输出参数的格式是有差别的,Kubernetes是怎么处理这个问题的呢?另外Kubernetes支持ya

Kubernetes(九)单Master 部署API Server、controller-manager、scheduler

一.在master节点下载二进制包 https://github.com/kubernetes/kubernetes/blob/master/CHANGELOG-1.16.md#v1161 二.选择kubernetes-server-linux-amd64.tar.gz下载 wget https://storage.googleapis.com/kubernetes-release/release/v1.16.6/kubernetes-server-linux-amd64.tar.gz 三.解压

Kubernetes API Server原理

Kubernetes API Server功能 Kubernete API Server的核心功能主要是为Kubernetes的各类资源对象(如 node,pod,service等)提供了增.删.改.查以及watch的HTTP Rest接口.API server是集群中各个功能模块之间数据交互和通信的中心枢纽,除此之外它还有以下特性: 集群管理的API入口 资源配额控制的入口 提供完备的集群安全机制 常规API接口 Kubernetes的 API server通过 kube-apiserver进

k8s使用自定义证书将客户端认证接入到API Server

自定义证书使用kubectl认证接入API Serverkubeconfig是API Server的客户端连入API Server时使用的认证格式的客户端配置文件.使用kubectl config view查看其配置 1 kubectl config view 2 apiVersion: v1 3 clusters: #集群列表 4 - cluster: 5 certificate-authority-data: DATA+OMITTED 6 server: https://192.168.1.

Nginx自签ssl证书创建及配置方法

场景: Nginx使用自签ssl证书实现https连接. 方法: 第一步:使用OpenSSL创建证书 #建立服务器私钥(过程需要输入密码,请记住这个密码)生成RSA密钥 >openssl genrsa -des3 -out server.key 1024 #生成一个证书请求     >openssl req -new -key server.key -out server.csr #需要依次输入国家,地区,组织,email.最重要的是有一个common name,可以写你的名字或者域名.如果为

kubernetes API Server 权限管理实践

API Server 权限管理应用 API Server权限控制方式介绍 API Server权限控制分为三种:Authentication(身份认证).Authorization(授权).AdmissionControl(准入控制). 身份认证: 当客户端向Kubernetes非只读端口发起API请求时,Kubernetes通过三种方式来认证用户的合法性.kubernetes中,验证用户是否有权限操作api的方式有三种:证书认证,token认证,基本信息认证. 证书认证 设置apiserver

在Postman中使用自签的SSL证书(转)

add by zhj: 如果是自签的SSL证书,Postman会出现图1的错误,这时我们需要直接在Chrome的地址栏目输入该root URL,出现图2,选择“继续”. 这样,再用Postman就OK了,但是当关闭Chrome后,又出现同样的问题,所以终极解决办法是把证书导出,然后将证书的颁发机构(其实就是用putty生 成证书请求时填写的Common Name,即服务器域名或IP)添加到受信任的根证书颁发机构,这样就OK了.在Win7上用Chrome试验过,成功. 原文:http://blog

深度剖析Kubernetes API Server三部曲 - part 2

在上一部分中我们对API server总体,相关术语及request请求流进行探讨说明.在本部分文章中,我们主要聚焦于探究如何对Kubernetes请添加链接描述 对象的状态以一种可靠,持久的方式进行管理.之前的文章中提到过 API Server自身是无状态的,并且它是唯一能够与分布式存储etcd直接通信的组件.etcd的简要说明在*nix操作系统中,我们一般使用/etc来存储相关配置数据.实际上etcd的名字就是由此发展而来,在etc后面加上个"d"表示"distribut

windows server使用 LetsEncrypt-Win-Simple来安装和使用用Let's Encrypt免费SSL证书

一.网站部署 LetsEncrypt-Win-Simple可以自动发现已经部署的网站供我们选择要生成证书的网站,而且还需要进行验证.所以在生成证书之前,确保网站已经部署好并可以正常访问. 二.生成证书 软件下载地址如下: https://github.com/Lone-Coder/letsencrypt-win-simple/releases 直接下载zip压缩包就好,下载完之后解压运行里面的letsencrypt.exe打开控制台窗口,第一次运行会提示你输入一个邮箱以供后续使用. Let's