CFSSL

一文带你快速入门etcd(万字长文)

≯℡__Kan透↙ 提交于 2021-02-17 19:01:44
2018年12月 etcd 作为孵化项目 CNCF(云原生计算基金会),几天前 CNCF 宣布 etcd 正式毕业,成为 CNCF 顶级项目。CNCF 官方表示 etcd 项目的采用率持续增加,也有稳定的治理流程,功能已达一定成熟度。 etcd 已经被许多公司用于实际生产,其中包括亚马逊、百度、思科、EMC、谷歌、阿里、华为、IBM、Red Hat、Uber、Verizon 等;而且其身影也出现在包括 Kubernetes、CoreDNS、M3、Rook 以及 TiKV 等项目当中。 前面的系列 etcd 文章已经部分介绍了 etcd。本文将会做一个快速入门的介绍,带领大家十分钟快速入门云原生存储组件 etcd,主要内容如下(本文较长,建议收藏): etcd 简介,以及其应用场景 etcd 的多种安装模式及高可用运维 etcd v3 的架构解析 etcdctl 的实践应用 1 etcd 介绍 2013 年 6 月,CoreOS 发起了 etcd 项目。etcd 使用 Go 语言实现,是分布式系统中重要的基础组件,目前最新版本为 V3.4.9。etcd 可以用来构建高可用的分布式键值数据库,根据官网介绍,总结来说有如下的特点: 简单:etcd 的安装简单,且为用户提供了 HTTP API,用户使用起来也很简单 存储:etcd 的基本功能,数据分层存储在文件目录中

K8s集群部署(一)------ETCD集群部署

▼魔方 西西 提交于 2020-11-19 07:22:20
环境说明 三台主机: k8s-master   10.0.3.225 k8s-node1    10.0.3.226 k8s-node2    10.0.3.227 配置主机名解析 [root@k8s-master kubernetes]# vim /etc/ hosts 10.0 . 3.225 k8s- master 10.0 . 3.226 k8s- node1 10.0 . 3.227 k8s-node2 关闭防火墙和SElinux [root@k8s- master kubernetes]# systemctl stop firewalld [root@k8s - master kubernetes]# getenforce Disabled 设置环境变量 vim /root/ .bash_profile PATH =$PATH:$HOME/bin:/opt/kubernetes/ bin source /root/.bash_profile 为了拷贝方便,设置SSH免密 [root@k8s-master src]# ssh-keygen [root@k8s -master src]# ssh -copy- id 10.0 . 3.225 [root@k8s -master src]# ssh -copy- id 10.0 . 3.226 [root@k8s

k8s1.9.2高可用集群配置

本小妞迷上赌 提交于 2020-11-14 17:11:43
部署高可用kubernetes集群-1.9.2 hujianxiong 2018年03月26日 308次浏览 1.kubernetes 高用可架构 loadbalancer loadbalancer 2.环境规划 k8s-v192-system k8s-v192-system k8s-v192-cluster k8s-v192-cluster 3.准备工作 修改主机名,kubernetes集群会识别主机名,确保主机名唯一(每台节点上) ${hostname}变量请替换成规划的主机名,比如ns.k8s.master01,ns.k8s.node01 $ hostnamectl set-hostname ${hostname} 安装Docker(每台节点上) #0.删除旧版dokcer,如果默认之前yum安装的1.12版本,可以这样删没装可以跳过此步 $ yum remove -y docker* #1.安装需要的包 $ yum install -y yum-utils \ device-mapper-persistent-data \ lvm2 libtool-ltdl libseccomp #2.添加阿里云源, $ yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker

Jenkins基于https的k8s配置

人盡茶涼 提交于 2020-10-28 04:43:41
一、摘要 jenkins 连接低版本的k8s时,不需要验证。但是 新版本的启用了https和角色管理 二、安装kubernetes插件 登录jenkins,点击 Manage Jenkins --> Manage Plugins --> 可选插件 在搜索框中,输入关键字 kubernetes 勾选 Kubernetes ,点击 直接安装 等待几分钟,提示安装完成。 点击 安装完成后重启Jenkins(空闲时) 提示正在重启中 重新登录jenkins,返回首页。点击 Manage Jenkins --> Configure System 将网页拉动到最底下,点击新增一个云,就会出现Kubernetes 效果如下: 如果直接写 kubernetes地址,点击测试,会报错。 k8s集群信息 root@k8s-master:~# kubectl cluster-info Kubernetes master is running at https://192.168.10.130:6443 KubeDNS is running at https://192.168.10.130:6443/api/v1/namespaces/kube-system/services/kube-dns:dns/proxy To further debug and diagnose cluster

二进制部署K8s集群第3节之准备签发证书环境

我是研究僧i 提交于 2020-10-23 08:36:07
上一章:二进制部署K8s集群第2节之DNS服务初始化 部署于运维主机HDSS7-200.host.com上 1、安装cfssl证书签发工具 wget https://pkg.cfssl.org/R1.2/cfssl_linux-amd64 -O /usr/bin/cfssl wget https://pkg.cfssl.org/R1.2/cfssljson_linux-amd64 -O /usr/bin/cfssl-json wget https://pkg.cfssl.org/R1.2/cfssl-certinfo_linux-amd64 -O /usr/bin/cfssl-certinfo chmod +x /usr/bin/cfssl* which /usr/bin/cfssl which /usr/bin/cfssl-json which /usr/bin/cfssl-certinfo 2、创建生成CA证书签名(csr)的JSON配置文件 mkdir /opt/certs cat > /opt/certs/ca-csr.json <<EOF { "CN": "kubernetes", "hosts": [ ], "key": { "algo": "rsa", "size": 2048 }, "names": [ { "C": "CN", "L": "GuangZhou",

【k8s部署】2. 创建CA根证书和秘钥

寵の児 提交于 2020-10-13 08:12:32
如果没有特殊指明,所有操作均在 zhaoyixin-k8s-01 节点上执行。 为确保安全, kubernetes 系统的各组件需要使用 x509 证书对通信进行加密和认证。 CA (Certificate Authority) 是自签名的根证书,用来签名后续创建的其它证书。 CA 证书是集群所有节点共享的,只需要 创建一次 ,后续用它签名其它所有证书。 安装 cfssl 工具集 使用 CloudFlare 的 PKI 工具集 cfssl 创建所有证书。 sudo mkdir -p /opt/k8s/cert && cd /opt/k8s/work wget https://github.com/cloudflare/cfssl/releases/download/v1.4.1/cfssl_1.4.1_linux_amd64 mv cfssl_1.4.1_linux_amd64 /opt/k8s/bin/cfssl wget https://github.com/cloudflare/cfssl/releases/download/v1.4.1/cfssljson_1.4.1_linux_amd64 mv cfssljson_1.4.1_linux_amd64 /opt/k8s/bin/cfssljson wget https://github.com/cloudflare

Fabric系列

眉间皱痕 提交于 2020-09-26 03:28:41
背景 Fabric CA项目原来是超级账本Fabric内的MemberService组件,负责对网络内各个实体的身份证书进行管理。鉴于其功能十分重要,2017年2月正式成立Fabric CA独立子项目,负责相关代码的维护。Fabric CA项目主要实现了如下几个功能: 负责Fabric网络内所有实体(Identity)的身份管理,包括身份的注册、注销等; 负责证书管理,包括ECerts(身份证书)、TCerts(交易证书)等的发放和注销; 服务端支持基于客户端命令行和RESTful API的交互方式。 在实现上,Fabric CA基于开源的CFSSL项目框架。代码同时托管在https://gerrit.hyperledger.org 和 https://github.com/hyperledger/fabric-ca (只读镜像)上。 CFSSl是Cloudf lare开源的提供PKI和TLS证书相关实现的工具集,项目地址为https://github.com/cloudflare/cfssl。 OpenSSL 和 CFSSL OpenSSL是开源的SSL(Secure Sockets Layer)实现,SSL 是一个安全协议,为基于 TCP 的应用层提供安全链接,其目标是保证两个应用间通信的保密性和可靠性 CFSSL 是 CloudFlare 公司的一个 PKI 工具包

第一次搭建kubernetes经历

情到浓时终转凉″ 提交于 2020-08-17 06:44:38
1.准备部署环境 master 192.168.40.162 node 192.168.40.220 2.下载部署包(从192.168.40.33复制部署包) scp /opt/kylincloud2_2.0_ft2000_v0.0.1.13_20200511.tar.gz root@192.168.40.162:/opt/ 3.免密认证 通过192.168.40.192对192.168.40.162及192.168.40.220做免密认证,即master节点对自身及所有node节点做免密认证 (1)ssh-keygen -t rsa (2)cat id_rsa.pub>>authorized_keys (3)chmod 710 authorized_keys (4)scp -r authorized_keys root@192.168.40.220:~/.ssh 4.时间同步 (1)ntpdate 192.168.40.253(此命令分别执行在master及node) 将192.168.40.162和192.168.40.220统一与192.168.40.253时间保持一致,即master及所有节点保持统一一致时间 (2)hwclock -w(此命令分别执行在master及node) 将软件时间写入硬件时间,硬件时间是BIOS的时间 5.根据需求修改default.yaml文件

跟着炎炎盐实践k8s---Kubernetes 1.16.10 二进制高可用集群部署之通用配置

元气小坏坏 提交于 2020-07-24 15:02:12
文档将介绍如何使用二进制部署Kubernetes v1.16高可用集群,而不是使用自动化部署(kubeadm)集群。在部署过程中,将详细列出各个组件启动参数,以及相关配置说明。部署完成后,将理解k8s各个组件的交互原理,并且可以快速解决实际问题。 * 环境及组件版本 Centos7.2 Kubernetes v1.16.10 Docker 18.09 .01(需要和k8s版本匹配) Etcd 3.3.13 Flanneld 0.12.0 一、 环境准备 服务器准备 master节点 10.13.33.29 master-01 10.13.33.40 master-02 10.13.33.38 master-03 node节点 10.13.33.31 node-01 修改主机名 为对应服务器设置永久主机名 cat >> /etc/hosts <<EOF 10.13.33.29 master-01 10.13.33.40 master-02 10.13.33.38 master-03 10.13.33.31 node-01 EOF hostnamectl set-hostname master-01 #所有机器按照要求修改 bash #刷新主机名 更新PATH变量 k8s所有文件和配置都会存储在/opt/k8s/ 中,运行以下命令,配置环境变量 echo 'PATH=/opt/k8s

一步一步搞定Kubernetes二进制部署(一)——etcd集群搭建(单节点)

放肆的年华 提交于 2020-05-05 10:06:39
一步一步搞定Kubernetes二进制部署(一)——etcd集群搭建(单节点) 前言 ​ 前面简单介绍了Kubernetes的基础理论原理与核心组件,本文将给出单节点以二进制部署Kubernetes集群的第一个步骤——搭建etcd集群实验流程。 集群规划清单(之后的文章将按照该规划一步一步配置) 1、三个节点上部署etcd集群 2、两个node节点上部署docker环境、部署flannel(容器内部之间的通信,依赖于vxlan技术) 3、master节点上部署kube-apiserver、kube-controller-manager、kube-scheduler 4、node节点上部署kubelet、kube-proxy 服务器ip地址规划 master01地址:192.168.0.128 node01地址:192.168.0.129 node02地址:192.168.0.130 本文将给出的是etcd集群的搭建配置流程。 搭建流程 1、环境准备 ​ 三台服务器建议设置主机名称、绑定静态ip和关闭网络管理服务,其次需要关闭防火墙和核心防护,清空iptables 这里以master01为例,其他节点按照此节点类似设置即可 [root@localhost ~]# hostnamectl set-hostname master01 [root@localhost ~]# su