OpenShift 容器平台中的应用程序是不同类型的资源组成,主要常见的类型是:
- container : 容器是从一个镜像启动,与同一机器的其他容器隔离。
- Image : 分层的Linux系统。包含应用程序代码,依赖关系和函数库,image友一个名称标识。
- Pod :部署上节点上,有唯一的IP地址和卷,卷(持久存储)的一个或多个容器。pod为每个容器定义了安全性和运行策略。
- Label:标签是键值对,可以用于任何资源进行分组和选择。
- Volume:是挂载在pod容器上的文件系统,由本地和网络的存储提供。最简单的卷的类型是:EmptyDir,为一台linux上的临时目录。
- Node:运行容器的节点。
- Service:是pod的逻辑名称。service 被分配一个IP地址和一个DNS名称。SERVICE_HOST的环境变量会自动注入到其他POD中。
- Route: 是一DNS条目,作用是为了指向一个Service,可以从集群外部访问它。
- Replication Controller: 为了匹配一组label的Templates维护特定数量的POD。如果删除了pod,控制器会创建该pod的新副本。
- Deployment Configuration: 定义pod的模板,单个deployment configuration类似于单个的微服务。每个deployment都表示为一个replication controller。
- Build Configuration:作用是将原代码和基本Image构建成新的Image。Build可以是基于源代码的,可以为常见语言(java ,PHP, Ruby,Python)或docker的Dockerfile创建的Image,每个build configuration 都有Webhook可以通过其基本镜像的更改自动触发。
- Build:构建从源代码,其他镜像,Dockerfiles或二进制输入创新Image,可以选择运行post-build测试而不是push到Image仓库。
- Image Streams and Image Stream Tags:IS 每个is有一个或多个标记,默认标记为:latest
- Secret:保存方式为文本或二进制文件。注入到pod中,默认目录为:/var/run/secrets/kubernetes.io/serviceaccount 。每个容器都有一个secret。其中包含访问API特权的令牌。
- Project:所有上述资源除Node外都存放在项目中,项目具有role---》view ,edit ,admin
使用OC types命令可以查到上述类型的资源: