五.部署高可用etcd集群 etcd是key-value存储(同zookeeper),在整个kubernetes集群中处于中心数据库地位,以集群的方式部署,可有效避免单点故障. 这里采用静态配置的方式部署(另也可通过etcd提供的rest api在运行时动态添加,修改或删除集群成员). 以kubenode1为例,kubenode2&kubenode3做适当小调整. 1. 下载 [root@kubenode1 ~]# cd /usr/local/src/ [root@kubenode1 src]#…
SaltStack自动化部署HA-Kubernetes 本项目在GitHub上,会不定期更新,大家也可以提交ISSUE,地址为:https://github.com/skymyyang/salt-k8s-ha SaltStack自动化部署Kubernetes v1.12.5版本(支持HA.TLS双向认证.RBAC授权.Flannel网络.ETCD集群.Kuber-Proxy使用LVS等). SaltStack自动化部署 Kubernetes v1.13.4 版本,请切换到 1.13-Releas…
说明 本文档指导采用二进制包的方式快速部署高可用kubernetes集群. 脚本托管:k8s-ansible(持续更新) 参考:高可用kubernetes集群 组件版本 组件 版本 备注 centos 7.5 linux内核版本不低于3.10,本文档基于centos发行版本 haproxy 1.8.13 版本可选,本文档默认采用1.8.13版本 keepalived 2.0.6 版本可选,本文档默认采用2.0.6版本 docker 18.06.1.ce 版本可选,本文档默认采用18.06.1.c…
参考文档: 部署kubernetes集群1:https://github.com/opsnull/follow-me-install-kubernetes-cluster 部署kubernetes集群2:https://blog.frognew.com/2017/04/install-ha-kubernetes-1.6-cluster.html Building High-Availability Clusters:https://kubernetes.io/docs/admin/high-av…
■ 文/ 天云软件 云平台开发工程师 张伟 1. 背景 Kubernetes作为容器应用的管理中心,对集群内部所有容器的生命周期进行管理,结合自身的健康检查及错误恢复机制,实现了集群内部应用层的高可用性. Kubernetes服务本身的稳定运行对集群管理至关重要,影响服务稳定的因素一般来说分为两种,一种是服务本身异常或者服务所在机器宕机,另一种是因为网络问题导致的服务不可用.本文将从存储层.管理层.接入层三个方面介绍高可用Kubernetes集群的原理. 2. Etcd高可用方案 Kuberne…
序 由于单master节点的kubernetes集群,存在master节点异常之后无法继续使用的缺陷.本文参考网管流程搭建一套多master节点负载均衡的kubernetes集群.官网给出了两种拓扑结构:堆叠control plane node和external etcd node,本文基于第一种拓扑结构进行搭建,使用keepalived + haproxy搭建,完整的拓扑图如下: (堆叠control plane node) (external etcd node) mastre节点需要部署e…
1.概述 Kubenetes集群的控制平面节点(即Master节点)由数据库服务(Etcd)+其他组件服务(Apiserver.Controller-manager.Scheduler...)组成. 整个集群系统运行的交互数据都将存储到数据库服务(Etcd)中,所以Kubernetes集群的高可用性取决于数据库服务(Etcd)在多个控制平面(Master)节点构建的数据同步复制关系. 由此搭建Kubernetes的高可用集群可以选择以下两种部署方式: 使用堆叠的控制平面(Master)节点,其中…
1.概述 Kubenetes集群的控制平面节点(即Master节点)由数据库服务(Etcd)+其他组件服务(Apiserver.Controller-manager.Scheduler...)组成. 整个集群系统运行的交互数据都将存储到数据库服务(Etcd)中,所以Kubernetes集群的高可用性取决于数据库服务(Etcd)在多个控制平面(Master)节点构建的数据同步复制关系. 由此搭建Kubernetes的高可用集群可以选择以下两种部署方式: 使用堆叠的控制平面(Master)节点,其中…
转载自:https://blog.weiyigeek.top/2021/7-30-623.html 简述 Kubernetes(后续简称k8s)是 Google(2014年6月) 开源的一个容器编排引擎,使用Go语言开发,它支持自动化部署.大规模可伸缩.以及云平台中多个主机上的容器化应用进行管理.其目标是让部署容器化的应用更加简单并且高效,提供了资源调度.部署管理.服务发现.扩容缩容.状态 监控.维护等一整套功能, 努力成为跨主机集群的自动化部署.自动化扩展以及运行应用程序容器的平台,它支持一些…
概述 在上一篇中已经实践了 非高可用的bubernetes集群的实践 普通的k8s集群当work node 故障时是高可用的,但是master node故障时将会发生灾难,因为k8s api server不可用 会导致整个集群群龙无首 所以本篇将在上篇的基础上扩展高可用的k8s 集群 其原理是将所有node对master的api请求通过负载均衡(haproxy)指向虚拟ip(keepalived) 而此虚拟ip由所有master节点通过优先级选举 在上篇中我已经做好了k8s环境的基础虚拟机镜像文…
之前介绍Harbor私有仓库的安装和使用,这里重点说下Harbor高可用集群方案的部署,目前主要有两种主流的Harbor高可用集群方案:1)双主复制:2)多harbor实例共享后端存储. 一.Harbor双主复制高可用集群 1)主从同步harbor官方默认提供主从复制的方案来解决镜像同步问题,通过复制的方式,我们可以实时将测试环境harbor仓库的镜像同步到生产环境harbor,类似于如下流程: 在实际生产运维的中,往往需要把镜像发布到几十或上百台集群节点上.这时,单个Registry已经无法满…
七.部署flannel网络 kubernetes支持基于vxlan方式的flannel与weave网络,基于BGP路由的Calico网络,本节采用flannel网络. Flannel网络采用etcd等kv存储做集中控制,在每个host生成1个subnet,每个host上的subnet通过vxlan方式打通. 1. 创建flannel TLS证书与私钥 etcd集群启用了双向TLS认证,需要为flannel网络指定与etcd集群通信的CA与秘钥. 1)创建flannel证书签名请求 [root@k…
集群信息 集群版本:1.13.1 3个控制平面,2个worker节点 k8s-001:10.0.3.4 k8s-002:10.0.3.5 k8s-003:10.0.3.6 k8s-004:10.0.3.7 k8s-005:10.0.3.8 vip::10.0.3.9 场景 出于某些原因删除了k8s-001节点,现在需要将k8s-001节点重新作为控制平面加入集群,在加入集群过程中出错 解决 解决kubeadm加入集群时etcd健康检查失败的问题 一般直接重新加入集群的话会出现下面的问题 [kub…
在上一篇文章<搭建高可用MongoDB集群(一)——配置MongoDB> 提到了几个问题还没有解决. 主节点挂了能否自动切换连接?目前需要手工切换. 主节点的读写压力过大如何解决? 从节点每个上面的数据都是对数据库全量拷贝,从节点压力会不会过大? 数据压力大到机器支撑不了的时候能否做到自动扩展? 这篇文章看完这些问题就可以搞定了.NoSQL的产生就是为了解决大数据量.高扩展性.高性能.灵活数据模型.高可用性.但是光通过主从模式的架构远远达不到上面几点,由此MongoDB设计了副本集和分片的功能…
在上一篇文章<搭建高可用MongoDB集群(一)——配置MongoDB> 提到了几个问题还没有解决. 主节点挂了能否自动切换连接?目前需要手工切换. 主节点的读写压力过大如何解决? 从节点每个上面的数据都是对数据库全量拷贝,从节点压力会不会过大? 数据压力大到机器支撑不了的时候能否做到自动扩展? 这篇文章看完这些问题就可以搞定了.NoSQL的产生就是为了解决大数据量.高扩展性.高性能.灵活数据模型.高可用性.但是光通过主从模式的架构远远达不到上面几点,由此MongoDB设计了副本集和分片的功能…
  一.本文目的         介绍如何在同一台虚拟机上搭建高可用的Activemq服务,集群数量包含3个Activemq,当Activemq可用数>=2时,整个集群可用.         本文Activemq的集群数量为3个,分别命名为mq1,mq2,mq3   二.概念介绍 1.伪集群       集群搭建在同一台虚拟机上,3个Activemq分别使用不同的端口提供服务,启用1个为Master,其它2个为Slaver,同一时间仅Master队列提供服务 2.高可用       3个Acti…
* { font-family: "Microsoft YaHei" !important } h1 { color: #FF0 } 15套java架构师.集群.高可用.高可扩 展.高性能.高并发.性能优化.Spring boot.Redis.ActiveMQ.Nginx.Mycat.Netty.Jvm大型分布 式项目实战视频教程 视频课程包含: 高级Java架构师包含:Spring boot.Spring  cloud.Dubbo.Redis.ActiveMQ.Nginx.Mycat…
本文转自: https://www.cnblogs.com/gossip/p/5977489.html 一.本文目的         介绍如何在同一台虚拟机上搭建高可用的Activemq服务,集群数量包含3个Activemq,当Activemq可用数>=2时,整个集群可用.         本文Activemq的集群数量为3个,分别命名为mq1,mq2,mq3   二.概念介绍 1.伪集群       集群搭建在同一台虚拟机上,3个Activemq分别使用不同的端口提供服务,启用1个为Maste…
在上一篇文章<搭建高可用MongoDB集群(一)--配置MongoDB> 提到了几个问题还没有解决. 主节点挂了能否自动切换连接?目前需要手工切换. 主节点的读写压力过大如何解决? 从节点每个上面的数据都是对数据库全量拷贝,从节点压力会不会过大? 数据压力大到机器支撑不了的时候能否做到自动扩展? 这篇文章看完这些问题就可以搞定了.NoSQL的产生就是为了解决大数据量.高扩展性.高性能.灵活数据模型.高可用性.但是光通过主从模式的架构远远达不到上面几点,由此MongoDB设计了副本集和分片的功能…
1.Zookeeper安装搭建Zookeeper集群并查看各服务器的角色停止Leader并查看各服务器的角色 1.1 安装Zookeeper1)编辑/etc/hosts ,所有集群主机可以相互 ping 通(在nn01上面配置,同步到node1,node2,node3)nn01 hadoop]# vim /etc/hosts192.168.1.21 nn01192.168.1.22 node1192.168.1.23 node2192.168.1.24 node3 2)安装 java-1.8.0…
一.EMQ集群搭建实现高可用和负载均衡 架构服务器规划 服务器IP 部署业务 作用 192.168.81.13 EMQTTD EMQ集群 192.168.81.22 EMQTTD EMQ集群 192.168.81.23 EMQTTD EMQ集群 192.168.81.12(VIP:192.168.81.101) haproxy.keepalived HA和LB 192.168.81.21(VIP:192.168.81.101) haproxy.keepalived HA和LB 二.架构图 三.E…
Redis高可用(持久化.主从复制.哨兵.集群) 目录 Redis高可用(持久化.主从复制.哨兵.集群) 一.Redis高可用 1. Redis高可用概述 2. Redis高可用策略 二.Redis持久化 1. Redis持久化的功能 2. Redis持久化的两种方式 3. RDB持久化 3.1 触发条件 3.1.1 手动触发 3.1.2 自动触发 3.1.2.1 配置方式 3.1.2.2 其他自动触发机制 3.2 执行流程 3.3 启动时加载 4. AOF持久化 4.1 开启AOF 4.2 执…
第四十章LVS集群和Keepalived高可用实战 一.ARP协议 1.概念 地址解析协议,即ARP(AddressResolutionProtocol),是根据IP地址获取物理MAC地址的一个TCP/IP协议.主机发送信息时将包含目标IP地址的ARP请求广播到网络上的所有主机,并接收返回消息,以此确定目标的物理地址:收到返回消息后将该IP地址和物理地址存入本机ARP缓存中并保留一定时间,下次请求时直接查询ARP缓存以节约资源. 2.功能 OSI模型把网络工作分为七层,IP地址在OSI模型的第三…
MySQL集群概述和安装环境 MySQL Cluster是MySQL适合于分布式计算环境的高实用.高冗余版本.Cluster的汉语是"集群"的意思.它采用了NDB Cluster 存储引擎,允许在1个 Cluster 中运行多个MySQL服务器. MySQL Cluster 是一种技术,该技术允许在无共享的系统中部署"内存中"数据库的 Cluster .通过无共享体系结构,系统能够使用廉价的硬件,而且对软硬件无特殊要求.此外,由于每个组件有自己的内存和磁盘,不存在单…
在不使用redis3.0之后版本的情况下,对于redis服务端一般是采用Sentinel哨兵模式,也就是一主多备的方式. 这里,先抛出三个问题, 问题1:单节点宕机数据丢失?问题2:多节点(节点间没有主从关系)数据分片,采用sharedJedisPool,某节点宕机,导致获取不到连接问题3:主从模式下,通过哨兵配置,单个集群数据无法分片(备复制->主的数据,备无写权限) 关于问题1,解决方式,多台redis节点,采用Sentinel哨兵模式,也就是一主多备的方式. 关于问题2,这里先不谈解决方式…
1.搭建Redis Cluster主要步骤 1.配置开启节点 2.meet 3.指派槽 4.主从关系分配 2.环境说明 两台虚拟机,IP地址分别为:192.168.81.100和192.168.81.101 两台虚拟机操作系统均为:CentOS 7.5 64位 两台虚拟机系统说明: 使用yum方式安装Redis 关闭firewalld防火墙 使用两台虚拟机的7000,7001,7002端口搭建三主三从的Redis Cluster 其中192.168.81.100主机三个端口启动的Redis Se…
redis集群需要至少要三个master节点,我们这里搭建三个master节点,并且给每个master再搭建一个slave节点,总共6个redis节点,这里用一台机器(可以多台机器部署,修改一下ip地址就可以了)部署6个redis实例,三主三从,搭建集群的步骤如下: 第一步:在第一台机器的/usr/local/redis下创建文件夹redis-cluster,然后在其下面创建6个文件夹如下: mkdir -p /usr/local/redis/redis-cluster 进入redis-clus…
转载于https://codegreen.cn/2018/08/30/kubernetes-cluster-1.9.7/ 前言 在部署之前,首先感谢 手动搭建高可用的kubernetes 集群 博文的作者[阳明],本文对kubernetes版本做了升级,其中一部分内容作了一下修改及完善. 一.服务器规划 角色 IP地址 Master01&&etcd01&&haproxy01 10.100.4.181 Master02&&etcd02&&hap…
一 kubeadm介绍 1.1 概述 参考<附003.Kubeadm部署Kubernetes>. 1.2 kubeadm功能 参考<附003.Kubeadm部署Kubernetes>. 二 部署规划 2.1 节点规划 节点主机名 IP 类型 运行服务 k8smaster01 172.24.8.71 Kubernetes master节点 docker.etcd.kube-apiserver.kube-scheduler.kube-controller-manager.kubectl…
一.简介 Etcd按照官方介绍: Etcd is a distributed, consistent key-value store for shared configuration and service discovery 是一个分布式的,一致的键值对存储,主要用于共享配置和服务发现. Etcd是CoreOS团队于2013年6月发起的开源项目,它的目标是构建一个高可用的分布式键值对(key-value)数据库,基于GO语言实现. 在分布式系统中,最基本最重要的问题就是各种信息的一致性,包括对…