排序:
默认
按更新时间
按访问量

libnetwork

CNM模型定义了libnetwork的工作原理原来docker的网络相关的代码是直接在docker中的,网络功能也比较简单,对网络的诟病也是比较多,随着docker越来越向平台化发展,将功能组件逐渐从docker中解耦, docker从1.7把网络相关的代码从docker的代码中剥离出来新建了一个...

2018-07-13 12:52:42

阅读数:15

评论数:0

docker private registry的搭建

Docker Private Registry的搭建1      前言通常开发者在Docker Hub上管理和维护镜像,而我们的Docker项目需要在华为内网Hub来做。因此,本文介绍了在本地物理机上部署一个private registry(简称私服),用Nginx反向代理控制,管理和维护镜像。G...

2018-07-13 12:52:35

阅读数:22

评论数:0

区块链(1)

区块链的概念、价值与分类区块链是安全,可信,不可篡改的,基于P2P网络的分布式账本区块链的价值1.改变交易模式,从中心背书变成参与方直接交易,降低交易成本• 中心背书:淘宝模式• 第三方成本高: SWIFT交易费• 第三方难以建立: 跨国货运2.不可篡改,可追溯的记录• 中心化的记录攻击目标明显,...

2018-07-13 12:52:13

阅读数:48

评论数:0

devicemapper

1. Device mapper和thinprovison1)      Devicemapper简介Devicemapper是内核中支持逻辑卷管理的通用设备映射机制,它为实现用于存储资源管理的块设备驱动提供了一个高度模块化的内核架构,它包含三个重要的对象概念,Mapped Device、Mapp...

2018-07-12 10:35:23

阅读数:13

评论数:0

Docker的Graph Driver分析(2)

写时复制上边的是普通存储,下边的是按需分配联合挂载aufs文件级存储,通过挂载来实现diff目录保存各层具体文件系统的内容,即对各层挂载前的数据。layers目录保存镜像的层ID及之前的父子关系。mnt目录镜像的挂载点,即用户在容器里看到的文件系统的内容。AUFS原理(2)读写文件时发生了什么。删...

2018-07-12 10:20:57

阅读数:11

评论数:0

Docker graph driver介绍(1)

简介Docker的graph driver主要用于管理和维护镜像,包括把镜像从仓库下载下来,到运行时把镜像挂载起来可以被容器访问等,都是graph driver做的。涉及的docker命令有-         Docker pull-         Docker push-         Do...

2018-07-12 09:42:53

阅读数:28

评论数:0

NET Namespace(2)

1      释放网络命名空间内核中对于要释放的网络命名空间,都会通过struct net的cleanup_list成员链入全局释放链表cleanup_list中:加入cleanup_list全局链表后,将net_clean_up工作交给netns_wq工作队列,唤醒worker thread执行...

2018-07-12 09:40:45

阅读数:13

评论数:0

NET Namespace(1)

1      概述在linux协议栈中引入网络命名空间,是为了支持网络协议栈的多个实例,而这些协议栈的隔离就是通过命名空间来实现的,一个net namespace为进程提供一个完全独立的网络协议栈的视图,包括网络设备接口、ipv4和ipv6协议栈、ip路由表、防火墙规则、sockets等。一个ne...

2018-07-12 09:40:36

阅读数:19

评论数:0

Mnt_namespace分析

1      简介1.1      背景Linux容器场景下实现对进程和其相关的资源的隔离,这些资源同样也包括了进程的文件系统环境。这就要求容器中有一个独立的文件环境,而容器中的进程共享这个文件系统环境,即容器自己的根文件系统环境。所以内核引入了mnt命名空间的概念,来实现文件系统环境的隔离。1....

2018-07-12 09:40:25

阅读数:16

评论数:0

Pid_namespace分析

1      概述Pid namespace是对进程pid的容器虚拟化,从pid的维度实现容器间的隔离。即在一个容器中只能看到属于该pidns的pid,从而在某种程度上实现了进程间的隔离。在容器中只能看到容器内的pid,但在宿主机上可以看到所有进程的pid,所以从看到的pid号的角度,这是有层级关...

2018-07-12 09:40:10

阅读数:7

评论数:0

user_namespace分析(2)

4      User_ns实现与验证以上分析的三点都是用户安全管理的基础,user_ns只是结合权能实现了一种局部用户的映射。User_ns的作用简单的说就是一个非特权用户可以创建一个user_ns,然后该用户可以作为该命名空间中的root特权用户,其它的跟在宿主机没有两样。在user_ns中该...

2018-07-12 09:39:23

阅读数:6

评论数:0

user_namespace分析(1)

1      前言Linux系统的安全体系文件权限管理是通过自主访问机制(Discretionary Access Control,DAC)实现的。自主访问机制指对象(比如程序、文件或进程等)的拥有者可以任意的修改或授予此对象相应的权限。Linux的UGO(User、Ggroup、Other)和A...

2018-07-12 09:39:16

阅读数:6

评论数:0

Uts_namespace分析

1      简介UTS命名空间是Linux内核Namespace(命名空间)的一个子系统,主要用来完成对容器HOSTNAME和domain的隔离,同时保存内核名称、版本、以及底层体系结构类型等信息。UTS命名空间是扁平化的结构,不同的命名空间之间没有层级关系。Uts命名空间的用来隔离系统的这些信...

2018-07-12 09:39:01

阅读数:19

评论数:0

ipc_namespace

1      IPC概述linux下的进程通信手段基本上是从Unix平台上的进程通信手段继承而来的。而对Unix发展做出重大贡献的两大主力AT&T的贝尔实验室及BSD(加州大学伯克利分校的伯克利软件发布中心)在进程间通信方面的侧重点有所不同。前者对Unix早期的进程间通信手...

2018-07-11 15:52:31

阅读数:8

评论数:0

Cgroup变化分析(2.6.34~3.10)

Cgroup变化分析                                                                                                                 1      子系统2.6.34 3.10 说明...

2018-07-11 15:39:18

阅读数:12

评论数:0

cgroup-net_cls子系统分析

1       Net_cls1.1      原理net_cls子系统是用来控制进程使用网络资源的,它并不直接控制网络读写,而是给网络包打上一个标记,具体的网络包控制由tc机制来处理。net_cls实现的基本的思想就是将控制组和内核现有的网络包分类和调度的机制相关联。net_cls通过给控制组分...

2018-07-11 15:38:12

阅读数:16

评论数:0

Cgroup-memory子系统分析(2)

1.1      Oom1.1.1      简介Oom的全称是out-of-memory,是内核在处理系统内存不足而又回收无果的情况下采取的一种措施,内核会经过选择杀死一些进程,以释放一些内存,满足当前内存申请的需求。所以oom是一种系统行为,对应到memcg的oom,其原理和动机跟全局oom是...

2018-07-11 15:36:38

阅读数:14

评论数:0

Cgroup-memory子系统分析(1)

1      概述1.1      应用背景Cgroup的memory子系统,即memory cgroup(本文以下简称memcg),提供了对系统中一组进程的内存行为的管理,从而对整个系统中对内存有不用需求的进程或应用程序区分管理,实现更有效的资源利用和隔离。在实际业务场景中,为了防止一些应用程序...

2018-07-11 15:32:17

阅读数:16

评论数:0

Cgroup分析之cpu、cpuacct

1      组调度1.1      进程调度基础操作系统为了协调多个进程的同时运行,最基本的手段就是给进程设定优先级,如果有多个进程处于可执行状态,那么优先级高的进程先被调度执行。Linux内核将进程分为两种级别,普通进程和实时进程,实时进程的优先级高于普通进程,另外他们的调度策略也不同。实时进...

2018-07-11 15:16:10

阅读数:32

评论数:0

cgroup-blkio子系统分析

1      概述Cgroup中的blkio子系统的主要功能是实现对磁盘i/o带宽的可定制化控制。目前支持的控制策略只要有两种:BLKIO_POLICY_PROP和BLKIO_POLICY_THROTL,即基于权重方式和基于流量方式。权重方式依赖于内核原生的CFQ i/o调度算法,i/o调度算法本...

2018-07-11 15:10:44

阅读数:17

评论数:0

提示
确定要删除当前文章?
取消 删除
关闭
关闭