摘要: 动静分离,提高网页访问速度 阅读全文
posted @ 2017-09-20 23:38 KEL 阅读(2625) 评论(4) 推荐(2) 编辑

序言

    很多事情说起来容易,做起来却很难,开始的时候就已经经历了各种选择,而开始才是一个真正开始。

    监控系统需要监控很多资源,主要需要监控什么,为什么需要监控?

监控

    打开脑洞,那是个无底洞,那是记忆的深渊,是否能改变或者是否是在准备?

    docker的监控系统,有好几种监控方案,重在合适,prometheus作为一种集各种功能于一身的获取数据,存储数据,展示数据,告警功能于一身,这种一套完备的监控方案。

    而对于weave scope来说,也是一种分布式的监控容器,最大的亮点在于在界面上能直接进入shell执行界面,就像登录了主机一样执行各种命令。

    在docker中,其实本身就自带了监控的命令,只不过一般不会用来跨主机执行,从而这种是主要用来登录host主机,直接执行docker命令来查看所有容器的容器的方法。

 

 

    在以上的命令中ls主要用来查看运行状态的容器,而对于其他状态的容器,可以使用参数,和linux命令是一样;而top主要是用来查看进程的信息,其实这个和linux命令的top略微有所区别,和命令ps的命令一样的,但是ps被ls以前的功能所占用;而stats主要是用来查看容器的性能数据,包括使用的内存,cpu,网络IO,块IO,进程号,那么如何来设置这些数据呢?

    设置相关资源限定,也就是几个参数来限制,如上,主要设置了内存使用的大小为200M,使用swap空间大小为200M,CPU使用的权重为512,默认为1024,也可以设置cpu使用的颗数,然后设置了磁盘的读的速度。

 

为什么需要设置资源限定?

    为什么需要设置资源限定?我有一台物理主机,CPU56颗,内存256G,带宽万M网卡,能跑多少个容器?

    资源限定?在一个集群中,有多少台物理机器组成,能给客户使用多少内存,多少CPU,多少存储,多少网络。

    在VM的时代,创建VM的时候,也要进行规划,一台主机上最多可以创建几个VM,分配多少的计算,存储和网络资源。

    再是工作的时候,公司给你开多少一个月?有多少预算,资金链上有多少钱?

    对整个集群中资源进行划分了后,那么就要涉及到调度,在哪个host上创建这个容器,在哪个vm上创建这个容器,这就是所谓的规划。。

 

 

容器如何做资源限定

    容器来进行资源的限定和资源隔离呢?

    在linux上怎么来进行资源的隔离?chroot,使用不同的文件系统来隔离用户,隔离用户的权限,容器也不例外,使用的是namespace来进行隔离,各种各样的命令空间,在各种编程语言中也是可以看到。

    在容器的资源隔离的时候,主要使用了6种:

    UTS:主要用来设定容器的主机名称和域名,主要的作用是让容器在网络上成为一个单独的节点,而不是宿主机上的一个进程。unix time-sharing system。。分时系统。。ntp?还是cpu的时间片呢?

    IPC:进程间通信,有独立的通信空间,在一个namespace中的进程可以相互通信。inter process communication。

    PID:进程隔离,和宿主机上进程进行隔离。

    network:网络隔离,有独立的网络栈,有独立的端口,网络设备,这也就是为什么每次创建一个容器网络的时候,会有一些桥接设备,host模型的网络使用。

    user:用户隔离,主机上的用户和容器中的用户会有一层映射关系,但是不会相互影响。

    mount:挂载的文件系统,主要使用文件系统的隔离,可以理解为chroot的一种实现方式。。。再想想容器的文件系统组成,unfs,联合文件系统,容器的读写层,改变了容器的内容,不会影响使用相同镜像的容器。

    而资源的限制则是使用cgroup来进行控制的。在相关的目录中可以找到,如下:

    而这种数据还能在docker inspect nginx中找到,如下:

    从而在监控的时候可以使用不同的方式来进行监控。

总结

 

    1、 在监控容器的时候,几个关键指标,容器运行的数量,容器分配的计算(cpu和内存),网络,存储资源。

 

    2、 监控的方式多样,可以使用基本的docker命令来进行监控,也可以直接查看相应目录下的文件获取对应的信息。

 

    3、 容器的资源分配,主要涉及到容器的资源分配和规划,就算是在集群中,底层无需考虑,但是每个容器占用的最大资源需要进行限制,不然可能耗费掉整个集群的计算能力、网络能力或者存储能力。

 

    

    老了,昨天想的事,今天就记不住了。

 

    忘记昨天,拥抱未来,不是更好?

 

    如果忘记了昨天,随着年龄的增大,我又是什么?我是谁?我在哪里?我在做什么?

 

    如果我的昨天不能提升我的阅历,我的境界,我的道,我昨天有什么意义?

 

    

    

posted @ 2018-03-11 12:25 KEL 阅读(328) 评论(0) 推荐(0) 编辑
摘要: Xshell显示图形化界面 阅读全文
posted @ 2017-12-03 12:38 KEL 阅读(41089) 评论(0) 推荐(2) 编辑
摘要: 理论部分 会话也就是session,主要存储在服务器端,用来识别用户的身份。 在浏览器中向服务端发送请求的时候,不是http协议就是https协议,而两种协议在发送请求的时候,都是基于http协议,http协议又是无状态的,也就是stateless,在每次用户发送请求过去的时候,这都是一次新的连接, 阅读全文
posted @ 2017-09-26 21:35 KEL 阅读(1113) 评论(0) 推荐(0) 编辑
摘要: 起源 在大部分的生产环境中,基本上使用的都是java程序,从而促进了各种应用程序中间件的产生,在这里大概有几种,tomcat作为最著名的开源servlet容器,jboss也是开源的,而且有管理界面,主要是redhat的,而weblogic则是oracle的商业中间件,而webspare则是IBM的商 阅读全文
posted @ 2017-09-25 09:00 KEL 阅读(1179) 评论(0) 推荐(1) 编辑
摘要: 讲一个故事 ​魔兽世界还是很好玩的,经典的游戏。。。为了联盟!!! ​魔兽世界多人配合的游戏,分为各种职业,互相配合,在进行统计数据的时候,会根据你的数据来查看你对团队做出的贡献。 ​每天都在玩,每天都在看各种数据和手法,每次也能看到数据排名靠前,但是,突然有一天,有人说,你在那里刷假数据,靠刷的, 阅读全文
posted @ 2017-09-24 11:16 KEL 阅读(1064) 评论(0) 推荐(2) 编辑
摘要: 起源 在一般的web服务器中,都会开启压缩功能,也就是deflate或者是gzip的压缩。 开启压缩功能主要的目的是为了减少传输的带宽,从而当服务器响应给客户端的时候,会大大减少传输的数据,代价就是在服务器段需要消耗cpu时钟周期,因为压缩是在服务器端进行的,并且压缩还是比较损耗cpu的。 在进行压 阅读全文
posted @ 2017-09-13 23:46 KEL 阅读(1047) 评论(3) 推荐(1) 编辑
摘要: apache如何设置缓存 阅读全文
posted @ 2017-09-11 22:02 KEL 阅读(3390) 评论(0) 推荐(0) 编辑
摘要: http协议 长连接 阅读全文
posted @ 2017-08-30 18:53 KEL 阅读(1143) 评论(0) 推荐(0) 编辑
摘要: 人事? 人事不干人事,这算个什么事? 无论是白天还是黑夜,总有那么几个鬼鬼祟祟的称之为人事的东西在抓人,抓别人的把柄?抓别人玩游戏,抓别人看小说。。。这尼玛是一个人干的活?这是一个人应该干的事?那么人事到底算个什么事?是东西呢还是不是个东西呢?搞不懂人事到底是不是东西,好烦恼。。。。。 人事的另外一 阅读全文
posted @ 2017-08-20 22:09 KEL 阅读(1778) 评论(0) 推荐(0) 编辑
点击右上角即可分享
微信分享提示