当前位置: 首页 > news >正文

中国建设劳动学会是正规网站吗旅游公司网站制作

中国建设劳动学会是正规网站吗,旅游公司网站制作,西安定制网站建设,国外的app设计网站目录 一、概述 二、Pod机制 2.1、共享网络 2.2、共享存储 三、Pod资源清单 四、 Pod 的分类 五、Pod阶段 六、Pod 镜像拉取策略 ImagePullBackOff 七、Pod 资源限制 八、容器重启策略 一、概述 Pod 是可以在 Kubernetes 中创建和管理的、最小的可部署的计算单元。P…目录 一、概述 二、Pod机制 2.1、共享网络 2.2、共享存储 三、Pod资源清单 四、 Pod 的分类 五、Pod阶段 六、Pod 镜像拉取策略 ImagePullBackOff 七、Pod 资源限制 八、容器重启策略 一、概述 Pod 是可以在 Kubernetes 中创建和管理的、最小的可部署的计算单元。Pod 里面是由一个或多个容器组成【一组容器的集合】这些容器共享存储、网络、以及怎样运行这些容器的声明。 Pod 是 Kubernetes 的最重要概念每一个 Pod 都有一个特殊的被称为”根容器“的Pause容器。Pause 容器对应的镜像属于 Kubernetes 平台的一部分除了Pause 容器每个Pod还包含一个或多个紧密相关的用户业务容器。 Pod有以下一些特性 资源共享 一个 Pod 里的多个容器可以共享存储和网络可以看作一个逻辑的主机。共享namespace,cgroups 或者其他的隔离资源。 一个 Pod 里的多个容器可以共享存储卷这个存储卷会被定义为 Pod 的一部分并且可以挂载到该 Pod 里的所有容器的文件系统上 。 生命周期短暂 Pod 属于生命周期比较短暂的组件比如当 Pod 所在节点发生故障那么该节点上的Pod会被调度到其他节点但需要注意的是被重新调度的 Pod 是一个全新的Pod跟之前的Pod 没有任何关系。 平坦的网络 k8s 集群中的所有 Pod 都在同一个共享网络地址空间中也就是说每个Pod 都可以通过其他 Pod 的 IP 地址来实现访问。 二、Pod机制 Pod 主要有以下两大机制共享网络 和 共享存储。 2.1、共享网络 容器通过 namespace 和 group 进行隔离。通过Pause容器把其它业务容器加入到Pause容器中让所有业务容器在同一个名称空间中可以实现网络共享。在同一个 Pod 内所有容器共享一个 IP 地址和端口空间并且可以通过 localhost 发现对方。 2.2、共享存储 一个 Pod 可以设置一组共享的存储卷。 Pod 中的所有容器都可以访问该共享卷从而允许这些容器共享数据。 卷还允许 Pod 中的持久数据保留下来即使其中的容器需要重新启动。 三、Pod资源清单 下面给出yaml文件定义的nginx Pod 的示例内容 $ kubectl create deployment nginx --imagenginx deployment.apps/nginx created$ kubectl get pods NAME READY STATUS RESTARTS AGE nginx-748c667d99-mp4d6 0/1 ContainerCreating 0 5s// 查看pod的yaml资源清单 $ kubectl get pods nginx-748c667d99-mp4d6 -o yaml apiVersion: v1 //版本号 kind: Pod //资源类型这里是Pod metadata: //元数据annotations: //pod注解信息cni.projectcalico.org/containerID: 8190e79f9ce4ebc75058013e14bd247a8a92210b28b613f9f80bcc761975117bcni.projectcalico.org/podIP: 192.168.1.3/32cni.projectcalico.org/podIPs: 192.168.1.3/32creationTimestamp: 2022-12-29T06:27:33ZgenerateName: nginx-748c667d99- //名称前缀labels: //pod标签列表app: nginxpod-template-hash: 748c667d99name: nginx-748c667d99-mp4d6 //pod名称namespace: default //pod所在的命名空间默认为defaultownerReferences:- apiVersion: apps/v1blockOwnerDeletion: truecontroller: truekind: ReplicaSetname: nginx-748c667d99uid: f09e2cff-2983-4af9-98e3-71e0d470eaa2resourceVersion: 2873uid: 28f22749-7343-428e-a20a-d7973e4c5a94 spec: // 资源特征containers: //pod 中的容器列表可以有多个容器- image: nginx //镜像地址默认从docker hub拉取nginx镜像imagePullPolicy: Always //获取镜像的策略默认值为Always每次都尝试重新下载镜像. 有三种取值[Always|Never|IfNotPresent]name: nginx //容器的名称resources: {}terminationMessagePath: /dev/termination-logterminationMessagePolicy: FilevolumeMounts: //挂载到到容器内部的存储卷设置- mountPath: /var/run/secrets/kubernetes.io/serviceaccount //存储卷在容器内部 Mount的绝对路径name: kube-api-access-78n9q //引用的是kube-api-access-78n9这个容器卷在下边有定义这个volumereadOnly: true //只读,默认值为读写dnsPolicy: ClusterFirstenableServiceLinks: truenodeName: node01 //pod所在的节点名称,由调度器scheduler进行调度preemptionPolicy: PreemptLowerPrioritypriority: 0restartPolicy: Always //重启策略schedulerName: default-scheduler //使用默认的调度器通常情况下使用默认的即可securityContext: {}serviceAccount: defaultserviceAccountName: defaultterminationGracePeriodSeconds: 30tolerations: //污点容忍- effect: NoExecutekey: node.kubernetes.io/not-readyoperator: ExiststolerationSeconds: 300- effect: NoExecutekey: node.kubernetes.io/unreachableoperator: ExiststolerationSeconds: 300volumes: //定义volume容器卷列表- name: kube-api-access-78n9qprojected:defaultMode: 420sources:- serviceAccountToken:expirationSeconds: 3607path: token- configMap:items:- key: ca.crtpath: ca.crtname: kube-root-ca.crt- downwardAPI:items:- fieldRef:apiVersion: v1fieldPath: metadata.namespacepath: namespace status:conditions: //pod的状况- lastProbeTime: nulllastTransitionTime: 2022-12-29T06:27:35Zstatus: Truetype: Initialized- lastProbeTime: nulllastTransitionTime: 2022-12-29T06:27:51Zstatus: Truetype: Ready- lastProbeTime: nulllastTransitionTime: 2022-12-29T06:27:51Zstatus: Truetype: ContainersReady- lastProbeTime: nulllastTransitionTime: 2022-12-29T06:27:35Zstatus: Truetype: PodScheduledcontainerStatuses:- containerID: containerd://1c7e903816a0de4192f3ffe4b3026d59bee259aa75b15a036d48aa3250574ad2image: docker.io/library/nginx:latestimageID: docker.io/library/nginxsha256:0047b729188a15da49380d9506d65959cce6d40291ccfb4e039f5dc7efd33286lastState: {}name: nginxready: truerestartCount: 0started: truestate:running:startedAt: 2022-12-29T06:27:50ZhostIP: 172.30.2.2phase: RunningpodIP: 192.168.1.3podIPs:- ip: 192.168.1.3qosClass: BestEffortstartTime: 2022-12-29T06:27:35Z 四、 Pod 的分类 Pod 有两种类型 1普通 Pod 普通 Pod 一旦被创建就会被放入到 etcd 中存储随后会被 Kubernetes Master 调度到某个具体的 Node 上并进行绑定随后该 Pod 对应的 Node 上的 kubelet 进程实例化成一组相关的 Docker 容器并启动起来。在默认情 况下当 Pod 里某个容器停止时Kubernetes 会自动检测到这个问题并且重新启动这个 Pod 里某所有容器 如果 Pod 所在的Node 宕机则会将这个 Node 上的所有 Pod 重新调度到其它节点上。 2静态 Pod 静态 Pod 是由 kubelet 进行管理的仅存在于特定 Node 上的 Pod它们不能通过API Server进行管理无法与 ReplicationController、Deployment 或 DaemonSet 进行关联并且kubelet 也无法对它们进行健康检查。 五、Pod阶段 Pod 的 status 字段是一个 PodStatus 对象其中包含一个 phase 字段。Pod 的阶段Phase是 Pod 在其生命周期中所处位置的简单宏观概述。 下面是 phase 可能的值 状态 说明 Pending悬决 api server已经创建了该pod但pod中的一个或者多个容器的镜像还没有创建包括镜像下载过程 Running运行中 pod内所有容器已经创建且至少一个容器处于运行状态、正在启动或者正在重启状态 Succeeded成功 pod内所有容器均成功退出且不会再重启 Failed失败 pod内所有容器均已退出但至少一个容器退出失败 Unknown未知 由于某种原因无法获取pod状态例如网络通信不畅 当一个 Pod 被删除时执行一些 kubectl 命令会展示这个 Pod 的状态为 Terminating终止。 这个 Terminating 状态并不是 Pod 阶段之一。 Pod 被赋予一个可以体面终止的期限默认为 30 秒。 你可以使用 --force 参数来强制终止 Pod。 六、Pod 镜像拉取策略 容器的 imagePullPolicy 和镜像的标签会影响 kubelet 尝试拉取下载指定的镜像。 以下列表包含了 imagePullPolicy 可以设置的值以及这些值的效果 IfNotPresent 只有当镜像在本地不存在时才会拉取。 Always 每当 kubelet 启动一个容器时kubelet 会查询容器的镜像仓库 将名称解析为一个镜像摘要。 如果 kubelet 有一个容器镜像并且对应的摘要已在本地缓存kubelet 就会使用其缓存的镜像 否则kubelet 就会使用解析后的摘要拉取镜像并使用该镜像来启动容器。 Never Kubelet 不会尝试获取镜像。如果镜像已经以某种方式存在本地 kubelet 会尝试启动容器否则会启动失败。 在生产环境中部署容器时你应该避免使用 :latest 标签因为这使得正在运行的镜像的版本难以追踪并且难以正确地回滚。 相反应指定一个有意义的标签如 v1.42.0。 ImagePullBackOff 当 kubelet 使用容器运行时创建 Pod 时容器可能因为 ImagePullBackOff 导致状态为 Waiting。 ImagePullBackOff 状态意味着容器无法启动 因为 Kubernetes 无法拉取容器镜像原因包括无效的镜像名称或从私有仓库拉取而没有 imagePullSecret。 BackOff 部分表示 Kubernetes 将继续尝试拉取镜像并增加回退延迟。 Kubernetes 会增加每次尝试之间的延迟直到达到编译限制即 300 秒5 分钟。 七、Pod 资源限制 每个 Pod 都可以对其能使用的服务器上的计算资源设置限额Kubernetes 中可以设置限额的计算资源有 CPU 与 Memory 两种其中 CPU 的资源单位为 CPU 数量是一个绝对值而非相对值。Memory 配额也是一个绝对值它的单位是内存字节数。 Kubernetes 里一个计算资源进行配额限定需要设定以下两个参数 Requests 该资源最小申请数量系统必须满足要求【表示调度所需的资源】 Limits 该资源最大允许使用的量不能突破当容器试图使用超过这个量的资源时可能会被 Kubernetes Kill 并重启 【表示最大所占用的资源】 spec:containers:- name: mysqlimage: mysqlresources:requests:memory: 64Micpu: 250mlimits:memory: 128Micpu: 500m 上述代码表明 mysql 容器申请最少 0.25 个 CPU 以及 64MiB 内存在运行过程中容器所能使用的资源配额为 0.5 个 CPU 以及 128MiB 内存。 八、容器重启策略 Pod 的 spec 中包含一个 restartPolicy 字段其可能取值包括 Always、OnFailure 和 Never。默认值是 Always。 restartPolicy 适用于 Pod 中的所有容器restartPolicy 仅针对同一节点上 kubelet 的容器重启动作。当 Pod 中的容器退出时kubelet 会按指数回退方式计算重启的延迟10s、20s、40s、...其最长延迟为 5 分钟。 一旦某容器执行了 10 分钟并且没有出现问题kubelet 对该容器的重启回退计时器执行重置操作。 重启策略restartPolicy主要分为以下三种 Always当容器终止退出后总是重启容器默认策略 OnFailure当容器异常退出且退出状态码非0时才重启容器Never当容器终止退出都不重启容器
http://www.zqtcl.cn/news/187352/

相关文章:

  • 泉州做外贸网站成都idc机房托管
  • 南京林业大学实验与建设网站宁波软件开发制作
  • 北京专业网站制作服务郑州有学网站制作
  • 搭建wordpress需要什么样的环境专注软件优化分享的网站
  • 网站备案后 如何建设下载免费ppt模板
  • 重慶网站建设网络服务器可提供的常见服务有什么、什么、什么和什么服务
  • 网站制作有限公司英文都不懂 学网站建设维护难吗
  • 深圳网站建设公司开发制作网站免费的网页网站
  • 开发网站公司德州做网站公司电话
  • 公司门户网站开发个人网站备案成功后怎么做
  • 远程医疗型网站开发三合一网站有必要吗
  • 什么网站是用html做的网站制作成本多少钱
  • 邢台企业网站制作建设wordpress多站点配置教程
  • 湖北省建设厅网站a群诸城网站价格
  • 江苏网站设计如何设置wordpress不自动更新
  • 已经有网站怎么做淘宝客网站建设 国外
  • 百度新闻源网站株洲在线论坛二手市场
  • 招聘做微信公众号网站维护推广网上国网的好处
  • php企业网站通讯录管理系统查找企业资料的网站
  • 专门做娱乐场所的设计网站有虚拟主机wordpress
  • 在线制作书封网站建德建设局官方网站
  • 广州建设手机网站wordpress 外部链接跳转
  • 传播公司可以做门户网站吗深圳常平网站建设制作公司
  • 最好的网站设计公司源码 php多平台网站建设
  • 下载了网站源码施工企业质量管理体系应按照我国
  • 有关网站建设国内外现状的文献英文谷歌seo
  • 珠海做网站哪间好佛山网站建设骏域
  • 免费网站建设支持ftp网络规划设计师资格证
  • 网站打开文件按钮怎么做十大网络游戏
  • 问答类咨询网站的建设烟台开发区做网站