自Google Anthos推出以来在混合云领域受到极大关注,作为Google进入ToB混合云市场的战略级产品,Anthos集成了如GKE (Google Kubernetes Engine)、GKE On-Prem、Istio on GKE等……引起业界的关注。可以说这又是Google又一大利器。那么混合云作为企业数字化转型的重要基础设施建设,既留了核心数据,降低了迁移风险,又能在原来资源的基础上增加公共云的弹性,一举多得,成为当前云计算发展的热门话题。而作为数字化转型的另外一个风向标DevOps如何与当前的混合云发展进行协作,带向企业进入云原生时代,将会成日今后数字化建设的一个重要主题。
作者 | 张雅文 近年来,混合云、多云正逐步成为企业用云的主流模式。据 IBM 的调查报告显示,仅截至 2021 年,采用混合云、多云战略的企业就已经接近 80%。混合云、多云战略的确能够增加企业资源配置的灵活性,但也给持续交付带来了更大的挑战。在软件发布频率持续增长趋势下,如何将版本快速分发到多个环境中去,成为令不少开发者头疼的问题。 近日,亚马逊云科技联合 JFrog 举行 《DevOps 实践:混合云模式下软件单一可信源的建设方法》为主题的 Tech Talk,JFrog (中国)技术总监王青与大家
作者:王青,JFrog 中国首席架构师,之前在 IBM,HPE,爱奇艺,新浪,VIPKID 等公司做过研发和架构,是有十多年开发经验的互联网老兵,专注于软件生命周期管理,微服务架构,云原生应用,容器化等领域。 什么是 Helm Charts? Helm Charts是 Kubernetes 项目中的一个子项目(https://github.com/kubernetes/helm)目的是提供 Kubernetes 的包管理平台。Helm 能够帮你管理 Kubernetes 的应用集合。Helm Chart
值此新春佳节将近之际,JFrog为广大DevOps团队奉上新春福利:我们宣布一项能够为我们的客户和整个DevOps社区带来实质性收益的重大举措,那就是,JFrog与Docker建立开创性的合作伙伴关系,使JFrog DevOps平台的云用户免于Docker Hub的镜像拉取的速度限制。
在近几年,Kubernetes迅速成为了容器编排的事实上的开源标准。与虚拟机不同,Kubernetes在抽象化基础架构的同时可靠地大规模编排容器,这可以帮助开发人员将工作负载与基础架构的复杂性分开。Kubernetes是CI/CD自动化的理想选择,因为它提供了许多内置功能,这些功能使应用程序部署实现标准化和可重用,提高了开发人员的生产力,并加快了云原生应用程序的采用。
Kubernetes已经成为市场上事实上领先的编配工具,不仅对技术公司如此,对所有公司都是如此,因为它允许您快速且可预测地部署应用程序、动态地伸缩应用程序、无缝地推出新特性,同时有效地利用硬件资源。
目前来看,互联网技术领域没有那么粗放了,可以看成从”一堆砖头“变成了码的整齐的砖头,各种人物资源、空间利用率更高了。
在大规模Docker 容器运行时环境中,如果镜像实例数 较多,需要同时大规模,多地更新镜像,比如大型电商平台需要更新所有容器的镜像时,Docker镜像中心往往成为性能瓶颈,这个瓶颈往往来自于镜像中心的网络出口,比如镜像中心所在主机有万兆网卡,则网络流量会被限制在 1000MB(注意是大 Byte),通常这个网卡会被多个应用共享使用,所以流量有很多损耗,导致无法满足 Docker 镜像实时分发的需求。即使将 Docker 镜像中心进行异地分布式部署,也存在瞬时的并发拉取流量难以满足,从而导致 Docker 拉取镜像失败,Pod 无法启动。
镜像仓库作为Docker技术的核心组件之一,其主要作用就是负责镜像内容的存储和分发。Docker镜像仓库从使用范围来说分为“公有镜像仓库”和“私有镜像仓库”,公有镜像仓库是可以被任何人使用的,例如Docker公司维护的在线存储库Docker Hub以及部分云服务厂商(如阿里云)提供的在线Docker镜像库等,都属于公有镜像仓库的范畴。
从Go 1.13开始,Go Module作为Golang中的标准包管理器,在安装时自动启用,并附带一个默认的GOPROXY。
大多数安全措施都是为了防止漏洞逃跑而设计的, 在此之前,我们也分享了一些第三方安全扫描的文章(请移步到历史文章中查看),尽早识别应用程序的风险意味着您可以防止或限制它部署到您的系统中(安全左移策略)。有了这些知识或工具,容器中任何可能造成损坏的漏洞都可以安全地留在由您的安全策略围栏后面。
引言 自从2018年从Cloud Native Computing Foundation(CNCF)出现以来,您可能已经在使用K8操作系统,随着容器云技术的发展以及落地,提高了企业运维的效率和质量,并且降低了企业运营成本,但同时带来的问题是运维的复杂度和难度,举个例子🌰:由于容器的生命周期短,随时可能飘移到其他物理资源上运行,因此日志的采集和运行的监控很难像传统方式登录到服务器上查看,而运营团队需要了解有价值的数据来进行问题定位以及运营数据分析。 为了更广泛地提供这种可观察性,我们需要提
一、镜像仓库的类型 常见的镜像仓库有三种: 1.Container Registry Container Registry是一个应用程序,用于上传(推送)和下载(拉)容器图像。 从历史上看,注册管理机构规范完全由Docker定义,最近通过OCI分布规范独立完成。 目前版本的Openshift内部使用的是docker registry V2,作为bulid config成功以后的镜像存放位置。 2.Enterprise Registry Enterprise Registry,它提供了更多适用于企业环境的附加
Go语言是Google开发的一种静态强类型、编译型、并发型,并具有垃圾回收功能的编程语言。为了方便搜索和识别,有时会将其称为Golang。自2009年11月Google正式宣布推出,成为开放源代码项目以来,Go语言已成为当今开发人员和DevOps领域最流行的语言之一, 它被用于设计和编写Kubernetes和Helm。但是,相比语言本身已经得到了广泛的普及和使用,Go语言的包管理方案却大大滞后了。
当前,随着比较常用的组件,如Tomcat、Docker、Kubernetes等陆续曝出存在高危漏洞,组件安全已成为业界日益关注的安全扫描新的重要分支。必须在DevOps流程中加强针对组件的安全扫描,这也是当前业界推荐的DevSecOps的重要组成部分。
随着Helm毕业,公开可用的Helm Charts数量不断增长,Helm社区的发展速度令人振奋,但要管理如此大量的HelmCharts和HelmChart仓库依然是一个挑战。
现代的企业面临着一个 VUCA 的时代,高可用系统架构面对着诸多不确定性带来的影响和挑战,如何才能能够突破困境,使得复杂的系统仍然能保持业务的连续性。业务的弹性扩容也同时会对高可用性的架构造成影响,在实践中,我们结合微服务/K8S/DevOps 这三架马车进行了微服务的容器化的实践之路。
Stolon 是一个用于 PostgreSQL 高可用性的云原生 PostgreSQL 管理器。它是云原生的,因为它可以让您在容器中(kubernetes 集成)以及所有其他类型的基础设施(云 IaaS、旧式基础设施等)上保持高可用性 PostgreSQL。
在这篇文章里,我们将介绍 8 个 DevOps 自动化工具,每一家公司都需要依靠它们来获得持续改进。
持续部署(CD) 是在持续集成的基础上,把集成代码或构建产物自动化部署到测试或生产环境。这就是我们所说的“流动软件”。完全自动化可以使您的部署无缝、更少的出错几率、更快,并且可以缩短反馈循环,因为您现在可以在每次更改之后进行部署。
云原生应用的崛起使得Kubernetes成为了不可或缺的一部分。本文将深入探讨如何将Spring Boot应用与Kubernetes相结合,以实现现代化、可伸缩、高可用的云部署。
Kubernetes(k8s)是一个基于容器技术的分布式架构领先方案。它在Docker技术的基础上,为容器化的应用提供部署运行、资源调度、服务发现和动态伸缩等一系列完整功能,提高了大规模容器集群管理的便捷性。
Yoav Landman是JFrog的首席技术官和联合创始人,与CNCF讨论有关GoCenter。
今天我要和大家探讨一个备受关注的话题:为什么在大数据服务上使用 Kubernetes(简称 K8s)?Kubernetes 是一个用于自动化容器化应用程序部署、扩展和管理的开源平台,而大数据服务通常包括庞大的数据集和复杂的计算工作负载,这两者似乎并不直接相关。那么,为什么越来越多的组织选择在大数据领域使用 Kubernetes 呢?接下来,我们将深入探讨这个问题,并提供一些实际示例。
使用容器编排工具如Kubernetes可以实现Ceph集群的高可用性和自动化管理,具体步骤如下:
随着 Harbor 被越来越多地部署在生产环境下,Harbor 的高可用性成为用户关注的热点。对于一些大中型企业用户,如果只有单实例的 Harbor,则一旦发生故障,其从开发到交付的流水线就可能被迫停止,无法满足高可用需求。
在当下的软件应用开发领域中,越来越多的敏捷化企业希望自己的软件开发过程能以超音速、甚至于星际穿梭的速度,来快速响应各种变化,但同时还要保证安全性。DevOps 流水线无疑为这一目标提供了最佳实践。
Kubernetes 是一种开源容器编排平台,用于自动化容器的部署、扩展和操作。etcd 是 Kubernetes 中的一个重要组件,它是一个高可用的键值存储系统,用于存储 Kubernetes 集群的状态信息和配置信息。
在现代应用开发和部署中,Docker 多主机部署成为必备技术,可以实现高可用性和容错性。本文将深入探讨 Docker 多主机部署的最佳实践,重点阐述和分析在构建容器集群时需要考虑的关键因素。此外,还将从社区角度、市场角度、领域、层面和技术领域应用等多个角度进行分析,帮助读者全面了解 Docker 多主机部署的重要性和实践方法。
K8S数据保护工具比较:Cohesity、 Kasten、 OpenEBS、 Portworx、 Rancher Longhorn、 和Velero
kubeadm是一个工具,使Kubernetes管理员能够快速、轻松地引导最小可行的集群,这些集群完全符合经过认证的Kubernetes指南。自2016年以来,它一直处于集群生命周期SIG的积极开发中,并在2018年底从beta版升级到通用版(GA)。
前言 本文给大家分享的题目是《基于DevOps、微服务以及K8S的高可用架构探索与实现》。整个企业的高可用架构面临很多的挑战,面向微服务、容器化以及敏态交付,是我们现在的三驾马车,而今天提到的一个比较接近的概念叫Kubernetes、DevOps和微服务这三驾马车也能够帮助企业级应用解决他们传统的一些问题。 本文给大家分享的主要内容都是从金融和通信领域中的具体案例总结而来,通过这次分享希望对大家能有所借鉴。主要内容包括企业级高可用性架构面临的挑战,面临这些内忧外患的挑战我们应该怎样做才能突破这样的困境,有哪
您可能已经听到了有关最新的Docker声明,其中涉及容器镜像提取的速率限制。从11月1日开始,Docker将开始根据您的订阅级别限制Docker Hub的使用,并强制阻止超出限制的拉取请求。不仅如此,Docker还制定了一项新的保留政策,即免费帐户,6个月未活动的镜像将被删除(最初定于11月1日,由于社区的反馈,该政策已推迟到2021年中期)。这些新的限制将对如何使用世界公开的Docker容器镜像产生重大影响。
在当下软件应用的开发过程当中,自研的内部代码所占的比例逐步地减少,开源的框架和共用库已经得到了广泛的引用。如下图所示,在一个Kubernetes部署的应用当中,我们自己开发代码所占的比例可能连0.1%都不到。
Kubernetes 入门指南 零、前言 一、Kubernetes 和容器操作 二、Kubernetes——核心概念和结构 三、核心概念——网络、存储和高级服务 四、更新和扩展 五、持续交付 六、监控和记录 七、OCI、CNCF、CoreOS 和 Tectonic 八、为生产做准备 Kubernetes Windows 实用指南 零、前言 第一部分:创建和使用容器 一、创建容器 二、管理容器中的状态 三、使用容器映像 第二部分:理解 Kubernetes 的基本原理 四、Kubernetes 概念和
综上所述,通过副本集、服务、水平自动伸缩、Ingress控制器和Pod健康检查等机制,可以实现在Kubernetes中的服务高可用性和负载均衡的需求。
在容器编排领域,Kubernetes 已成为领先的平台,可实现容器化应用程序的高效管理、扩展和部署。当应用程序在容器内运行时,正确终止这些容器对于维持系统的整体健康和可靠性至关重要。在本文中,我们将深入研究 Kubernetes 终止信号的概念,并了解它们如何确保应用程序正常关闭,避免数据丢失或用户体验中断。
Spring Boot是Java开发人员使用的最流行的框架之一,它可以轻松地创建独立的、生产级别的Spring应用程序。而Kubernetes是一个开源容器编排平台,可以自动化部署、扩展和管理容器化应用程序。将Spring Boot应用程序与Kubernetes结合使用,可以实现高可用性、弹性伸缩、快速部署等优势。在本文中,我们将详细介绍Spring Boot + Kubernetes中的滚动发布、优雅停机、弹性伸缩、应用监控和配置分离。
随着 DevOps 的出现频率越来越高,很多企业都在蠢蠢欲动,想要设计和开发 DevOps 平台。工欲善其事必先利其器,本文为大家总结了 DevOps 各个阶段可以选择的工具,也许 DevOps 平台的技术选型在这一篇文章中就可以完成。
本文整理自Hank Hudgins,Capital One高级工程师,在JFrog 2019用户大会上的讲演《Automated Artifactory HA Pipeline》。
本次演练旨在测试 Kubernetes 的 etcd 高可用性,检验是否能够在其中一个 etcd 节点发生故障的情况下,其他 etcd 节点能够接管其工作,确保集群仍能正常运行。
Kubernetes是一个开源的容器编排和管理平台,用于自动化部署、扩展和管理容器化应用程序。它提供了一个可靠的、可扩展的基础架构,使开发人员能够轻松地部署和管理应用程序,同时具备高可用性、弹性和灵活性。
在Kubernetes中,自动扩展是通过Horizontal Pod Autoscaler(HPA)实现的。HPA可以自动调整Pod的副本数,以确保应用程序的负载得到满足。HPA基于CPU使用率指标进行自动扩展,可以根据应用程序的负载动态调整Pod的副本数,从而确保应用程序的高可用性和性能。
将 Kubernetes 控制平面作为 Pod 托管可以为多集群和边缘用例启用(并简化)操作。但是,会带来一些新的要求和问题。而且标准可能来得比较慢。
应用程序开发人员根据用于态势感知或识别长期趋势的指标创建仪表板。他们希望衡量他们的增长并将今天的每日活跃用户与一年前的价值进行比较。
在 Kubernetes 中,将 pod 调度到集群中特定节点的任务由 kube-scheduler 完成. 该组件的默认行为是根据创建的 pod 中每个容器的资源请求和限制来过滤节点。然后对可用节点进行评分,以找到最适合放置 pod 的节点。
红帽JBoss Fuse 十多年来一直是构建Java Web / RESTful服务的实际标准。但是,如何在当今以云为中心的世界中该怎样高效运行?如您所见,基础架构即代码(infrastructure-as-a-code)和可扩展/容错(scalable/fault-tolerant)方法对于成功部署至关重要。
在分布式系统中,如何管理和协调各个节点之间的状态一直是一个核心问题。etcd作为一种开源、高可用的分布式键值对存储系统,为解决这个问题提供了一种优雅的方案。从这篇文章开始,我们将一起走进etcd的世界,了解它的基本概念、优势以及如何使用它进行分布式高可用的键值对存储。
Conan是通用且便携的。它适用于所有操作系统,包括 Windows、Linux、OSX、FreeBSD、Solaris 等,并且可以针对任何平台,包括桌面、服务器以及嵌入式和裸机设备的交叉构建。它与 Docker、MinGW、WSL 等其他工具以及 CMake、MSBuild、Makefiles、Meson、SCons 等所有构建系统集成。它甚至可以与任何专有的构建系统集成。
翻译自 Setting Kubernetes Standards with Platform Engineering 。
领取专属 10元无门槛券
手把手带您无忧上云