官方文档: https://ubuntu.com/kubernetes/docs 搭建一个基本的集群 集群ip规划 hostname ip ubuntu-1 10.0.0.10 juju-controller-1 10.0.0.11 juju-master-1 10.0.0.21 juju-master-2 10.0.0.22 juju-master-3 10.0.0.23 juju-worker-1 10.0.0.31 juju-worker-2 10.0.0.32 ubuntu-1 为juj…
使用kubeadm部署一套高可用k8s集群 有疑问的地方可以看官方文档 准备环境 我的机器如下, 系统为ubuntu20.04, kubernetes版本1.21.0 hostname IP 硬件配置(最低) ha 10.0.0.10 1核1G k8s-master0 10.0.0.20 4核4G k8s-master1 10.0.0.21 4核4G k8s-master2 10.0.0.22 4核4G k8s-work0 10.0.0.30 4核4G 基础环境配置 基础环境是不管master还…
环境 准备工作 配置ansible(deploy 主机执行) # ssh-keygen # for i in 192.168.3.{21..28}; do ssh-copy-id -i ~/.ssh/id_rsa.pub $i; done [root@deploy ~]# cat /etc/ansible/hosts [etcd] 192.168.3.21 192.168.3.22 192.168.3.23 [k8s-master] 192.168.3.24 192.168.3.25 192.1…
背景:不久前单位上线一款应用,上了生产环境之后,没过多久,便吃掉了服务器所有的内存,最后导致网站服务挂了. 在解决了这一问题之后,我发现这其实是典型的一单例模式,现分享一下. 之前存在问题的老代码如下: 这是导致问题所在的那个关键方法 public synchronized static JedisCluster getJedisCluster() { JedisPoolConfig config = new JedisPoolConfig(); config.setMaxTotal(MAX_A…
Kubernetes是Goole开源的一个容器编排引擎,它支持自动化部署.大规模可伸缩.应用容器化管理 -- 百度百科. 接触K8s也有半年多了,也基于阿里云平台搭建了包含多级服务.目前运行较为稳定的K8s集群(感兴趣的可参考 k8s云集群混搭模式,可能帮你节省50%以上的服务成本, k8s云集群混搭模式落地分享),但一直没来得及对其进行系统的学习,本系列文章还像以前Docker系列一样,以笔记的形式进行记录与分享,会包括理论与实践,感兴趣的同学可以关注,一起探索下目前较为流行的容器化及服务编排…
0.目录 整体架构目录:ASP.NET Core分布式项目实战-目录 k8s架构目录:Kubernetes(k8s)集群部署(k8s企业级Docker容器集群管理)系列目录 一.感谢 在此感谢.net core社区的帮助.感谢. 二.系列部署目录 0.部署环境规划 1.自签TLS证书及Etcd集群部署 2.flanneld网络介绍及部署 3.部署master/node节点组件及WebUI 4.服务发现DNS部署.nfs数据卷 5.k8s集群监控(heapster+InfluxDB+Grafana…
0.前言 整体架构目录:ASP.NET Core分布式项目实战-目录 k8s架构目录:Kubernetes(k8s)集群部署(k8s企业级Docker容器集群管理)系列目录 一.环境规划 软件 版本 Linux CentOS7 18.04 Kubernetes 1.9(也适用1.10) Docker 18.06-ce etcd 3.0 服务 IP 组件 master01 192.168.161.151 kube-apiserver kube-controller-manager kube-sch…
0.前言 整体架构目录:ASP.NET Core分布式项目实战-目录 k8s架构目录:Kubernetes(k8s)集群部署(k8s企业级Docker容器集群管理)系列目录 一.服务器设置 1.把每一个服务器的selinux 设置为 disabled 设置方式: vi  /etc/selinux/config 将 SELINUX=disabled,然后保存,然后 执行命令: setenforce 0,使之生效. 2.同步每一台服务器的时间(此步骤很重要,会影响后面的软件环境运行) 3.每一台服务…
0.前言 整体架构目录:ASP.NET Core分布式项目实战-目录 k8s架构目录:Kubernetes(k8s)集群部署(k8s企业级Docker容器集群管理)系列目录 一.flanneld介绍 flannel是CoreOS提供用于解决Dokcer集群跨主机通讯的覆盖网络工具.它的主要思路是:预先留出一个网段,每个主机使用其中一部分,然后每个容器被分配不同的ip:让所有的容器认为大家在同一个直连的网络,底层通过UDP/VxLAN等进行报文的封装和转发. 引用官方给出的图片 那么一条网络报文是…
0.前言 整体架构目录:ASP.NET Core分布式项目实战-目录 k8s架构目录:Kubernetes(k8s)集群部署(k8s企业级Docker容器集群管理)系列目录 1.部署master组件 master 服务器的组件有:kube-apiserver.kube-controller-manager.kube-scheduler 因此需要下载k8s master,下载地址:https://github.com/kubernetes/kubernetes/blob/master/CHANGE…
导读 目前很多互联网公司的系统都在朝着微服务化.分布式化系统的方向在演进,这带来了很多好处,也带来了一些棘手的问题,其中最棘手的莫过于数据一致性问题了.早期我们的软件功能都在一个进程中,数据的一致性可以通过数据库本地事务来加以控制.而在分布式架构下,原本比较完整的本地功能可能被拆分成了多个独立的服务进程.与之前相比,同样一笔业务订单此时可能会经历很多服务模块的处理,调用链路会变得很长,例如某电商平台,一笔购物订单可能会经过:商品中心.订单.支付.物流等多个服务的调用,而这可能还只是比较粗粒度的划…
之前写过一篇手动搭建etcd 3.1集群的文章<etcd 3.1 高可用集群搭建>,最近要初始化一套新的环境,考虑用ansible自动化部署整套环境, 先从部署etcd 3.2集群开始. 需要部署etcd的主机信息如下: node1 192.168.61.11 node2 192.168.61.12 node3 192.168.61.13 配置管理项目目录结构 ├── inventories │   ├── staging │   │   ├── group_vars │   │   │  …
Breeze部署kubernetes1.13.2高可用集群 2019年07月23日 10:51:41 willblog 阅读数 673 标签: kubernetes 更多 个人分类: kubernetes https://blog.csdn.net/networken/article/details/86550735 所知道的太少了.. 不过简单试了下 不是特别好用 国内公司做的系统.. 也可能跟我的虚拟机兼容性有关系.. breeze简介 项目地址:https://github.com/wis…
1.有了docker,为什么还用kubernetes? 访问工具层 帮助用户更高效的完成任务,包括web控制台.RESTfulAPI.CI/CD.监控管理.日志管理 PaaS服务层 为开发.测试和运维人员提供统一的平台服务 容器编排 Kubernetes 容器引擎 Docker IaaS基础设施层 提供基础运行环境,例如虚拟机.物理机.网络.存储.数据库.公有云等 2.kubernetes是什么 l  Kubernetes是Google在2014年开源的一个集群管理系统,kubernetes简称…
Hive环境的安装部署(完美安装)(集群内或集群外都适用)(含卸载自带mysql安装指定版本) Hive 安装依赖 Hadoop 的集群,它是运行在 Hadoop 的基础上. 所以在安装 Hive 之前,保证 Hadoop 集群能够成功运行. 同时,比如我这里的master.slave1和slave2组成的hadoop集群.hive的安装可以安装在任一一个节点上,当然,也可以安装在集群之外,取名为client.只需要ssh免密码通信即可. 1. 下载Hive 这里很简单,不多赘述. http:/…
1)集群规划:主机名        IP      安装的软件                     运行的进程master    192.168.199.130   jdk.hadoop                     NameNode.DFSZKFailoverController(zkfc)slaver1    192.168.199.131    jdk.hadoop                       NameNode.DFSZKFailoverController(…
系列目录 前面我们介绍了如何在windows单机以及如何基于docker部署consul集群,看起来也不是很复杂,然而如果想要把consul部署到kubernetes集群中并充分利用kubernetes集群的伸缩和调度功能并非易事.前面我们首先部署一个节点,部署完成以后获取它的ip,然后其它的ip都join到这个ip里组成集群. 前面的部署方式存在以下问题: 集群易主 我们知道,在kubernetes里,当节点发生故障或者资源不足时,会根据策略杀掉节点的一些pod转而将pod移到其它节点上.这时…
研究.NET Core已经一段时间了,一直都是在Windows上开发,这2天尝试着将公司一个很简单的内部Web项目改造成了ASP.NET Core,并且部署到Linux上.生产环境如下: Linux Ubuntu 14.04 Windows Server 2008, SQL Server 2008 EXPRESS R2 安装SDK 如果Linux服务器可以访问外网,那么按照 官网文档 的指导可以很简单的完成SDK的安装. 不巧的是我找的虚拟机只能访问内网,因此只能通过代理的方式来安装.关于如何设…
公众号关注「WeiyiGeek」 设为「特别关注」,每天带你玩转网络安全运维.应用开发.物联网IOT学习! 本章目录: 0x00 前言简述 0x01 环境准备 主机规划 软件版本 网络规划 0x02 安装部署 1.基础主机环境准备配置 2.负载均衡管理工具安装与内核加载 3.高可用HAproxy与Keepalived软件安装配置 4.配置部署etcd集群与etcd证书签发 5.Containerd 运行时安装部署 温馨提示: 由于实践篇幅太长,此处分为上下两节进行发布. 0x00 前言简述 描述…
目录 如何快速高效部署K8s集群 Rancher是什么 为什么是Rancher 1.0.安装Rancher 1.1.环境 1.2.选择Rancher版本 1.3.拉取镜像 2.0.容器启动高级选项 2.1.SSL加密方式访问Rancher 默认自签名证书: 自定义自签名证书: 2.2.启用API审核日志 2.3.Air Gap 2.4.持久化数据 3.0.启动容器 4.0.访问UI 5.0.Rancher多节点HA部署 5.1.准备: 5.2.部署需求: HA 节点 MySQL数据库 外部负载均…
Kubernetes作为容器应用的管理平台,通过对pod的运行状态进行监控,并且根据主机或容器失效的状态将新的pod调度到其他node上,实现了应用层的高可用. 针对kubernetes集群,高可用性还包含以下两个层面的考虑: etcd存储的高可用 master节点的高可用 在开始之前,先贴一下架构图: etcd作为kubernetes的中心数据库,必须保证其不是单点.不过etcd集群的部署很简单,这里就不细说了,之前写过一键部署脚本,有兴趣的同学可以往前翻. 在k8s全面容器化加上各种验证机制…
单控制平面不符合 HA 要求,但用于开发/测试环境不会有任何问题,如果资源足够的话(10台以上服务器,3台用于APIserver.3台用于 etcd 存储.至少3台用于工作节点.1台作为负载均衡),可以部署多控制平面的高可用集群环境.下面是高可用集群拓补结构,供参考: 安装步骤其实大同小异,高可用多了几个步骤,安装时可参看官网文档,也比较好操作.本文着重记录单控制平面K8S集群安装步骤. 一.准备工作 硬件资源要求,4核心以上CPU,8GB以上内存,所有服务器间网络正常通信,Ubuntu 16.…
转载自:https://www.qikqiak.com/post/deploy-kafka-ha-on-k8s/ Apache Kafka 是目前最流行的分布式消息发布订阅系统,虽然 Kafka 非常强大,但它同样复杂,需要一个高可用的强大平台来运行.在微服务盛行,大多数公司都采用分布式计算的今天,将 Kafka 作为核心的消息系统使用还是非常有优势的. 如果你在 Kubernetes 集群中运行你的微服务,那么在 Kubernetes 中运行 Kafka 集群也是很有意义的,这样可以利用其内置…
本博客搭建k8s集群1.12.2版本 1. 准备2台以上最低2核4G的服务器 2. 关闭机器的防火墙 12 systemctl disable firewalldsystemctl stop firewalld 生产环境下建议不要关闭防火墙,只开放k8s所用的端口 3. 配置docker和k8s仓库为阿里云镜像仓库 首先选择一台性能比较好的机器作为主节点 1 wget -O /etc/yum.repos.d/docker-ce.repo https://mirrors.aliyun.com/do…
系列目录 在Kubernetes集群中,API Server是集群管理API的入口,由运行在Master节点上的一个名为kube-apiserver的进程提供的服务. 用户进入API可以通过kubectl.客户端库或者http rest,User 或者 Service Account可以被授权进入API.当一个请求到达API时, 往往要经过几个阶段的安全控制,在一个典型的应用集群中,API Server通常会使用自签名的证书提供HTTPS服务,同时开启认证与授权等安全机制. 通常,在Kubern…
作者 | 声东 阿里云售后技术专家 文章来源:Docker,点击查看原文. 以我的经验来讲,理解 Kubernetes 集群服务的概念,是比较不容易的一件事情.尤其是当我们基于似是而非的理解,去排查服务相关问题的时候,会非常不顺利. 这体现在,对于新手来说,ping 不通服务的 IP 地址这样基础的问题,都很难理解:而就算对经验很丰富的工程师来说,看懂服务相关的 iptables 配置,也是有相当的挑战的. 今天这边文章,我来深入解释一下 Kubernetes 集群服务的原理与实现,便于大家理解…
目录 介绍 为什么要使用Redis? 什么是Redis群集? 在Kubernetes中部署Redis集群 从 GitHub 上下载: 创建pv 创建statefulset 创建service 初始化 Redis Cluster 验证集群部署 测试Redis集群 介绍 Redis代表REmote DIctionary Server是一种开源的内存中数据存储,通常用作数据库,缓存或消息代理.它可以存储和操作高级数据类型,例如列表,地图,集合和排序集合. 由于Redis接受多种格式的密钥,因此可以在服…
概述 在federation v2多集群环境中,通过前面几篇文章的介绍,我们可以很容易的进行服务多集群部署,考虑到业务部署和容灾需要,我们通常需要调整服务在各个集群的流量分布.本文下面简单介绍如何在阿里云上进行多集群流量调度. 环境准备 参考容器服务kubernetes federation v2实践一:基于External-DNS的多集群Ingress DNS实践 进行两个联邦集群的join,完成External-DNS.FederatedDeployment.FederatedService…
我们这里的dubbo-consumer是dubbo-demo-service的消费者: 我们之前已经在jenkins配置好了流水线,只需要填写参数就行了. 由于dubbo-consumer用的gitee的私有仓库,需要添加公钥,这里大家可以自己找个client服务来做实验. 下面是我们通过jenkins构建的镜像,已经上传到我们的harbor私有仓库当中了: 这里我们构建了两次,构建了两个镜像,11bb9cd这个用来做模拟生产发版更新实验. 准备资源配置清单: 1.dp.yaml  红色部分根据…
介绍 Redis代表REmote DIctionary Server是一种开源的内存中数据存储,通常用作数据库,缓存或消息代理.它可以存储和操作高级数据类型,例如列表,地图,集合和排序集合. 由于Redis接受多种格式的密钥,因此可以在服务器上执行操作,从而减少了客户端的工作量. 它仅将磁盘用于持久性,而将数据库完全保存在内存中. Redis是一种流行的数据存储解决方案,并被GitHub,Pinterest,Snapchat,Twitter,StackOverflow,Flickr等技术巨头所使…