Kubernetes对Container Capabilities的支持
来源:互联网 发布:实名认证数据网 编辑:程序博客网 时间:2024/06/05 14:10
相信玩过docker的同学,都对Docker Container Capability有过了解。我曾经在项目中因为修改网卡配置权限问题,需要配置容器的Capabilities(NET_ADMIN),当时做过一些研究。今天突然有个同事问我,在Kubernetes中怎么配置容器的Capabilities呢?本文就全面介绍一下这方面的内容。
Docker Container Capabilities
在docker run命令中,我们可以通过--cap-add
和--cap-drop
来给容器添加linux Capabilities。下面表格中的列出的Capabilities是docker默认给容器添加的,用户可以通过--cap-drop
去除其中一个或者多个。
下面表格中列出的Capabilities是docker默认删除的Capabilities,用户可以通过--cap-add
添加其中一个或者多个。
比如,我们可以通过给给容器add NET_ADMIN Capability,使得我们可以对network interface进行modify,对应的docker run命令如下:
$ docker run -it --rm --cap-add=NET_ADMIN ubuntu:14.04 ip link add dummy0 type dummy
Kubernetes SecurityContext
在Kubernetes对Pod的定义中,用户可以add/drop Capabilities在Pod.spec.containers.sercurityContext.capabilities中添加要add的Capabilities list和drop的Capabilities list。
比如,我要添加NET_ADMIN Capability,删除KILL Capability,则对应的Pod定义如下:
apiVersion: v1kind: Podmetadata: name: hello-worldspec: containers: - name: friendly-container image: "alpine:3.4" command: ["/bin/echo", "hello", "world"] securityContext: capabilities: add: - NET_ADMIN drop: - KILL
总结
Kubernetes通过在Pod.spec.containers.sercurityContext.capabilities中配置容器待add和drop的Capabilities,最终借助docker container Capabilities的能力,完成容器的Capabilities权限控制。
- Kubernetes对Container Capabilities的支持
- Kubernetes 多container组成的Pod
- Kubernetes and Container Operations
- kubernetes--Init Container
- kubernetes init-container
- Mesosphere在其数据中心操作系统中增加了对Kubernetes的支持
- [docker]Full container capabilities (–privileged)
- 关于kubernetes 的 cluster IP , node IP ,container IP , 和 VIP
- 支持内存HPA Memory指标的Kubernetes的部署
- OPNFV支持容器化的OpenStack和Kubernetes
- Linux capabilities的新使用
- Appium webdriver的capabilities配置
- 对事务的支持
- 对视频的支持
- [Kubernetes]Kubernetes的网络模型
- C# 对轻量级(IoC Container)依赖注入Unity的使用
- C# 对轻量级(IoC Container)依赖注入Unity的使用
- C# 对轻量级(IoC Container)依赖注入Unity的使用
- angular2项目教程-微型Blog系统1
- Linux下安装Oracle11G详细流程(只为最好的你)
- Android 7.0(牛轧糖)新特性
- 使用EL调用Java方法
- nodejs更新MongoDB数据库中文问题
- Kubernetes对Container Capabilities的支持
- Linux中的信号量(上)
- 如何做个依赖库让别人依赖使用
- 杀人放火金腰带,修桥补路无尸骸:成功的真相
- Oracle查询树型关系(start with connect by prior)
- openstack(m版)官网创建云主机过程
- HomeBrew安装
- 【JQuery学习总结2 】Jquery字符串, 数组(拷贝、删选、合并等), each循环,阻止冒泡,ajax出错,$.grep筛选,$.param序列化
- java面试