etcd

Centos 7使用kubeadm部署Kubernetes 1.15

橙三吉。 提交于 2020-01-04 23:51:45
博文大纲: 一、Kubernetes简介 二、kubeadm简介 三、环境准备 四、部署前准备 1)检查docker版本、关闭防火墙与SELinux、清空iptables规则,禁用Swap 2)配置免密登录、配置hosts文件以及yum源 3)打开iptables桥接及路由转发 五、部署kubernetes群集 1)编写下载镜像的脚本 2)下载部署kubernetes集群所需组件 3)初始化kubernetes集群 4)配置master节点状态 5)将node01、node02加入kubernetes群集中 6)部署后的优化操作 一、Kubernetes简介 Kubernetes是一个开源的,用于管理云平台中多个主机上的容器化应用。Kubernetes的目标就是让部署容器化的应用简单并且高效。Kubernetes提供了应用部署、规划、更新、维护的一种机制。 Kubernetes一个核心的特点就是能够自主的管理容器来保证云平台中的容器按照用户的期望状态运行,管理员可以加载一个微型服务,让规划期来找到合适的位置,同时,Kubernetes也系统提升工具以及人性化方面,让用户能够方便的部署自己的应用。 本片博文主要介绍如何部署Kubernetes集群,想要对Kubernetes有更深入的了解请参考 Kubernetes中文文档 或 Kubernetes官方网站 二、kubeadm简介

4.Kubernetes快速入门

喜欢而已 提交于 2020-01-02 23:59:51
Kubernetes快速入门 通过本章节的学习,你可以充分了解到一个 https 的 kubernetes 集群中所需的证书及其作用,以及 kubernetes 语境内的 api 资源类型,最后我还补充了几个基础的GET命令,此时你可以登录到上一章节我们使用 kubeadm 创建的集群,进行一些查询操作了 证书管理 API资源模型 API资源类型 命令补充 备注 1.证书管理 k8s 于生产环境运行时,我强烈建议大家运行在 https 的安全环境下,其证书可分为以下三大类: 1.root CA apiserver:apiserver自己的证书 apiserver-kubelet-client:kubelet客户端连接apiserver时的客户端证书 2.etcd CA etcd-server:etcd服务端证书 etcd-peer:etcd对等证书,用于etcd集群间https通信 etcd-healthcheck-client:etcd健康检查的客户端证书 apiserver-etcd-client:apiserver连接etcd的客户端证书 3.front-proxy CA front-proxyserver-client:apiserver(中的聚合器aggregator)于前端的客户端证书 你需要注意的是: k8s 集群证书默认有效期是90天,你有2个办法去调整(修改 go

Kubernetes/4.Kubernetes快速入门

落花浮王杯 提交于 2020-01-01 23:37:55
Kubernetes快速入门 通过本章节的学习,你可以充分了解到一个https的kubernetes集群中所需的证书及其作用,以及kubernetes语境内的api资源类型,最后我还补充了几个基础的GET命令,此时你可以登录到上一章节我们使用kubeadm创建的集群,进行一些查询操作了。 证书管理 API资源模型 API资源类型 命令补充 备注 证书管理 k8s于生产环境运行时,我强烈建议大家运行在https的安全环境下,其证书可分为以下三大类: root CA: apiserver:apiserver自己的证书 apiserver-kubelet-client:kubelet客户端连接apiserver时的客户端证书 etcd CA: etcd-server:etcd服务端证书 etcd-peer:etcd对等证书,用于etcd集群间https通信 etcd-healthcheck-client:etcd健康检查的客户端证书 apiserver-etcd-client:apiserver连接etcd的客户端证书 front-proxy CA: front-proxyserver-client:apiserver(中的聚合器aggregator)于前端的客户端证书 你需要注意的是: 1) k8s集群证书默认有效期是90天,你有2个办法去调整(修改go源文件或者证书签名请求生成时声明

kubernetes 二进制部署ansible playbook 一键生成

独自空忆成欢 提交于 2020-01-01 07:19:57
脚本仓库地址 https://github.com/qist/k8s #支持 Ubuntu 18及以上的系统,CentOS7及CentOS8 系统 # k8s 版本 14,15,16,17 号版本 ansible 安装 #Ubuntu 系列安装 apt -y install ansible #CentOS 8 安装 dnf -y install ansible # CentOS 7 安装 yum -y install ansible # 修改ansible 配置 ## 说明id_rsa_storm1 私钥名字请自行修改 sed -i 's/^#private_key_file =.*$/private_key_file =\/root\/.ssh\/id_rsa_storm1/g' /etc/ansible/ansible.cfg sed -i 's/^#sudo_user = root/sudo_user = root/g' /etc/ansible/ansible.cfg sed -i 's/^#remote_port = 22/remote_port = 22/g' /etc/ansible/ansible.cfg sed -i 's/^#host_key_checking = False/host_key_checking = False/g' /etc/ansible

etcd集群入门

被刻印的时光 ゝ 提交于 2019-12-29 23:47:49
使用docker-compose搭建etcd集群环境 https://www.jianshu.com/p/44022c67f117 Docker 搭建 etcd 集群 API的使用: https://www.cnblogs.com/xishuai/p/docker-etcd.html ## 获取etcd的版本号 curl -L http://127.0.0.1:2379/version ## 设置一个key的value curl http://127.0.0.1:2379/v2/keys/message -XPUT -d value="Hello world" ## 获取一个key的value curl http://127.0.0.1:2379/v2/keys/message ## 改变一个key的value curl http://127.0.0.1:2379/v2/keys/message -XPUT -d value="Hello etcd" ## 删除一个key节点 curl http://127.0.0.1:2379/v2/keys/message -XDELETE ## 使用ttl(即设置一个key的值并给这个key加一个生命周期,当超过这个时间该值没有被访问则自动被删除) curl http://127.0.0.1:2379/v2/keys/foo -XPUT -d

从零开始入门 K8s | 应用编排与管理:Job & DaemonSet

那年仲夏 提交于 2019-12-29 15:28:16
【推荐】2019 Java 开发者跳槽指南.pdf(吐血整理) >>> 一、Job 需求来源 Job 背景问题 首先我们来看一下 Job 的需求来源。我们知道 K8s 里面,最小的调度单元是 Pod,我们可以直接通过 Pod 来运行任务进程。这样做将会产生以下几种问题: 我们如何保证 Pod 内进程正确的结束? 如何保证进程运行失败后重试? 如何管理多个任务,且任务之间有依赖关系? 如何并行地运行任务,并管理任务的队列大小? Job:管理任务的控制器 我们来看一下 Kubernetes 的 Job 为我们提供了什么功能: 首先 kubernetes 的 Job 是一个管理任务的控制器,它可以创建一个或多个 Pod 来指定 Pod 的数量,并可以监控它是否成功地运行或终止; 我们可以根据 Pod 的状态来给 Job 设置重置的方式及重试的次数; 我们还可以根据依赖关系,保证上一个任务运行完成之后再运行下一个任务; 同时还可以控制任务的并行度,根据并行度来确保 Pod 运行过程中的并行次数和总体完成大小。 用例解读 我们根据一个实例来看一下Job是如何来完成下面的应用的。 Job 语法 上图是 Job 最简单的一个 yaml 格式,这里主要新引入了一个 kind 叫 Job,这个 Job 其实就是 job-controller 里面的一种类型。 然后 metadata 里面的 name

Docker集中化web界面管理平台-Shipyard部署记录

笑着哭i 提交于 2019-12-29 11:37:44
本文转载自: https://www.cnblogs.com/kevingrace/p/6867820.html 作者:kevingrace 转载请注明该声明。 Docker图形页面管理工具基本常用的有三种: DOCKER UI,Shipyard,Portainer 。对比后发现, Shipyard最强大,其次是Portainer,最后是Docker ui 。之前介绍了 DOcker的web管理工具DockerUI ,下面介绍下Docker的另一个web界面管理工具Shipyard的使用。Shipyard(github)是建立在docker集群管理工具Citadel之上的可以管理容器、主机等资源的web图形化工具,包括core和extension两个版本,core即shipyard主要是把多个 Docker host上的 containers 统一管理(支持跨越多个host),extension即shipyard-extensions添加了应用路由和负载均衡、集中化日志、部署等; Shipyard是在Docker Swarm实现对容器、镜像、docker集群、仓库、节点进行管理的web系统 。 DockerUI功能: 通过Web浏览器的命令行来管理的任务。 DockerUI的优点 1)可以对运行着的容器进行批量操作 2)在容器网络中-会显示容器与容器间的网络关系 3

Kubernetes/1.Kubernetes基础

帅比萌擦擦* 提交于 2019-12-29 00:19:25
Kubernetes基础 本章主要让我们初步了解到Kubernetes的主要组件有哪些,以及其协作关系是怎么样的。 架构图 流程概述 参考文档 备注 架构图 Master节点:(又称为控制平面:control plane) 包括kube-apiserver、kube-scheduler、kube-controller-manager和etcd四个组件。 kube-apiserver: 是一个将Kubernetes控制平面中的API暴露出来的API服务,这服务是Kubernetes控制平面的前端。 用户可以运行多个kube-apiserver组件的实例,用于平衡实例的请求流量。 kube-scheduler: 用于watch监听apiserver的资源变动(增删改查),并调度合适的后端node节点来创建Pod资源。 kube-controller-manager: 每个控制器都是独立的二进制进程,包括:Node Controller、Replication Controller、Endpoints Controller和Service Account & Token Controllers。 etcd: 高可用、KV结构的kubernetes的后端数据存储组件。 备份方案:https://kubernetes.io/docs/tasks/administer-cluster

CentOS7安装OpenStack(Rocky版)-01.控制节点的系统环境准备

北慕城南 提交于 2019-12-28 22:31:13
分享一下Rocky版本的OpenStack安装管理经验: OpenStack每半年左右更新一版,目前是版本是201808月发布的版本-R版(Rocky),目前版本安装方法优化较好,不过依然是比较复杂 官方文档地址: https://docs.openstack.org/install-guide/openstack-services.html 本文主要分享控制节点的环境配置方法: ---------------- 完美的分割线 ------------------ 1.0.系统环境 1)生产测试应用的服务器最好是物理机,虚拟目前可以完成搭建测试体验 2)系统选择是目前的最新版本:CentOS Linux release 7.5.1804 (Core) 3)控制节点Controller :192.168.1.81 计算节点Nova:192.168.1.82 1.1.配置域名解析 1)配置主机名 # 主机名设置好就不能修改,否则会出问题,控制节点和计算节点配置相同,且都需要配置 hostname openstack01.zuiyoujie.com hostname echo "openstack01.zuiyoujie.com"> /etc/hostname cat /etc/hostname 2)配置主机名解析 vim /etc/hosts ---------------------

shipyard的安装与一般维护

杀马特。学长 韩版系。学妹 提交于 2019-12-28 01:15:14
#一、安装前的准备: docker pull alpine docker pull library/rethinkdb docker pull microbox/etcd docker pull shipyard/docker-proxy docker pull swarm docker pull shipyard/shipyard #二、安装脚本: curl -s https://shipyard-project.com/deploy | bash -s ==》英文版 curl -sSL http://dockerclub.net/public/script/deploy | bash -s ==> 中文版 shipyard 安装完成后使用http:// 192.168.100.100 :8080 就可以访问了(iptables防火墙要是开启了,要记得打开8080端口访问) shipyard访问页面默认登录用户名:admin,密码:shipyard,登录进去后,可以在"ACCOUNTS"选项里管理用户,可以添加用户,并对用户进行角色授权 #三、一般维护: 1)添加node节点: curl -sSL http://dockerclub.net/public/script/deploy | ACTION=node DISCOVERY=etcd://<shipyard部署机ip>