1.前言 在当下微服务架构盛行的时代,用户希望应用程序时时刻刻都是可用,为了满足不断变化的新业务,需要不断升级更新应用程序,有时可能需要频繁的发布版本.实现"零停机"."零感知"的持续集成(Continuous Integration)和持续交付/部署(Continuous Delivery)应用程序,一直都是软件升级换代不得不面对的一个难题和痛点,也是一种追求的理想方式,也是DevOps诞生的目的. 2.滚动发布 把一次完整的发布过程,合理地分成多个批次,每次发布…
k8s 集群管理和微服务 适合做啥 都知道k8s是集群 适合微服务 有很多教程 但你可以先了解他能干啥 traefix 是负载均衡工具 k8s 适合部署无状态依赖的微服务 可以按需求开启多个微服务 管理工具能自动发现并均衡 像redis sql ceph(对象存储)这些 支撑 和有状态依赖的服务 并不适合k8…
     前面文章已经演示过,将我们的示例微服务程序DaprTest1部署到k8s上并运行.当时用的k8s是Docker for desktop 自带的k8s,只要在Docker for desktop中启用就可以了.但是我发现,启用了k8s后,Docker for desktop会消耗大量的系统资源,导致系统变得很慢.据说windows 上的WSL 2 性能不错,这次我尝试在WSL Linux上安装K8s并部署我们的微服务,看看还会不会出现系统资源消耗过大的情况.      关于网络:我用的是…
LaoCat-Spring-Cloud-Scaffold 一款以spring cloud alibab 为核心的微服务框架,主要目标为了提升自己的相关技术,也为了给企业与个人提供一个零开发基础的微服务架构,进行开发,开源市场的项目大都有自己的核心业务定位,LaoCat-Spring-Cloud-Scaffoldan 暂时没有自己的核心业务,也许后边会补充.也许不会. 项目短期目标是要在现有结构的基础上加入上述的一些中间件. 项目进度 DB • 设计权限db        0% • 新建权限相关d…
写在前面 Ingress 英文翻译 进入;进入权;进食,更准确的讲就是入口,即外部流量进入k8s集群必经之口.这到大门到底有什么作用?我们如何使用Ingress?k8s又是如何进行服务发现的呢?先看一张图: 备注:此图来源我转载的一篇博客NodePort,LoadBalancer还是Ingress?我该如何选择 - kubernetes,特此说明. 原理 虽然k8s集群内部署的pod.server都有自己的IP,但是却无法提供外网访问,以前我们可以通过监听NodePort的方式暴露服务,但是这种…
转:https://www.cnblogs.com/justmine/p/8991379.html 写在前面 Ingress 英文翻译 进入;进入权;进食,更准确的讲就是入口,即外部流量进入k8s集群必经之口.这到大门到底有什么作用?我们如何使用Ingress?k8s又是如何进行服务发现的呢?先看一张图: 备注:此图来源我转载的一篇博客NodePort,LoadBalancer还是Ingress?我该如何选择 - kubernetes,特此说明. 原理 虽然k8s集群内部署的pod.server…
作者| 阿里巴巴资深技术专家.CNCF 9个 TCO 之一 李响 一.什么是 Kubernetes Kubernetes,从官方网站上可以看到,它是一个工业级的容器编排平台.Kubernetes 这个单词是希腊语,它的中文翻译是"舵手"或者"飞行员".在一些常见的资料中也会看到"ks"这个词,也就是"K8s",它是通过将 8 个字母"ubernete "替换为"8"而导致的一个缩写. K…
html文字滚动代码 <marquee style="WIDTH: 388px; HEIGHT: 200px" scrollamount="2" direction="up" > <div align="left" ><br /> </div > <center ><font face="黑体" color="#008000&quo…
关于View绘制系列的文章已经完成了四篇了,前面四篇文章主要带小伙伴们熟悉一下View的体系的整体框架.View的测量以及布局等过程,从本篇博客开始,我们就来看看View的绘制过程.View的绘制涉及到许多细小的知识点,一篇博客很难全部介绍清楚,所以我打算采用农村包围城市的方式,先把这里边会涉及到的各种琐碎的知识点给小伙伴们介绍一遍,然后我们再来看View绘制的整体流程,及draw方法和onDraw方法到底是怎么回事.OK,那么本篇博客我们就先来看看View绘制过程中涉及到的第一个问题,View…
  前  言 JRedu JQuery是什么相信已经不需要详细介绍了.作为时下最火的JS库之一,JQuery将其"Write Less,Do More!"的口号发挥的极致.而帮助JQuery实现"写的更少,做的更多"的重要一环就是JQuery的插件,成千上万的JQ插件帮助我们实现了几乎你所需要的所有功能,大大简化了程序猿的工作量. 但是,别人的终究是别人的,吃别人的永远长大不!那么,我们能不能自己定义一款插件呢?Of Course!当前可以!今天就让我们来一探JQu…
1.浅析整个监控流程 heapster以k8s内置的cAdvisor作为数据源收集集群信息,并汇总出有价值的性能数据(Metrics):cpu.内存.网络流量等,然后将这些数据输出到外部存储,如InfluxDB,最后就可以通过相应的UI界面显示出来,如grafana. 另外heapster的数据源和外部存储都是可插拔的,所以可以很灵活的组建出很多监控方案,如:Heapster+ElasticSearch+Kibana等等. 2.创建k8s资源对象 使用官方提供的yml文件有一些小问题,请参考以下…
1.浅析监控方案 heapster是一个监控计算.存储.网络等集群资源的工具,以k8s内置的cAdvisor作为数据源收集集群信息,并汇总出有价值的性能数据(Metrics):cpu.内存.network.filesystem等,然后将这些数据输出到外部存储(backend),如InfluxDB,最后再通过相应的UI界面进行可视化展示,如grafana. 另外heapster的数据源和外部存储都是可插拔的,所以可以很灵活的组建出很多监控方案,如:Heapster+ElasticSearch+Ki…
1.浅析k8s配置信息 Secret 以密文的形式存储数据,可以用来保存一些敏感信息,例如:OAuth tokens.私钥.密码.数据库连接.事件总线连接等. ConfigMap 以明文的形式存储数据,可以用来保存一些非敏感信息,例如:应用的配置信息. k8s为Secret和ConfigMap提供了4种创建方式(字面量.文件.环境文件.yaml),其实归类来看就是两种创建方式,字面量和文件. 1.1 如何注入到微服务应用程序呢 ? k8s已经为我们提供了两种方式,即通过存储卷(volume)和环…
1.预备工作 unbuntu 16.04 or above docker for linux kubernetes for linux 集群环境 2.使用vs2017创建一个web api应用程序,并打包镜像到本地. 3.推送本地镜像到docker hub 4.编写k8s资源配置文件(yml) 备注:kubernetes使用的是“声明式模型”,即需要用户“描述”和“声明”其所希望实现的系统最终状态,kubernetes会努力帮你实现这个状态,模型的声明是通过编写yml文件来体现. hello-w…
liveness与readiness的探针工作方式源码解析 liveness和readiness作为k8s的探针,可以对应用进行健康探测. 二者支持的探测方式相同.主要的探测方式支持http探测,执行命令探测,以及tcp探测. 探测均是由kubelet执行. 执行命令探测 func (pb *prober) runProbe(p *v1.Probe, pod *v1.Pod, status v1.PodStatus, container v1.Container, containerID kub…
1.本文档以eShopOnContainers.sevices.identity为描述对象,并包含docker for windows的部分配置流程. 2.前置环境:win10操作系统.安装VS2017.NODEJS(下载LTS版本).docker.hyper-v.sql2012. 3.VS2017编译Identity.Api.部分Nuget可能需要更新依次更新.注:部分包提示版本低,我的做法是更新为最新的. 4.VS2017选择发布Identity.Api. 5.运行docker.如果在win…
Kubernetes 这个单词来自于希腊语,含义是舵手或领航员 .其词根是 governor 和 cybernetic.K8s 是它的缩写,用 8 字替代了"ubernete". 容器 在我们尝试了解 Kubernetes 之前,让我们花一点时间来澄清容器是什么,以及它们为什么如此受欢迎. 毕竟,在不知道容器是什么的情况下谈论容器编排器(Kubernetes)是没有意义的! 容器 "容器"是一个用来存放你放入的所有物品的容器.像应用程序代码,依赖库以及它的依赖关系一…
实现openfire消息记录通常有两种方式,修改服务端和添加消息记录插件. 今天,简单的说明一下修改服务端方式实现消息记录保存功能. 实现思路 修改前: 默认的,openfire只提供保存离线记录至ofOffline表中.当发送一条消息时,判断用户是否在线,若为true,不保存消息:若为fasle,保存消息至离线消息表中. 修改后: 仿照保存离线消息,用户每发送一条消息,将消息存放在ofHistory表中,ofHistory表结构同ofOffline 实现步骤: 1.修改初始数据库文件,路径sr…
随着微服务架构的流行,迈向云原生的趋势,容器化微服务就成为了持续集成最好的手段,镜像成为了持续交付最好的产物,容器成为了镜像运行最好的环境,kubernetes成了部署容器最好的生态系统和规范.实践出真知,自学习kubernetes以来,写了一系列文章,首先,为了发现知识盲点,查漏补缺,将知识点形成体系,决定将之前写的文章做一个汇总,方便查看:其次,希望打通微服务落地kubernetes的任督二脉,探索出一种工作模式,建立一条高度自动化的流水线,于是踏上了西天取经的道路,并梳理出了西游路线图,希…
转载自:http://blog.csdn.net/enweitech/article/details/52582918 看了几周Spring相关框架的书籍和官方demo,是时候开始总结下这中间的学习感悟. 首先,最想说的是,当你要学习一套最新的技术时,官网的英文文档是学习的最佳渠道.因为网上流传的多数资料是官网翻译而来,很多描述的重点也都偏向于作者自身碰到的问题,这样就很容易让你理解和操作出现偏差,最开始我就进入了这样误区.官网的技术导读真的描述的很详细,虽然对于我们看英文很费劲,但如果英文不是…
原文地址:http://blog.csdn.net/enweitech/article/details/52582918 看了几周spring相关框架的书籍和官方demo,是时候开始总结下这中间的学习感悟. 首先,最想说的是,当你要学习一套最新的技术时,官网的英文文档是学习的最佳渠道.因为网上流传的多数资料是官网翻译而来,很多描述的重点也都偏向于作者自身碰到的问题,这样就很容易让你理解和操作出现偏差,最开始我就进入了这样误区.官网的技术导读真的描述的很详细,虽然对于我们看英文很费劲,但如果英文不…
前言 想说的话 [一起学源码-微服务-Netflix Eureka]专栏到这里就已经全部结束了. 实话实说,从最开始Eureka Server和Eureka Client初始化的流程还是一脸闷逼,到现在Eureka各种操作都了然于心了. 本专栏从12.17开始写,一直到今天12.30(文章在平台是延后发布的),这将近半个月的时间确实收获很多.每天都会保持一定的时间学习,只要肯下功夫,没有学不会的东西. 2020年将继续保持学习的节奏,自己定的目标是把spring cloud几个重要的组件都学一遍…
深入学习微框架:Spring Boot:   http://www.infoq.com/cn/articles/microframeworks1-spring-boot/ Spring Boot--2分钟构建spring web mvc REST风格HelloWorld:  http://jinnianshilongnian.iteye.com/blog/1997192 [详解]为什么选择Spring Boot作为微服务的入门级微框架:  http://www.csdn.net/article/…
1. Spring Cloud Alibaba 简介    Spring Cloud Alibaba是阿里巴巴为分布式应用提供的一站式解决方案,能够更方便快捷地搭建分布式平台,nacos拥有着替换eureka server ,spring cloud config等组件的目标和意图,旨在能够更简便快速地去管理服务.注册服务.管理配置. 2. Spring Cloud Alibaba +Nacos搭建微服务架构 集成nacos 1. 启动nacos server nacos 官方学习文档: htt…
js实现的新闻列表垂直滚动实现详解:新闻列表垂直滚动效果在大量的网站都有应用,有点自然是不言而喻的,首先由于网页的空间有限,使用滚动代码可以使用最小的空间提供更多的信息量,还有让网页有了动态的效果,更为美观一些,下面就通过代码实例详细介绍一下如何实现此效果.代码如下: <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <meta name="author"…
Kubernetes K8S之鉴权概述与RBAC详解 K8S认证与授权 认证「Authentication」 认证有如下几种方式: 1.HTTP Token认证:通过一个Token来识别合法用户. HTTP Token的认证是用一个很长的特殊编码方式的并且难以被模仿的字符串来表达客户的一种方式.每一个Token对应一个用户名,存储在API Server能访问的文件中.当客户端发起API调用请求时,需要在HTTP Header里放入Token. 2.HTTP Base认证:通过用户名+密码的方式认…
k8s之yaml文件详解 目录 k8s之yaml文件详解 1. k8s支持的文件格式 2. YAML语言格式 3. 查看api资源版本标签 4. 编写nginx-test.yaml资源配置清单 4.1 编写资源配置清单 4.2 创建资源对象 4.3 查看创建的pod资源 5. 创建service服务对外提供访问并测试 5.1 编写nginx-svc-test.yaml 5.2 创建资源对象 5.3 查看创建的service 5.4 访问测试 6. 详解k8s中的port 7. 试运行生成yaml…
前言:该系列文章,围绕持续集成:Jenkins+Docker+K8S相关组件,实现自动化管理源码编译.打包.镜像构建.部署等操作:本篇文章主要描述Pipeline流水线用法. 一.Webhook原理 Pipeline流水线任务通常情况下都是自动触发的,在Git仓库中配置源码改动后通知的地址即可. 例如在Gitee仓库中,基于WebHook的配置,可以在向仓库push代码后,自动回调预先设定的请求地址,从而触发代码更新后的打包动作,基本流程如下: 这里涉及到两个核心配置: Gitee回调:即仓库接…
转载请标明出处:http://blog.csdn.net/zhaoyanjun6/article/details/78112003 本文出自[赵彦军的博客] 一:概述 相信大家在使用Android Studio的时候,或多或少的会使用一些插件,适当的配合插件可以帮助我们提升一定的开发效率,更加快乐.例如: https://github.com/zzz40500/GsonFormat 可以帮助我们从Gson转化为实体类 https://github.com/avast/android-butter…
Gluserfs详解 排版看着不舒服的,可以查看[我的简书](https://www.jianshu.com/p/0340e429431b) doc home:https://docs.gluster.org/en/latest/Quick-Start-Guide/Architecture/ ⚠️本文主要对官网进行了翻译,更方便记录查看,解释有误的地方请大家指出,架构整理和源码详解会在之后相继发布文章. FUSE GlusterFS is a userspace filesystem. This…