k8s常用命令实操

k8s常用命令实操

閱讀本文約花費: 12 (分鐘) 查看集群信息: [[email protected] pods]# kubectl cluster-infoKubernetes master is running at http://localhost:8080KubeDNS is running at http://localhost:8080/api/v1/proxy/namespaces/kube-system/services/kube-dns To further debug and diagnose cluster problems, use ‘kubectl cluster-info dump’. 查看更详细的可以用kubectl cluster-info dump 查看各组件状态 [[email protected] pods]# kubectl -s http://localhost:8080 get componentstatusesNAME                              STATUS           &…

Read More Read More

理解裸机部署过程ironic

理解裸机部署过程ironic

閱讀本文約花費: 27 (分鐘) 部署物理机跟部署虚拟机的概念在nova来看是一样,都是nova通过创建虚拟机的方式来触发,只是底层nova-scheduler和nova-compute的驱动不一样。虚拟机的底层驱动采用的libvirt的虚拟化技术,而物理机是采用Ironic技术,ironic可以看成一组Hypervisor API的集合,其功能与libvirt类似。 操作系统安装过程 Linux系统启动过程 bootloader(引导程序,常见的有GRUB、LILO)kernel(内核)ramdisk(虚拟内存盘)initrd/initramfs (初始化内存磁盘镜像) 下面我们分别介绍每个概念: 引导加载程序是系统加电后运行的第一段软件代码。PC机中的引导加载程序由BIOS(其本质就是一段固件程序)和位于硬盘MBR(主引导记录,通常位于第一块硬盘的第一个扇区)中的OS BootLoader(比如,LILO和GRUB等)一起组成。BIOS在完成硬件检测和资源分配后,硬盘MBR中的BootLoader读到系统的RAM中,然后控制权交给OS BootLoader。bootloader负责将kernel和ramdisk从硬盘读到内存中,然后跳转到内核的入口去运行。kernel是Linux的内核,包含最基本的程序。ramdisk是一种基于内存的虚拟文件系统,就好像你又有一个硬盘,你可以对…

Read More Read More

Redis的内存和实现机制

Redis的内存和实现机制

閱讀本文約花費: 23 (分鐘) 1. Reids内存的划分# 数据 内存统计在used_memory中进程本身运行需要内存 Redis主进程本身运行需要的内存占用,代码、常量池等缓冲内存,客户端缓冲区、复制积压缓冲区、AOF缓冲区。有jemalloc分配内存,会统计在used_memory中内存碎片 Redis在分配、回收物理内存过程中产生的。内存碎片不会统计在used_memory中。如果Redis服务器中的内存碎片已经很大,可以通过安全重启的方式减小内存碎片:因为重启之后,Redis重新从备份文件中读取数据,在内存中进行重排,为每个数据重新选择合适的内存单元,减小内存碎片。 2. Redis的数据存储的细节# 涉及到内存分配器jemalloc, 简单动态字符串(SDS),5种值类型对象的内部编码,redisObject, DictEntry: Redis 是key-value数据库,因此对每个键值对都会有一个dictEntry,里面存储了指向Key和Value的指针;next指向下一个dictEntry,与本Key-Value无关Key: 并不是以字符串存储,而是存储在SDS结构中RedisObject: 5种值对象不是直接以对应的类型存储的,而是被封装为redisObject来存储jemalloc: 无论是DictEntry对象,还是redisObject, SDS对象,都…

Read More Read More

JVM各种垃圾收集算法

JVM各种垃圾收集算法

閱讀本文約花費: 7 (分鐘) 前言 从如何判定对象消亡的角度出发,垃圾收集算法可以划分为“引用计数式垃圾收集”(Reference Counting GC)和“追踪式垃圾收集”(Tracing GC)两大类,这两类也常被称作“直接垃圾收集”和“间接垃圾收集”。由于束流Java虚拟机中使用 的都是“追踪式垃圾收集”,所以后续介绍的垃圾收集算法都是属于追踪式的垃圾收集。 分代式收集理论 当前商业虚拟机的垃圾收集器,大多数都遵循了“分代收集”的理论进行设计。主要简历在两个分代假说之上:1、弱分代假说:绝大多数对象都是“朝生夕灭”的。2、强分代假说:熬过越多此垃圾收集过程的对象就越难以消亡。这两个分代假说奠定了多款常用的垃圾收集器的一致设计原则:收集器应该将Java堆划分出不同的区域,然后将回收对象依据其年龄(对象熬过垃圾收集过程的次数)分配到不同的区域之中存储。把分代收集理论具体放到现在商用的Java虚拟机里,设计者一般至少会把Java堆划分为新生代(Young Generation) 和 老年代(Old Generation两个区域。在新生代中,每次垃圾收集时都有大批对象死去,而每次回收后存活的少量对象,将会逐步晋升到老年代中存放。 标记-清除算法 标记-清除算法,分为“标记”和“清除”两个阶段:首先标记所有需要回收的对象,标记完成后,统一回收掉所有被标记的对象,…

Read More Read More

Java 中队列同步器 AQS(AbstractQueuedSynchronizer)实现原理

Java 中队列同步器 AQS(AbstractQueuedSynchronizer)实现原理

閱讀本文約花費: 29 (分鐘) 前言 在 Java 中通过锁来控制多个线程对共享资源的访问,使用 Java 编程语言开发的朋友都知道,可以通过 synchronized 关键字来实现锁的功能,它可以隐式的获取锁,也就是说我们使用该关键字并不需要去关心锁的获取和释放过程,但是在提供方便的同时也意味着其灵活性的下降。例如,有这样的一个场景,先获取锁 A,然后再获取锁 B,当锁 B 获取到之后,释放锁 A 同时获取锁 C,当获取锁 C 后,再释放锁 B 同时获取锁 D,依次类推,像这种比较复杂的场景,使用 synchronized 关键字就比较难实现了。在 Java SE 5 之后,新增加了 Lock 接口和一系列的实现类来提供和 synchronized 关键字一样的功能,它需要我们显示的进行锁的获取和释放,除此之外还提供了可响应中断的锁获取操作以及超时获取锁等同步特性。JDK 中提供的 Lock 接口实现类大部分都是聚合一个同步器 AQS 的子类来实现多线程的访问控制的,下面我们看看这个构建锁和其它同步组件的基础框架——队列同步器 AQS(AbstractQueuedSynchronizer)。 AQS 基础数据结构 同步队列 队列同步器 AQS(下文简称为同步器)主要是依赖于内部的一个 FIFO(first-in-first-out)双向队列来对同步状态进行管理的,当线程获取同步…

Read More Read More

云和虚拟化有何区别?[云计算]

云和虚拟化有何区别?[云计算]

閱讀本文約花費: 6 (分鐘) 由于虚拟化和云的核心理念都是从抽象资源中创建可用的环境,所以很容易被混为一谈。虚拟化是一种技术,可让用户以单个物理硬件系统为基础,创建多个模拟环境或专用资源。而云是一种能够抽象、汇集和共享整个网络中的可扩展资源的 IT 环境。简而言之,虚拟化是一项技术,而云是一种环境。 人们创建云通常是为了进行云计算,也就是在系统中运行工作负载。  云基础架构可以包含各种裸机、虚拟化或容器软件,它们可用于抽象、汇集和共享整个网络中的可扩展资源,以此来创建云。稳定的操作系统(如 Linux®)是云计算的基础。这一层架构可让用户独立于公共、私有和混合环境之间。 如果您能访问内部网和/或互联网,则可以使用虚拟化来创建云,但这不是唯一的选择。  通过虚拟化,虚拟机监控程序会监控物理硬件,并抽象机器中各项资源,之后把这些资源提供给叫做虚拟机的虚拟环境。这些资源可以是原始处理能力、存储或基于云的应用,其中包含了部署所需的所有运行时代码和资源。 如果就此停止,则不能叫做云——这仅仅是虚拟化。  只有向中央池分配了虚拟资源,才能被称为“云”。增加一层管理软件后,即可管控将在云中使用的基础架构、平台、应用和数据。再增加一层自动化工具,用来替换或减少人工操作可重复指令和流程,从而为云提供自助服务组件。 如果您建立的 IT 系统满足以下条件,则说明…

Read More Read More

为什么在做微服务设计的时候需要DDD?

为什么在做微服务设计的时候需要DDD?

閱讀本文約花費: 9 (分鐘) 记得之前在规划和设计微服务架构的时候,张队长给了我一个至今依然记忆深刻的提示:『你的设计蓝图里为什么没有看到DDD的影子呢?』 随着对充血模型的领域认知的加深,我越加感觉到DDD的重要性。但是DDD内容繁多,是不是要深入去了解呢,我觉得不必入坑太深,个人浅见,它最核心的一点就是针对贫血模型的不足而设计,把原先传统的贫血模型里的业务逻辑层拎出来,融入到Domain层,这样面对复杂业务的规模化变更,我们只需要专注于Domain即可。 回到主题,我们要了解的是微服务和DDD到底有什么关系呢? 因为在互联网时代,软件所面临的问题域比以往要复杂得多,这种复杂性来源于不断扩展的问题域自身,也来源于创新变化,以及这种规模性增长所带来的挑战。 然而一个人一个团队,他对复杂的事物的认知是有极限的,面对这种复杂问题唯一的方法就是分而治之。分主要考虑的是如何去分;治意味着分出来的每一个部分要能够独立的运行,能够互相的协作,完成整体的目标,能够一来应对外部变化所带来的冲击。 微服务的缺陷 微服务架构在分和治两个方面都给出了很好的理论指导和最佳实践,那微服务是不是解决复杂问题的银弹呢?其实不然,很多团队在应用了微服务架构来构建他们的系统以后,发现并没有完全解决这种复杂性问题,甚至还带来了一些其他的问题。比如: 服务并没有解决复杂系统如何应对需求变化这个问题,甚至还加剧了这个问…

Read More Read More

微服务划分的姿势

微服务划分的姿势

閱讀本文約花費: 10 (分鐘) 我们知道微服务是一种理念,没有确切的定义和边界,好比设计原则,是属于抽象的概念。在定义不明确的情况下谈划分也是一种各说各话,具体问题需要具体分析,所以这篇文章谈到的划分也不是绝对标准,仅供参考。 有人说微服务不难,难的是服务的划分,虽然我持保留意见,但是从侧面也反应了划分具有一定的困难。这里的矛盾在于粒度,如果粒度太大了,分和不分似乎都差不多;如果粒度太小了,聚合、发布、调用链、调试等都是坑。 以下谈到的拆分是前人经验的总结,我罗列了三种行家的拆分姿势,每个的的经验和视野不同,各有偏颇,我在这里更多的是谈共鸣和感受,希望对你有所启发。 拆分姿势 姿势一:新浪微博微服务专家胡忠想从纵横两个维度来划分,简单粗暴。 纵向拆分 从业务维度进行拆分。标准是按照业务的关联程度来决定,关联比较密切的业务适合拆分为一个微服务,而功能相对比较独立的业务适合单独拆分为一个微服务。 横向拆分 从公共且独立功能维度拆分。标准是按照是否有公共的被多个其他服务调用,且依赖的资源独立不与其他业务耦合。 纵向以业务为基准,关系铁的在一起;横向功能独立的在一起。我想如果拆分这么简单,你有底气拆,敢拆吗?所以我们又继续比对一下其他专家的言论。 姿势二:阿里的小伙伴从综合的维度来看,部分维度和上面会有重合 服务拆分要迎合业务的需要 充分考虑业务独立性和专业性,避免以团队来定义服务边界,…

Read More Read More

“莫道士林尽媚骨,拍案一怒于先生”

“莫道士林尽媚骨,拍案一怒于先生”

閱讀本文約花費: 2 (分鐘) 于建嵘受邀参加统战部组织的一个党外高级知识分子研修班,活动结束当天是学习后的发言,其实也就是政治表态。当着LYD的面,海归经济学家李稻葵的发言令于建嵘讶异,大意是:我在美国待过多年,回到中国才知道社会主义民主才是真民主…… 轮到于建嵘了,他起初不愿发言,FBZ主持人坚持让他“讲几句”。于建嵘只好实话实说:刚才李稻葵的发言实在让我听不下去,我们这些知识分子这样违心地讲话,坐在台上的LYD等领导瞧得起我们吗? 言毕,台下鸦雀无声。FBZ主持人愣在那里,不知如何收场。好在LYD及时出来打圆场,以“午饭时间到”为由结束了这场尴尬。 更有意思的一幕还在后面:午餐时,于建嵘坐的那张桌子没有一个人过来,那些高级知识分子都躲着他。孤独无趣的他“悻悻”地抓起包打道回府了。 于建嵘讲起这一幕时,说他能够理解那些人的选择:权力给人带来的诱惑和好处有多大啊,不是一般人可以抗拒得了的!与他同期的研修班同学随后大都当上全国政协委员,那位海归经济学家李稻葵后来还当上了央行货币委员,成为炙手可热的人物。 “莫道士林尽媚骨,拍案一怒于先生”。

护网行动2019

护网行动2019

閱讀本文約花費: 6 (分鐘) 在信息化社会中,计算机和网络在军事、政治、金融、商业、人们的生活和工作等方面的应用越来越广泛,社会对计算机和网络的依赖越来越大。如果网络安全得不到保障,这将给生产、经营、个人资产、个人隐私等方面带来严重损害,甚至会使金融安全、国防安全以及国家安全面临非常严重的危险。“护网行动”是国家应对网络安全问题所做的重要布局之一。 “护网行动”怎么来的? 1、网络安全态势严峻 当前,随着大数据、物联网、云计算的快速发展,愈演愈烈的网络***已经成为国家安全的新挑战,国家关键信息基础设施可能时刻受到来自网络***的威胁。网络安全的态势之严峻,迫切需要我们在网络安全领域具备能打硬仗的能力,“护网行动”应运而生。 2、国家政策导向 2016年4月,×××总书记在网络安全和信息化工作座谈会上发表重要讲话,×××总书记指出,“网络安全的本质是对抗,对抗的本质是***两端能力的较量”。 2016年,公安部会同民航局、国家电网组织开展了 “护网2016”网络安全***演习活动。 同年,《网络安全法》颁布,出台网络安全演练相关规定:关键信息基础设施的运营者应“制定网络安全事件应急预案,并定期进行演练”。自此“护网行动”成为惯例。 “护网行动”为什么今年这么火? 1、“护网行动”涉及范围越来越广 2016年仅公安部、民航局、国家电网三个事业单位参与“护网2016”行动。 2017…

Read More Read More