首页
学习
活动
专区
圈层
工具
发布
    • 综合排序
    • 最热优先
    • 最新优先
    时间不限
  • 来自专栏SRE运维实践

    容器镜像中心

    镜像中心 容器总是存在一个镜像中心,而一个镜像中心的存在主要是为了保存所有的镜像image,而在使用的时候,总是要追求高可用,从而会有不同的架构。 开源是为了更好的闭源,从而一般都是使用registry镜像来直接搭建镜像中心。 ? 在使用这种架构的时候,优点是可以平行扩展,当前端的处理能力不足的时候,可以多加几个机器来进行处理,但是调用的链路略长,在虚拟机中直接使用两个容器,一个容器是nginx,一个容器是registry。 在这里的高可用主要是需要一个额外的同步进程来进行同步两台机器上的镜像,从而将镜像中心的image保持同步。 虽然如果设计良好,镜像的空间增长是有限的,但是毕竟存在很多的冗余镜像,一种方法是配置文件中开启删除的功能,然后进行批量的删除,还有一种就是全量的替换挂载的目录/var/lib/registry,然后重启容器进行清空无用的

    1.8K40发布于 2019-07-08
  • 来自专栏云计算与大数据

    k8s: Init 容器

    它是一种专用的容器,在应用容器启动之前运行,并包括一些应用镜像中不存在的实用工具和安装脚本。 Pod 能够具有多个容器,应用运行在容器里面,但是它也可能有一个或多个先于应用容器启动的 Init 容器。 Init 容器与普通的容器非常像,除了如下两点: 它们总是运行到完成。 与普通容器的不同之处 Init 容器支持应用容器的全部字段和特性,包括资源限制、数据卷和安全设置。 然而,Init 容器对资源请求和限制的处理稍有不同,在下面 资源 处有说明。 每个 Init 容器必须运行成功,下一个才能够运行。 当所有的 Init 容器运行完成时,Kubernetes 初始化 Pod 并像平常一样运行应用容器。 Init 容器能做什么? 它们在应用容器启动之前运行完成,然而应用容器并行运行,所以 Init 容器提供了一种简单的方式来阻塞或延迟应用容器的启动,直到满足了一组先决条件。

    1.4K21发布于 2018-10-18
  • 来自专栏SRE运维实践

    删除容器镜像中心的镜像

    容器镜像的删除 在使用容器的时候,我们都是自己搭建一个私有的容器镜像环境,一般使用的镜像也就是registry了,用来保存相关的镜像,搭建了镜像,上传了镜像,使用了镜像,那么。。。 2、注册镜像中心 ? 3、 上传镜像到镜像中心 ? 4、 删除镜像 先获取到tag信息,然后获取到摘要信息,然后删除(默认未开启删除功能) ? 5、 修改配置文件 ?

    3.8K30发布于 2019-07-08
  • 来自专栏summerking的专栏

    k8s容器时间修改

    如何处理 K8S 启动的POD,默认时区不准的问题。 12 09:58:27 UTC 2021 [root@elasticsearch-b4489c797-cc28f elasticsearch]# exit exit # 使用 podpreset k8s

    68010编辑于 2022-09-19
  • 来自专栏容器计算

    k8s】事件中心的设想

    文章目录 众所周知 k8s 的 event 存活的时间并不长,因为都会存到 etcd 里的,所以不能一直存着,所以如果在排查问题的时候,想找找之前的 event,那就必须有旁路的组件逻辑去采集。 但是采集完之后,我们是需要考虑具体的业务场景的可用性的,比如 event 并不带 label,所以很多资源对象的信息其实没有存,数据结构来说比较简答,下面是一个 k8s 1.18 集群上拿到的一个日志格式 最后我们在设计事件中心的时候,其实可以在采集或者写入到目标地址前,通过一次 k8s 的客户端的查询,来获取一些 pod 或者其他类型资源对象的 label,或者一些如 ip 之类的信息,组合到即将入库的 event 中,当然这个时候 event 可能是一个 json 或者是事件中心进程内存里的一个对象,加多少 label 也不会对 k8s 集群有什么压力的,当然了,因为需要再查一次 pod 或者 deployment

    40740编辑于 2022-04-13
  • 来自专栏虚拟化云计算

    K8s是如何一步步走上容器生态的中心位置的

    早期的Kubernetes的Runtime架构比较简单,创建容器时kubelet直接调用docker daemon,docker daemon调用自己的libcontainer就把容器运行起来。 中移除,意味着取消了对 Docker 作为容器运行时的直接支持,因为 Docker 并不符合CRI,如果符合的话,当时就不需要这个 shim了。 OCI简介 OCI(Open Container Initiative)提出了明确的容器运行时和镜像规范,它是容器运行时的底层。 创建容器需要做一些设置 namespaces和 cgroup,挂载 root filesystem 等操作,而OCI就是规范这些底层操作的。OCI的一个参考实现叫做 runC。 在kubernetes看来,调度框架位于容器生态系统的中心位置,而“引擎”其实只是一个工具。

    65920发布于 2021-01-12
  • 来自专栏muller的测试分享

    软件测试|K8S 容器编排

    容器的创建和销毁都很方便,通过 K8S 的能力可以很方便的在需要时创建,结束时销毁回收资源以达到更好的资源利用率(就如上篇文章中介绍的 Jenkins 与 K8S 打通后的运作模式)。 注意:每次测试运行结束后,K8S 会销毁当前的容器,并启动一个一模一样的新容器来执行新的任务。也就是在的案例里如果不出意外的话,前后会启动 1000 个容器来完成本次的稳定性测试。 通过这样一个案例的讲解可以体会一下相比于原生的 Docker 容器K8S 带来了多少额外的能力。 在 K8S容器只不过是程序的运行时环境而已,除了程序能运行起来,K8S 更关注的是程序怎样更好的运行。 这便是 K8S 提供的"容器编排"了。希望读者可以用心体会"容器编排"这 4 个字的含义。接下来再看一下,如果希望任务能够定时触发该怎么办呢?

    53010编辑于 2023-01-04
  • 来自专栏容器计算

    k8s容器离线安装pstree

    一般场景下,容器网络都只有局域网内,无法跟 Internet 交互,如果这时候想安装一下命令的时候,简单地通过系统的 apt-get install 或者 yum install 是无法下载到公网的依赖的 main/p/psmisc/psmisc_23.3-1_arm64.deb k cp psmisc_23.3-1_arm64.deb instance-manager-e-01f96248:/tmp # 容器安装

    58541编辑于 2022-05-10
  • 来自专栏物流IT圈

    云架构师进阶攻略(3)-从容器到配置中心、日志中心、监控中心

    Docker, Kubernetes, DCOS 不谈信仰谈技术 容器平台选型的十大模式:Docker、DC/OS、K8S谁与当先? 基于Mesos的DCOS更像是一个数据中心管理平台,而非仅仅容器管理平台,他可以兼容Kubernetes的编排,同时也能跑各种大数据应用。 这时候不但在一个数据中心里面是分布式的,在多个数据中心里面也会有一个类似双活的一个备份,高可用性有非常好的保证。 设计要点四:缓存 ? 在高并发场景下缓存是非常重要的。 有时候 CDN 里面没有,还是要回到数据中心去下载,称为回源,在数据中心的最外层,我们称为接入层,可以设置一层缓存,将大部分的请求拦截,从而不会对后台的数据库造成压力。 同样是进程数目非常多的时候,很难对成千上百个容器,一个一个登录进去查看日志,所以需要统一的日志中心来收集日志。

    1.1K30发布于 2019-07-16
  • 来自专栏后端云

    k8s支持容器核绑定

    "PidsLimit": 0, [root@paasn4 ~]# taskset -c -p 118177 pid 118177's current affinity list: 0-39 开启容器工作节点支持

    3.7K40发布于 2020-06-11
  • 来自专栏知了一笑

    K8S | 容器和Pod组件

    容器镜像是可执行的软件包,可以单独运行;通常会创建应用的容器镜像并将其推送到某仓库,然后在Pod中引用它; 2、容器 容器将应用程序从底层的主机设施中解耦,这使得在不同的云或OS环境中部署更加容易; 集群中的每个节点都会运行容器,这些容器构成分配给该节点的Pod,单个Pod中的容器会在共同调度下,于同一位置运行在相同的节点上; 从整体上可以把K8S理解为「操作系统」,镜像理解为「软件安装包」,容器理解为 /urandom","-jar","/application.jar"] 三、Pod组件 1、基本概念 Pod是可以在K8S中创建和管理的、最小的可部署的计算单元; Pod是一组(一个或多个)容器, ,Pod看作单个容器的包装器由K8S直接管理,是常见的部署方式; 【多容器Pod】 分布式系统中可能存在由多个紧密耦合且需要共享资源的共处容器组成的应用程序,比较典型的是「生产消费」场景,Pod将这些容器和存储资源打包为一个可管理的实体 OnFailure:容器停止运行且退出码不为0时,kubelet自动重启该容器。 Never:不论容器是什么状态,kubelet都不重启该容器

    68460编辑于 2023-09-01
  • 来自专栏Java升级打怪进阶之路

    【云原生】容器编排K8S

    Pod是一个或多个容器的组合,这些容器共享存储、网络和命名空间,以及如何运行的规范。Pod是 K8s 的最小可部署单元。 ports: - protocol: TCP port: 1024 targetPort: 1024 注意 targetPort 必须和 deployment 步骤里容器的导出端口一致 基础组件介绍 贡献者:幻灰龙 到目前为止,我们从 k8s 命令行安装和操作的角度理解到了 k8s 的很多基本概念: 容器(docker)里可以跑代码 pod 可以管理容器(docker) ReplicaSet worker 两种节点 我们也掌握了安装 k8s 的概念 kubectl 可以用来和 k8s 集群通讯,是 k8s 的命令行客户端 使用 minikube/kind 可以创建学习环境 k8s 集群 使用 Controller Manager : 集群内部的控制管理中心 Scheduler: 集群内部的调度器,对 pod 进行调度 Kubelet:负责 Node 节点上的 pod 的增删查改 Proxy

    99230编辑于 2022-11-28
  • 来自专栏devops_k8s

    k8s中 pause 容器作用

    1 现象在k8s中集群中每当我们创建一个pod,都会伴随着一个pause容器产生,因此我们在node节点上会有很多的pause容器。 ,但不是pod,而且先于busybox容器产生,那么pause容器有什么作用呢? 在kubernetes中,pod是可以创建和管理的最小单元,由一个或多个相关联的容器组成。pod中的多个容器共享同一个network namespace,因此这些容器可以共享pod的IP和端口。 3 pause容器定义Pause容器 全称infrastucture container(又叫infra)基础容器,即它会在每个 Pod 里,额外起一个Infra container 小容器来共享整个 正如上面的实验,pause容器在node节点停止后,kubelet会重新拉起pause容器,此时pod内的容器都会重启,但pod的生命周期并没有随着pause容器的停止而重新计时。

    1.3K40编辑于 2023-07-21
  • 来自专栏架构技术

    Docker容器可视化监控中心搭建

    hmsr=toutiao.io&utm_medium=toutiao.io&utm_source=toutiao.io 概述 一个宿主机上可以运行多个容器化应用,容器化应用运行于宿主机上,我们需要知道该容器的运行情况 ,包括 CPU使用率、内存占用、网络状况以及磁盘空间等等一系列信息,而且这些信息随时间变化,我们称其为时序数据,本文将实操 如何搭建一个可视化的监控中心 来收集这些承载着具体应用的容器的时序信息并可视化分析与展示 ,包括容器运行过程中的资源使用情况和性能数据。 概述 一个宿主机上可以运行多个容器化应用,容器化应用运行于宿主机上,我们需要知道该容器的运行情况,包括 CPU使用率、内存占用、网络状况以及磁盘空间等等一系列信息,而且这些信息随时间变化,我们称其为时序数据 ,本文将实操 如何搭建一个可视化的监控中心 来收集这些承载着具体应用的容器的时序信息并可视化分析与展示!

    1K30发布于 2018-12-11
  • 来自专栏IT技术精选文摘

    Docker容器可视化监控中心搭建

    概述 一个宿主机上可以运行多个容器化应用,容器化应用运行于宿主机上,我们需要知道该容器的运行情况,包括 CPU使用率、内存占用、网络状况以及磁盘空间等等一系列信息,而且这些信息随时间变化,我们称其为时序数据 ,本文将实操 如何搭建一个可视化的监控中心 来收集这些承载着具体应用的容器的时序信息并可视化分析与展示! ---- 部署cAdvisor服务 谷歌的cadvisor可以用于收集Docker容器的时序信息,包括容器运行过程中的资源使用情况和性能数据。 这里选一个memory usage好了,然后要监控的容器选择grafana自身好了。 当然这里不止可以监控一个指标,也不止可以监控一个容器,更多组合我们只需要在下面并列着一个一个添加query条目就好!

    99250发布于 2018-06-22
  • 来自专栏CodeSheep的技术分享

    Docker容器可视化监控中心搭建

    一个宿主机上可以运行多个容器化应用,容器化应用运行于宿主机上,我们需要知道该容器的运行情况,包括 CPU使用率、内存占用、网络状况以及磁盘空间等等一系列信息,而且这些信息随时间变化,我们称其为时序数据, 本文将实操 如何搭建一个可视化的监控中心 来收集这些承载着具体应用的容器的时序信息并可视化分析与展示! ,本文将实操 如何搭建一个可视化的监控中心 来收集这些承载着具体应用的容器的时序信息并可视化分析与展示! 这里可以摸索的设置项还有很多,比如一些坐标自定义、显示策略自定义,甚至我们还可以自定义报警策略等等 ---- 后记 作者一些其他容器化应用方面的文章: 利用K8S技术栈打造个人私有云系列连载文章 利用 ELK搭建Docker容器化应用日志中心 作者更多的原创文章在此

    1.3K100发布于 2018-05-22
  • 来自专栏云攻略专区

    容器TKE】K8s云服务如何实现容器优雅停止旧Pod容器服务?

    容器终止流程 以下为容器在 Kubernetes 环境中的终止流程: Pod 被删除,此时 Pod 里有 DeletionTimestamp,且状态置为 Terminating。 kubelet 将对 Pod 中各个 container 发送 SIGTERM 信号,以通知容器进程开始优雅停止。 等待容器进程完全停止,如果在 terminationGracePeriodSeconds 内 (默认30s) 还未完全停止,将发送 SIGKILL 信号强制停止进程。 所有容器进程终止,清理 Pod 资源。 具体操作步骤 使用 preStop 要实现优雅终止,务必在业务代码里处理 SIGTERM 信号。

    5.1K61编辑于 2023-06-07
  • 来自专栏sunsky

    使用k8s容器钩子触发事件

    钩子能使容器感知其生命周期内的事件,并且当相应的生命周期钩子被调用时运行指定的代码。 容器钩子分为两类触发点:容器创建后PostStart和容器终止前PreStop。 如果钩子花费太长时间以至于容器不能运行或者挂起, 容器将不能达到running状态 PreStop 这个钩子在容器终止之前立即被调用。 可以为容器实现两种类型的钩子处理程序: Exec - 在容器的cgroups和命名空间内执行一个特定的命令,比如pre-stop.sh。 该命令消耗的资源被计入容器。 这里介绍 spring cloud 的服务发现组件: Eureka 是一个基于 REST 的服务,作为服务注册中心,用于定位服务来进行中间层服务器的负载均衡和故障转移。 admin:admin是eureka的登录名和密码,如果没有,直接去掉前面这段; instanceId是上面打开的链接显示的服务列表中的标签内容,如:myapp:192.168.1.100:8080 在k8s

    2K20发布于 2020-08-20
  • 来自专栏muller的测试分享

    软件测试|K8S 容器编排(上)

    K8S目前是业界容器编排领域的事实标准,是几乎所有云原生架构的首选。目前随着云原生架构越来越流行,测试开发人员需要掌握K8S技术栈已经成为越来越迫切的需求。 对于一个刚刚接触容器的初学者来说,搞清楚容器编排是什么,搞清楚 K8S 是什么是一件非常不容易的事情,编排二字赋予了它非常多的意义。 大多数人理解 K8S容器集群的管理技术,这个描述是不完整的,如果 K8S 仅仅是一个管理多台节点上容器的管理软件的话,那么业界直接称呼为容器集群就好了。 01在实际介绍 K8S容器编排实例前需要先了解一下 K8S 中最基本的资源类型--POD。可以说 POD 是 K8S 中最重要的资源,其他一切的资源都是围绕着 POD 并为其提供服务的。 希望通过这篇文章,你能对K8S容器编排了有了初步的了解,在下篇文章中,我们将通过介绍 K8S 中专门运行批处理程序的资源类型:JOB 的机制再来体会一下容器编排在其他方面的威力。

    48620编辑于 2023-01-04
  • 来自专栏架构进阶

    容器 & 服务: ClickHouse 与 k8s 架构

    k8s 基于监控的自动扩容,目前了解到的方案主要是基于 Prometheus,所以深入了解 k8s 架构和 Prometheus 的相关技术与方案是目前在进行中的技术储备。 -p:暴露容器中的端口到本机端口中。本机端口:容器端口。 四 K8S 架构 4.1 K8S 集群构成 根据官方文档的描述,k8s 集群由:1)控制平面组件(Control Plane Components);和 2)Node 组件构成(有些文章也会描述为由 master 4.3.3 容器运行时(Container Runtime) 容器运行环境是负责运行容器的软件。 4.4.3 容器资源监控 容器资源监控 将关于容器的一些常见的时间序列度量值保存到一个集中的数据库中,并提供用于浏览这些数据的界面。

    2.1K30发布于 2021-04-13
领券