OpenShift资源类型

• Container:如何在可移植Linux环境中运行一个或多个进程的定义。容器从一个镜像启动,并且通常与同一机器上的其他容器隔离。
Image:一个分层的Linux文件系统,包含应用程序代码、依赖关系和函数库等。image由一个名称标识,该名称可以是当前集群的本地名称,也可以指向远程Docker仓库。
Pod:部署在节点上并共享唯一IP地址和卷(持久存储)的一个或多个容器,Pods还为每个容器定义安全性和运行时策略。
• Label:标签是键值对,可以分配给系统中的任何资源进行分组和选择。通常资源使用标签来标识其他资源集。
Volume默认情况下容器不是持久性的,即容器的内容在重新启动时被清除。volume是挂载在pod及其容器上的文件系统,它们可能由许多本地或网络的存储提供。最简单的卷类型是EmptyDir,它是一台机器上的临时目录。
• Node:node是集群中用来运行容器的节点,node通常由管理员管理,而不是由最终用户管理。
• Service:service是表示一组pod的逻辑名称,service被分配一个IP地址和一个DNS名称,可以通过端口或route向集群外部公开。名为SERVICE_HOST的环境变量会自动注入到其他pod中。
• Route:route是一个DNS条目,创建它是为了指向一个service,以便可以从集群外部访问它。可以配置一个或多个路由器来处理这些route,通常通过HAProxy负载均衡器。
• Replication Controller:Replication Controller基于匹配一组label的Templates维护特定数量的pod。如果删除了pod,控制器将创建该pod的新副本。Replication Controller最常用来表示基于image的应用程序部分的单个部署。
• Deployment Configuration:deployment configuration定义pod的模板,并在属性更改时管理部署新镜像或配置更改。单个deployment configuration通常类似于单个微服务。deployment configuration可以支持许多不同的部署模式,包括完全重启、可定制的滚动更新以及生命周期前后的顺序。每个deployment都表示为一个replication controller。
• Build Configuration:build configuration包含如何将源代码和基本image构建为新image的描述。Build可以是基于源代码的,可以为常见语言(如Java、PHP、Ruby或Python)或基于docker的(从Dockerfile创建构建)使用构建器镜像。每个build configuration都有webhook,可以通过对其基本镜像的更改自动触发。
• Build:构建从源代码、其他镜像、Dockerfiles或二进制输入创建新image。Build在容器中运行,具有与普通pod相同的限制。Build通常会导致将image推入Docker仓库中,但也可以选择运行post-build测试而不push到image仓库。
• Image Streams and Image Stream Tags:IS使用标记名称对相关is进行分组。它类似于源代码仓库中的分支。每个is可以有一个或多个标记(默认标记称为“latest”),这些标记可能指向外部Docker仓库、同一is中的其他标记,或者被控制为直接指向已知image。此外,可以通过集成的Docker仓库直接将image push到docker仓库。
• Secret:secret资源可以保存文本或二进制secrets,以便注入至pod。默认情况下,在/var/run/secrets/kubernetes.io/serviceaccount上,每个容器都有一个secret,其中包含访问API有限特权的令牌。可以创建新的secret并将它们挂载到自己的pod中,也可以引用构建中的secret(用于连接远程服务器),或者使用它们将远程image导入到is中。
• Project:所有上述资源(node除外)都存在于项目中。项目具有成员列表及其role(如view、edit或admin),以及运行的pod上的一组安全控制,并限制项目可以使用多少资源,资源名称在项目中是惟一的。
使用oc types命令快速

 

posted @ 2021-04-06 10:03  yyuuee  阅读(99)  评论(0编辑  收藏  举报