K8S学习笔记之kubernetes 日志架构】的更多相关文章

0x00 概述 应用程序和系统日志可以帮助我们了解集群内部的运行情况,日志对于我们调试问题和监视集群情况也是非常有用的.而且大部分的应用都会有日志记录,对于传统的应用大部分都会写入到本地的日志文件之中.对于容器化应用程序来说则更简单,只需要将日志信息写入到 stdout 和 stderr 即可,容器默认情况下就会把这些日志输出到宿主机上的一个 JSON 文件之中,同样我们也可以通过 docker logs 或者 kubectl logs 来查看到对应的日志信息. 但是,通常来说容器引擎或运行时提…
0x00  Kubernetes简介 Kubernetes(K8S)是Google开源的容器集群管理系统,其设计源于Google在容器编排方面积累的丰富经验,并结合社区创新的最佳实践. K8S在Docker容器技术的基础之上,大大地提高了容器化部署应用简单高效.经过几年的快速发展,K8S已经成为建设容器云平台的首选方案. 2015年7月,Kubernetes v1.0正式发布,截止到2018年6月28日最新稳定版本是v1.11. 该版本发布主要增加了备受关注功能,分别为:基于IPVS的集群内负载…
在开始介绍k8s持久化存储前,我们有必要了解一下k8s的emptydir和hostpath.configmap以及secret的机制和用途. 0x00 Emptydir EmptyDir是一个空目录,他的生命周期和所属的 Pod 是完全一致的,EmptyDir主要作用可以在同一 Pod 内的不同容器之间共享工作过程中产生的文件.如果Pod配置了emptyDir类型Volume, Pod 被分配到Node上时候,会创建emptyDir,只要Pod运行在Node上,emptyDir都会存在(容器挂掉…
0x00 概述 很多情况下我们为某一应用做好镜像,当我们想修改其中的一些参数的时候,就变得比较麻烦,又要重新制作镜像,我们是不是有一种方式,让镜像根据不同的场景调用我们不同的配置文件呢,那我们就需要用到 k8s 的另外一种资源,那就是 ConfigMap. 我们知道,在几乎所有的应用开发中,都会涉及到配置文件的变更,比如说在web的程序中,需要连接数据库,缓存甚至是队列等等.而我们的一个应用程序从写第一行代码开始,要经历开发环境.测试环境.预发布环境只到最终的线上环境.而每一个环境都要定义其独立…
0x00 概述 在Kubernetes中有几种不同的方式发布应用,所以为了让应用在升级期间依然平稳提供服务,选择一个正确的发布策略就非常重要了. 选择正确的部署策略是要依赖于我们的业务需求的,下面我们列出了一些可能会使用到的策略: 重建(recreate):停止旧版本部署新版本 滚动更新(rolling-update):一个接一个地以滚动更新方式发布新版本 蓝绿(blue/green):新版本与旧版本一起存在,然后切换流量 金丝雀(canary):将新版本面向一部分用户发布,然后继续全量发布 A…
本文内容 本文致力于介绍K8s一些基础概念与串联部署应用的主体流程,使用Minikube实操 基础架构概念回顾 温故而知新,上一节[K8S学习笔记]初识K8S 及架构组件 我们学习了K8s的发展历史.基础架构概念及用途,本节讲的内容建立在其上,有必要把之前的架构小节提出来回顾下: K8s架构分为控制平台(位于的Master节点)与执行节点Node 控制平台包含: kube-apiserver(访问入口,接收命令) etcd(KV数据库,保存集群状态与数据) kube-scheduler(监控节点…
0. angular 与angular js angular 1.0 google改名为Angular js 新版本的,2.0以上的,继续叫angular,但是除了名字还叫angular,已经是一个全新的开发框架了. Angular 是一个用 HTML 和 TypeScript 构建客户端应用的平台与框架. Angular 本身使用 TypeScript 写成的.它将核心功能和可选功能作为一组 TypeScript 库进行实现,你可以把它们导入你的应用中. 全新的Angular 是一个用 HTM…
Andorid:日常学习笔记(3)——掌握日志工具的使用 使用Android的日志工具Log 方法: Android中的日志工具类为Log,这个类提供了如下方法来供我们打印日志: 使用方法: Log.d("MainActivity","onCreate execute"); 第一个参数tag:一般传入当前类名就好,主要用于队打印信息进行过滤. 第二个参数:msg,具体想打印的内容. 如: public class MainActivity extends AppCo…
一.虚拟化技术 1.什么是虚拟化技术 虚拟化,是指通过虚拟化技术将一台计算机虚拟为多台逻辑计算机.在一台计算机上同时运行多个逻辑计算机,每个逻辑计算机可运行不同的操作系统,并且应用程序都可以在相互独立的空间内运行而互不影响,从而显著提高计算机的工作效率. 虚拟化使用软件的方法重新定义划分IT资源,可以实现IT资源的动态分配.灵活调度.跨域共享,提高IT资源利用率,使IT资源能够真正成为社会基础设施,服务于各行各业中灵活多变的应用需求. 2.虚拟化的类型 全虚拟化(Full virtualizat…
前言 在上一节的学习中.我们已经可以通过最基本的 Docker Swarm 创建集群,然后在集群里面加入我们需要运行的任务 以及任务的数量 这样我们就创建了一个服务. 当然,这样的方式在我们本地虚拟机的情况下,完全适用,并且对于 容器 虚拟主机 swarm 创建节点组成集群 有一个很好的理解作用.本节将继续学习关于 Kubernetes (K8s) 的内容. Kubernetes 建立在 Google 15年的生产工作负载管理经验的基础上,结合了来自社区的最佳理念和实践. Kubernetes…