apparmor

How to limit the size of subprocess stdout and stderr in python

若如初见. 提交于 2019-12-05 16:52:05
I need to run applications submitted by users. My code looks like: def run_app(app_path): inp = open("app.in", "r") otp = open("app.out", "w") return subprocess.call(app_path, stdout=otp, stdin=inp) Now since I have no control over what users will submit, I want to restrict the size of the output of the application. Other things like trying to access unauthorized system resources and abusing of CPU cycles are being restricted by apparmor rule enforcement. The maximum time allowed to run is being handled by parent process (in python). Now a rogue application can still try to flood the server

详细介绍:Kubernetes1.4版本的新功能

让人想犯罪 __ 提交于 2019-12-05 00:32:42
Kubernetes1.4主要新特性 创建kubernetes集群只需要两条 命令 增强了对有状态应用的支持 增加了集群联盟API 支持容器安全控制 增强包括调度在内的Kubernetes基础架构 通过Kubernetes DashBoard UI已经可以实现90%的 命令 行操作 两条命令创建集群 为了启动Kubernetes,用户需要提供计算节点、安装Kubernetes和启动集群。用户都渴望一种简易、可移植的方法,在任何云(公有云、私有云或裸金属)上部署Kubernetes集群。为此: Kubernetes 1.4引入了kubeadm命令,它将集群启动简化为两条命令,不需要再使用复杂的kube-up 脚本 。一旦Kubernetes被安装,kubeadm init启动master节点,而kubeadm join可以将节点并入集群。 安装过程的流水线化,通过打包Kubernetes和它的依赖,对于 Linux 主要发行版本,包括Ubuntu Xenial和Red Hat的用户可以使用熟悉的apt-get和yum来安装Kubernetes。 附加部署,例如对于一个overlay网络, 使用daemonset方式可以将操作简化为一条命令。 简化这个使用的是新的认证API,它使用kubelet TLS bootstrap,和新的API发现。 增强了对有状态应用的支持