Chapter 9
实践
配置一个pod,让pod与node处于同一网络空间,既port也是共享
apiVersion: v1
kind: Pod
metadata:
name: pod-with-host-network
spec:
hostNetwork: true # 使用主机的网络
containers:
- name: main
image: alpine
command: ["/bin/sleep", "999999"]使pod可以查询到主节点的PID 和 IPC命名空间
apiVersion: v1
kind: Pod
metadata:
name: pod-with-host-pid-and-ipc
spec:
hostPID: true
hostIPC: true
containers:
- name: main
image: alpine
command: ["/bin/sleep", "999999"]pod 在不指定运行用户时默认时root
指定用户运行容器
以非root用户运行pod
通过特权模式来运行一个pod
为pod添加内核功能
在容器中禁⽤内核功能
阻⽌对容器根⽂件系统的写⼊
在pod中为不同容器设置不同运行时用户,但可以共享存储卷
使用PodSecurityPolicy的前置配置
给不同的service account 分配不同权限
阻⽌了pod使⽤宿主节点的PID、IPC、⽹络命名空间,运⾏特权模式的容器,以及绑定⼤多数宿主节点的端⼜(除11 000~11 000和13 000~14 000范围内的端口)
基于上个案例,实现固定用户ID运行容器
配置允许、默认添加、禁⽌使⽤的内核功能
限制pod可以使⽤的存储卷类型
Network policy: 阻⽌任何其他ns的客户端访问
Network policy:指定连接
Network policy:指定cidr
Network policy:限制出口流量
Last updated