12大关键特性-后Kubernetes时代-带你系统梳理K8S (十二个关键人)

教程大全 2025-07-15 08:15:02 浏览

后Kubernetes时代,带你系统梳理K8s 12大关键特性

2018-03-15 10:51:15Kubernetes如今风靡一时,所有主要的云服务提供商都将其作为部署云原生应用的解决方案。Kubernetes有哪些显著的特性和工具优势,让企业开始接受它?本文作者给出了系统的梳理。

导读:

Kubernetes如今风靡一时,所有主要的云服务提供商都将其作为部署云原生应用的解决方案。Kubernetes有哪些显著的特性和工具优势,让企业开始接受它?本文作者给出了系统的梳理。

“Action without orchestration is burn out; orchestration w/o action is management.”

没有编排的行动是完蛋的,没有行动的编排是管理,行动加上编排是领导。― Orrin Woodward”

它是一个由谷歌开始的开源项目,从Borg衍生而来,在谷歌内部使用了好几年,现在用于容器管理。目前由CNCF托管。

Kubernetes(缩写为K8S)是一种抽象,它通过容器来优化CPU和内存等资源的利用率,从而可以跨多个节点高效地进行应用程序分发。K8S可以在裸金属或任何云基础设施提供商的任何地方运行。这个新工具是云无关的,聚焦于在基础设施内部部署和调度容器,而不是直接利用节点/主机。

K8S提供的一些平台特性是:

Kubernetes 架构

Kubernetes集群由主节点和一组worker/从属节点组成。

Kubernetes的主节点组成部分是:

安装在Kubernetes节点中的组件是:

对于高可用和容错的Kubernetes生产和部署,需要多个主节点和一个单独的etcd集群。如果运行了三个API服务器,则需要一个网络负载平衡器来正确地将负载分配到服务器。***剩下的问题是需要三个角色来管理控制器管理器和调度器以维护集群状态和分配节点。为了更高效、更可靠地执行它,只有一个参与者应该执行实际的更改,但是在机器宕机的情况下仍然需要其他实例。为了解决这个问题,我们可以在API中使用lease-lock 来执行主选,而使用它的标志是leader- elect。

Kubernetes通过以下任一种方式实现从Pod到Pod的联网:

它们允许在集群中进行Pod和Pod之间的通信,并为每个Pod提供***的IP地址。

Kubernetes关键特性

Pod: Collection of Containers容器集

pod是K8S中的一个部署单元,它有一个单独的IP地址。在它内部,Pause容器通过持有一个网络的名称空间、端口和ip地址来处理网络,而这个地址又被pod中的所有容器使用。

12大关键特性

ReplicationController

ReplicationController确保在给定的时间内启动和运行所需的容器数量。Pod模板用于定义容器镜像标识符、端口和标签。使用liveness Probes,它可以自动治愈pods,并按照期望的状态维持pods数量。也可以通过使用kubectl来手动控制副本计数。

存储管理

Pods本质是短暂的——任何储存在pod或容器中的信息都会丢失。为了存储数据,一个持久的系统是必需的,即使在一个pod被杀死或重新调度之后,如Amazon Elastic Block Storage (EBS),谷歌GCE PD,或一个分布式文件系统,如网络文件系统(NFS)或Gluster文件系统(GFS)。

资源监控

监控是成功运行基础设施的关键之一,它是可靠性等级的基础。Heapster是一个从kubelet收集指标的插件,与cAdvisor集成。cAdvisor用于收集与运行容器的CPU、内存、I/O和网络统计数据相关的指标。由Heapster收集的数据存储在influx DB中,并使用Grafana在UI中显示。还有其他可使用的接收器,如Kafka或Elastic Search,可以用于存储数据并显示在用户界面中。

健康检查

kubernetes的健康检查由kubelet代理完成。它分为liveness 和 readiness probes两种。

处理程序主要有三种类型:

每个probe通常有三个结果:

水平自动伸缩功能

自动伸缩使用基于负载的计算资源。K8S scale pod自动使用Horizontal Pod Autoscaler对象,从Heapster获取度量数据,并相应地减少或增加pod的数量。例如,如果自动伸缩是基于内存利用率,那么控制器就会开始在pod中观察内存使用情况,并根据容量对该副本计数进行扩展。

服务发现

Kubernetes pods是短暂的,ReplicationController 在任何节点上动态创建它们,因此在集群中发现服务是一个挑战。服务需要发现一个IP地址和动态的端口,以便在集群中进行通信。

有两种主要的方法来找到它——环境变量(Environment variables)和DNS。

更可取的是基于DNS的服务发现,它可以作为集群附加组件使用。跟踪集群中的新服务,并为每个服务创建一组DNS记录。

网络

要完全管理集群,必须正确设置网络,并解决三个网络问题:

Kubernetes提供了广泛的网络选择。现在还支持容器网络接口(CNI)插件,这是容器的通用插件架构。目前支持多种编排工具,如Kubernetes、Mesos和CloudFoundry。

有各种覆盖插件:

服务

Kubernetes服务是一种抽象,它将通信路由到一组pod,以提供一个微服务。Kube-proxy在每个节点上运行,并通过设置一组iptable规则来管理服务。

设立服务的模式有三种:

ConfigMap和Secret

ConfigMap使注入基于环境的配置成为可能,同时使容器镜像在多个环境中保持一致。这些可以通过安装卷或环境变量(environment variables)来注入,并将这些值存储在key/value格式中。

Secrets用于存储敏感数据,如密码、OAuth令牌等。

滚动部署和回滚

部署对象持有一个或多个副本集,以支持回滚机制。换句话说,每次更改部署配置时都会创建一个新的副本集,并保留以前的版本,以便有回滚选项。只有一个副本集将在特定时间处于活动状态。

对于滚动部署,需要的策略类型是RollingUpdate和minReadySecs,它指定应用程序为服务流量所花费的时间。如果在应用程序pod还没有准备好时,将其保持默认状态,它将不可用。这个动作可以通过以下命令来完成:

或者,

通过替换部署yaml文件中的内容并运行以下命令:

如果新版本不像预期的那样,那么可以通过运行以下命令回滚到以前的版本:

如果所需版本是前一版本以外的版本,则运行:

Logging 记录

要监视应用程序的行为,必须检查日志——每个pod生成多个日志。要开始在仪表板UI中搜索日志,必须有一些机制收集并将它们聚合到一个日志查看器中。为了说明这一点,Fluentd是一个开源工具,也是CNCF的一部分,与 Elastic Search 和 Kibana ***结合。


互联星空为什么登陆不上去

你要把互联星空的软件安装上去,然后你自动设置用户密码,下一次自动登陆就可以了

新买的手机应怎样充电

如何为新电池充电 在使用锂电池中应注意的是,电池放置一段时间后则进入休眠状态,此时容量低于正常值,使用时间亦随之缩短。 但锂电池很容 易激活,只要经过3—5次正常的充放电循环就可激活电池,恢复正常容量。 由于锂电池本身的特性,决定了它几乎没有记忆效应。 因此用户手机中的新锂电池在激活过程中,是不需要特别的方法和设备的。 不仅理论上是如此,从我自己的实践来看,从一开始就采 用标准方法充电这种“自然激活”方式是最好的。 对于锂电池的“激活”问题,众多的说法是:充电时间一定要超过12小时,反复做三次,以便激活电池。 这种“前三次充电要充 12小时以上”的说法,明显是从镍电池(如镍镉和镍氢)延续下来的说法。 所以这种说法,可以说一开始就是误传。 锂电池和镍电池 的充放电特性有非常大的区别,而且可以非常明确的告诉大家,我所查阅过的所有严肃的正式技术资料都强调过充和过放电会对锂电 池、特别是液体锂离子电池造成巨大的伤害。 因而充电最好按照标准时间和标准方法充电,特别是不要进行超过12个小时的超长充电 。 通常,手机说明书上介绍的充电方法,就是适合该手机的标准充电方法。 此外,锂电池的手机或充电器在电池充满后都会自动停充,并不存在镍电充电器所谓的持续10几小时的“涓流”充电。 也就是说 ,如果你的锂电池在充满后,放在充电器上也是白充。 而我们谁都无法保证电池的充放电保护电路的特性永不变化和质量的万无一失, 所以你的电池将长期处在危险的边缘徘徊。 这也是我们反对长充电的另一个理由。 此外在对某些手机上,充电超过一定的时间后,如果不去取下充电器,这时系统不仅不停止充电,还将开始放电-充电循环。 也许 这种做法的厂商自有其目的,但显然对电池和手机/充电器的寿命而言是不利的。 同时,长充电需要很长的时间,往往需要在夜间进行, 而以我国电网的情况看,许多地方夜间的电压都比较高,而且波动较大。 前面已经说过,锂电池是很娇贵的,它比镍电在充放电方面耐 波动的能力差得多,于是这又带来附加的危险。 此外,不可忽视的另外一个方面就是锂电池同样也不适合过放电,过放电对锂电池同样也很不利。 这就引出下面的问题。 2、正常使用中应该何时开始充电 在我们的论坛上,经常可以见到这种说法,因为充放电的次数是有限的,所以应该将手机电池的电尽可能用光再充电。 但是我找 到一个关于锂离子电池充放电循环的实验表,关于循环寿命的数据列出如下: 循环寿命 (10%DOD):>1000次 循环寿命 (100%DOD):>200次 其中DOD是放电深度的英文缩写。 从表中可见,可充电次数和放电深度有关,10%DOD时的循环寿命要比100%DOD的要长很多。 当然 如果折合到实际充电的相对总容量:10%*1000=100,100%*200=200,后者的完全充放电还是要比较好一些,但前面网友的那个说法要 做一些修正:在正常情况下,你应该有保留地按照电池剩余电量用完再充的原则充电,但假如你的电池在你预计第2天不可能坚持整个 白天的时候,就应该及时开始充电,当然你如果愿意背着充电器到办公室又当别论。 而你需要充电以应付预计即将到来的会导致通讯繁忙的重要事件的时候,即使在电池尚有很多余电时,那么你也只管提前充电, 因为你并没有真正损失“1”次充电循环寿命,也就是“0.x”次而已,而且往往这个x会很小。 电池剩余电量用完再充的原则并不是要你走向极端。 和长充电一样流传甚广的一个说法,就是“尽量把手机电池的电量用完, 最好用到自动关机”。 这种做法其实只是镍电池上的做法,目的是避免记忆效应发生,不幸的是它也在锂电池上流传之今。 曾经有 人因为手机电池电量过低的警告出现后,仍然不充电继续使用一直用到自动关机的例子。 结果这个例子中的手机在后来的充电及开机中 均无反应,不得不送客服检修。 这其实就是由于电池因过度放电而导致电压过低,以至于不具备正常的充电和开机条件造成的。 3、对锂电池手机的正确做法 归结起来,我对锂电池手机在使用中的充放电问题最重要的提示是: 1、按照标准的时间和程序充电,即使是前三次也要如此进行; 2、当出现手机电量过低提示时,应该尽量及时开始充电; 3、锂电池的激活并不需要特别的方法,在手机正常使用中锂电池会自然激活。 如果你执意要用流传的“前三次12小时长充电激活” 方法,实际上也不会有效果。 因此,所有追求12小时超长充电和把锂电池手机用到自动关机的做法,都是错误的。 如果你以前是按照错误的说法做的, 请你及时改正,也许为时还不晚。 当然,在手机及充电器自身保护和控制电路质量良好的情况下,对锂电池的保护还是有相当保证的。 所以对充电规则的理解才是重点,在某些情况下也是可以做出某种让步的。 比如你发现手机在你夜晚睡觉前必须充电的话,你也可以在睡前开始充电。 问题的关键在于,你应该知道正确的做法是什么,并且不要刻意按照错误的说法去做。 也就是说,新一代的电池已经没那么多讲究了,更加方便,随便什么时候想充就充吧,只要不充爆机就好!!!

煲耳机的方法有那些?

(一)怎样煲耳机对于耳机的煲法,理论和程序方面与煲音箱没有什么差别,但是煲耳机比于煲音箱要更加小心。 如果煲不好的话,有可能缩短耳机的使用寿命甚至对耳机会产生永久的物理损伤,比如不小心的功率过载、振幅过大导致振膜拍边等。 有的朋友在煲SENNHEISER耳机的时候就出现了由于振幅过大导致音圈引线固定胶水脱开撞击振膜而产生的啪啪声的惨况,这无疑是因为音量过大导致振膜的振幅过大而引起的。 耳机的振膜和音箱的扬声器一样,都有它的使用寿命,只不过由于耳机振膜的振幅很小,因此要比扬声器振膜的振幅小得多,所耳机的寿命也会更长,正常使用的话,几十年也没有问题。 但是如果想快速煲熟耳机,而长时间大功率的来驱动耳机,必然会缩短耳机的使用寿命,如果煲机不当,还很有可能会对耳机产生不可修复的物理损伤,因此适当的音量来煲耳机是至关重要的。 很多新买的耳机的朋友,喜欢用扫频软件听了一下全频的相应,但是他们往往感到自己新买的耳机频响不均匀,为什么?这个问题很好解释,假使耳机的振动幅度是非常一致的,那么你听到的声音肯定是不均匀的,这是因为人的耳朵对不同频率的振动的感觉灵敏度不同。 用这种方法测试耳机的频响性能是不正确的,而且,要避免使用单频率的信号测试耳机,这样也很容易损坏耳机,尤其是高灵敏度的随身听专用耳机和一些监听耳机产品。 在第二和第三阶段音乐的选择上,煲耳机用的音乐应该是动态不大的音乐来“煲”,阻抗越高、灵敏度越低的耳机,煲的时间也应该相应的增长,耳机的整体煲机时间应该不少于50个小时。 另外还有两个应该在煲耳机中注意的问题,一个是煲耳机,尤其是高挡耳机要认真地煲,不要用电子音乐煲,电子音乐中的低音成分太强,对于高灵敏度的耳机来说有可能会出现过载,造成不可修复的物理损伤。 总之,文火慢炖味道足。 另一点是不要用单频率声音信号去测试耳机,特别是不要用低频信号测量,一则是人耳对低频讯号的反应很不灵敏,如20Hz的信号如果你能够听到,那么耳机承受的功率肯定已经超载了,一些功率低的耳机很可能已经烧毁了或出现音圈变形等现象。 20Hz是一个极限,在听到和听不到之间,一些耳朵听音不是很好的人是听不到的,因此千万不要在一些极限频率上跟自己的新耳机叫(二)慢煲出好声唯一普遍适用的煲耳机方法是“渐进”,刚开始用轻柔一些的音乐,在较低音量下让耳机先舒缓10-30小时,然后用普通的音乐(摇滚、舞曲除外)在中等音量状态煲100-200小时;如果这时你听着高音不刺耳了,变得圆润自然,中音温暖亲切,低频再也不是混成一团的轰隆隆,而充满细节,那就恭喜,OK了,绝对不能急功近利。 在煲的过程中要注意两点:一是不能连续工作太久!因为音圈存在着电阻,工作久了会发热,搞不好还会烧了音圈!最好是隔两个小时停几分钟然后在继续。 二是音量千万不能太大,耳塞振膜是很脆弱的材料,音量大的话,音圈运动的行程也就大,从而剧烈拉动振膜,会造成音圈松,振膜变形甚至撕裂等等。 煲耳机主要是煲耳机的振膜,就目前而言,静电耳机振膜的厚度已薄到135微米,动圈耳机的振膜也只有几微米到十几微米(我们头发的直径大约是60~90微米)。 振膜本身在制造过程中就存在内部应力,在粘结音圈和固定在骨架上时又产生了装配应力,我们所说的煲耳机就是使这些应力逐步消失,使振膜逐步顺化发出好声的过程。 我以为音响器材虽不是工程机械、铁车钢马,但也有相通之处。 好事需多磨,慢煲出好声!煲机还是分为舒筋、通络、习武、打擂、出道五步为好。 以耳机为例:1、 舒筋——使用正常听音强度三分之一的音量驱动耳机12小时(用100~Hz/5s扫频信号更好);2、 通络——使用正常听音强度三分之二的音量驱动耳机12小时(用50~Hz/3s扫频信号更好);3、 习武——使用正常听音强度驱动耳机72小时(用20~Hz/2s扫频信号更好);4、 打擂——使用正常听音强度三分之四的音量驱动耳机24小时(用18~Hz/1s扫频信号更好);5、 出道——进入正常使用阶段。 第一步:指拿到一个新的耳机,需要通过煲的方法来使振膜松动不紧蹦。 大家知道一般的耳机都是动态开放线圈的,其发声的原理是线圈发出大小不等的磁场,从而推动振膜,利用振膜的振幅而发出声音。 (此原理不适用于静电耳机)也就是说,声音的最终形成是由振膜振动而发出的,我们常说的煲耳机也就是指的煲耳机的振膜。 新的耳机振膜就像一根没用过的橡皮筋一样,弹性不够,行程太短。 如果我们在这个时候就用大音量听一些重金属(比如我们的副版主glacier,耳机刚一拿到手,着实让他难受了好多天,一个狂热的金属迷,却来听一些“渡口”之类的煲机,着实辛苦),最终的结果肯定是破音了。 第一步煲机的目的也就出来了:通过人为的方法让耳机的机械系统的一个迅速老化过程。 在这一步里我们可选择的煲机方法有很多种,我一一例出:①、软 件 法:下载一个软件,用白噪音来煲;可以用 漫步者煲箱工具下载地址 :http:///scn2005/support/sup_②、收 音机法:调到没有信号的地方,其噪音也称为白噪音;③、音乐煲机法:用一些音乐,最好的煲机音乐就是“渡口”(其它其它的音乐也行,只要注意音量不要太大就OK了)。 第二步:是为了让一款老化的耳机(指经过第一步机械系统老化),能够尽快适应各种频率的声音,从面发出更好的声音。 我们听音乐一般有偏好,要么高音多,要么低音多,即便什么都听,有些频率还是很少用到的,这就是我们煲出靓声的关键所在了。 办法只有用软件了,选择信号发生器,然后连续放上3个小小时一次,有空就煲,煲个十几二十几次就OK了。 新买回来的耳机,听感不错。 可是与朋友的用了有一段时间的同型号耳塞对比起来,总是差强人意。 低音紧而生硬,中音不够柔和丰满,高音部分毛刺尽显。 为什么会这样呢?因为这只新买的耳机还没有煲过! (三)Test Tone Generator煲耳机法以前流行一种很简单的方法,就是直接接上收音机,调到一个无电台的频率上,利用收音机发出的“嘶嘶”声(粉红色噪音)长时间让耳机工作,以达到煲机的效果。 但用这个方法不太明显,还不如直接戴上耳机听音乐这样来得更快。 也有用专门的频率发生器来生成某一段固定或扫描的频率然后输入到耳机这样来煲的,这种方法效果比较明显,所使用的时间也能缩短很多。 但是大部分的玩家都没有这一类的仪器,那怎么办呢?用什么方法煲耳机最有效率呢?在计算机发展日新月异的今天,很多的爱好者编出了一些程序,利用计算机处理出一些波形、频率,通过声卡输出,达到一些真实频率发生仪器的效果,这就是所谓的“虚拟仪器”。 类似这样的频率测试软件有很多,笔者现在用的是一个叫Test Tone Generator的软件,简单易用,功能专一,体积也小。 下面就来说说怎样用它来煲耳机。 煲机一般都是用低频。 所以,只要把TTG设置低频就可以了。 有两种方法,一是用固定频率输出;二是用扫描频率。 效果都差不多固定频率的煲机方法是在固定频率输出(CONSTANT TONE)的FREQUENCY那输入一个数值,一般是20到50就可以,还要选中LOOP,DURATION时间没所谓,波形用SINE(正弦波)增益为0 DB,然后就可以在声卡上插上耳机,让它长时间工作。 扫描频率方法就是用扫描频率(SWEEP)那的INITIAL FREQUENCY那输入起始频率,在FINAL FREQUENCY那输入结束频率,一般我认为从20HZ到100HZ比较合适,DURATION时间是设置扫描一次所用的时间,然后其他的操作和固定频率一样。 很多朋友问过我,为什么只煲低频。 其实,从上面所述的煲机的原理就可以知道是为什么了。 在煲的过程中要注意两点:一是不能连续工作太久!因为音圈存在着电阻,工作久了会发热,搞不好还会烧了音圈!最好是隔两个小时停几分钟然后在继续。 二是音量千万不能太大,耳塞振膜是很脆弱的材料,音量大的话,音圈运动的行程也就大,从而剧烈拉动振膜,会造成音圈松脱,振膜变形甚至撕裂等等。 特别是像888这样“脆弱”的耳塞,更是要小心。 调准时只要调到能明显听到的声波或者是说空气的振动就可以,千万不要调到太大、听到振膜在剧烈振动这种情况。 小心保护好你的耳机。 最后要强调一点的就是,并不是所有的耳机煲过都会变好声,这要和耳机的本身的质素所决定的,有些耳机煲后的效果并不是很明显,这也是正常的。 我们煲机的目的是帮助它迅速度过老化调整期,使其各组成部件的物理特性达到稳定。 未煲过的耳机振动系统可能会比较紧、比较硬,通过煲机,可以让它的振动系统松弛下来,参数也趋于稳定,因此音质会变好一点。 还有就别把煲机的效果想得太好了,煲一段时间后再煲来煲去效果不会太明显的。 希望越大,失望也越大。 要有好的声音主要还是看音源等设备。 首先,我们需要数张CD碟,这是因为CD音质是目前民用级别(撇开并不实用的SACD和DVD-AUDIO)可以达到最好效果的音乐质量,而且碟片相对来说比较便宜,以下所有操作也均以CD随身听为例。 “煲”机碟最好是张频响范围非常宽广的碟片,单独使用一般的纯人声碟肯定不行。 推荐一些正版的发烧碟,比如《TITANIC》、《阿姐鼓》和《1812序曲》等等。 还有一些优秀的流行音乐和中国民乐也是很不错的选择。 下面笔者就来“煲”好你的耳塞。 《TITANIC》电影原声CD中的第3段《SOUNTHAMPTON》、第9段《THE SINKING》和第10段《DEATH OF TITANIC》。 《SOUTHAMPTON》虽有抄袭贝多芬的《欢乐颂》之嫌,但声音层次非常分明,乐曲包含的信息量也很丰富。 高中音柔顺致密,隐隐而来的阵阵低频能量予人一种深邃感。 这首曲目在全频段都有突出表现,对于耳塞的全面振动是非常有好处的。 而《THE SINKING》和《DEATH OF TITANIC》除了与上面一首有同样出色的全频表现以外,在动态上更胜一筹,整体声音能量十足,如果没有“煲”就听这样的曲子,耳塞的振膜要“受苦”了!国产动画电影《宝莲灯》电影原声CD中的第4段《序曲:宝莲灯》和第13段《望月节的舞蹈》。 《序曲:宝莲灯》一开始声音较为轻柔,但越到后来,声音动态越大,能量也越多。 中间还夹杂着一些人声的合唱,应该说是非常不错的曲子,唯独其低音略微少了一些。 《望月节的舞曲》中一开声的低频以及中间一段女声对于耳塞中低频的提高都很有帮助。 《滚石24K24BIT金碟——万芳》CD中的第一段《猜心》是笔者用作试音的保留曲目,用来“煲”耳塞也是非常不错的选择。 这首曲目的第一段主要是人声独唱,不过到了后面,乐器就越来越丰富,但整体仍可算是轻柔。 “煲”耳塞不能一直用大动态来“煲”,也需要在中间做一些调整。 而且,这首曲目中的人声非常出色,可以用作“煲”耳塞结束以后的试听之用。 把随身听和耳塞准备好,放入碟片,音量上要开的大一些。 现在的随身听为了延长播放的时间,输出功率普遍较低,用户大可以把音量开到90%以上,不过最好不要开效果)煲”耳塞的过程中要一步一步的来,首先用一些舒缓的音乐,比如上问中提到的《猜心》,先放5~10个小时。 然后再换略微“厉害”一点的音乐,如《SOUTHAMPTON》,继续播放10小时以上,最后才是诸如《THE SINKING》和《DEATHOF TITANIC》之类的音乐,一直要播放到耳塞基本上“煲”好。 为了确定耳塞“煲”的情况,用户可以每隔10小时听一次,一般来说,效果都会有一些差距,等到差距不明显的时候,就可算是“煲”好了。 当然,这种鉴别方法也不是很容易实现,那么就准备“煲”50~100个小时好了。 不过要达到大功告成就需要日常不断的使用才行,要使耳塞真正达到最佳效果,时间上一般需要2个月左右。

本文版权声明本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,请联系本站客服,一经查实,本站将立刻删除。

发表评论

热门推荐