什么是云原生?如何解决容器原生存储问题?

本文涉及的产品
容器镜像服务 ACR,镜像仓库100个 不限时长
简介: “云原生”是一个被人们经常使用但不是定义很清楚的一个术语。我们认为“云原生应用”应有以下特点:

什么是云原生?

“云原生”是一个被人们经常使用但不是定义很清楚的一个术语。我们认为“云原生应用”应有以下特点:

  1. 他们不是单独的,它们是离散的、在逻辑上可分离的几个部分,每个单独打包和部署。通常这些都是以容器为单元完成,在某些情况下就像普通的Linux软件包一样。
  2. 在同一台计算机上不应强制运行其全部软件堆栈。它们可以在任何地方、任何服务器或任何区域内计划运行。它们还应该能够在分布式部署系统中相互感知。
  3. 通过增加特定计算逻辑的并行实例,应用程序应能够根据需求快速扩展。
  4. 应用程序所依赖的、用于协调通信或状态保存的服务应该能够根据需要以编程和动态的方式进行探知和修改,且与其物理基础设施无关。

通过明确定义云原生的含义,我们可以更好地定义各种云原生技术组件的职责划分。这些云原生应用组件的实例包括调度软件、网络软件以及存储软件。

如何解决容器原生存储问题?

Portworx开发了一种新的存储体系结构—容器定义型存储。它基于高度分布式环境开始构建。调度软件将其作为容器进行部署和管理,并将存储作为本地卷插件扩展到Docker容器中。

Portworx提供了一种现代化的DevOps应用部署方式。我们可以让调度工具将存储基础设施部署为容器。因此,大规模部署存储将变得十分简单,不需要复杂的手动操作。

Portworx侧重于高负荷负载,及其在普通服务器上的容器粒度操作。Portworx的核心专为现代服务器构建,并利用了NVMe、SSD和更快速网络技术的最新进展。

Portworx体系结构使用户能够在混合云环境中扩展其服务,而不需要在数据路径中使用中央元数据服务器。这对于采用容器定义的工作流来说是至关重要的。为了方便与调度软件,如Kubernetes、Mesos、Swarm等进行本地集成,我们在设计Portworx部署时考虑了以容器为中心的DevOps工作流。Portworx架构还支持以DevOps为中心的内路存储服务,以及容器化的应用。

除了容器的本地存储,Portworx容器定义的存储的主要优势包括:

容器细粒度卷管理:类似数据库这样的有状态型容器化应用,需要在分布式节点上的永久数据。Portworx使用有状态的Stateful Fabric来管理数据卷,即container-SLA-aware,来做到这一点。复制卷数据确保其状态,同时满足容器化应用的性能和可用性。更重要的是,Portworx可在每个容器级别中管理其快照、克隆副本和复制操作,使DevOps能够单独管理微服务,而不是像LUNs那用做传统存储系统的绑定组。使用Portworx管理有态容器Stateful Containers很方便,每个容器级别的数据的可用性和管理也很简单,且高度自动化。

1.主机地址访问型存储: 主机地址访问型存储是在没有任何中央元数据服务器的情况下实现扩展存储。每个卷直接映射到宿主上(即不需要转译)。与当前的存储解决方案相比,Portworx的方法有三个优点:

• 消除了管理和维护中央数据库的需求,简化了存储管理和配置。

• 增加新的节点,使弹性扩展变得更便捷。

• 支持适用于跨数据中心跨云的存储集群云原生架构(私有或公有云)。

  1. 自动调整: Portworx根据每个服务器的配置参数自动调优最佳数据放置和分层算法。从而免除了手动干预、调优或配置RAID参数或驱动器组的工作。所有的驱动器都将作为一个大的全局池供Portworx使用,而Portworx软件将决定存储的最优配置。
  2. Lighthouse云监控管理: 您的数据可以保存在您的云中,也可以存储在本地环境,都可以通过Portworx的Lighthouse云监控服务和直观的用户界面来管理。
  3. 快速同步: 快速同步功能为在多节点环境中的应用性能加速提供同步支撑环境。它允许数据库以更高的IOPS速率运行,并通过减少本地驱动器上的争用来支持更大密度的部署。
  4. 全局命名空间: 卷可以在运行在不同服务器上的多个应用程序之间共享。
  5. 云原生扩展,包括:

•自动快照和备份到S3

•数据反馈,云中的虚拟卷可以访问来自不同云或数据中心的数据

•CoS与不同EBS卷类型配对

•Restful APIs可用于查询命名空间的修改情况——避免了在元数据管理中进行昂贵的命名空间操作,如is、find等

随着容器在企业中的部署越来越多,大多数存储供应商感到必须为容器提供支撑,比如Docker的卷插件。但是,连接到Docker的Array忽略了容器的分布式特性,以及需要将容器、调度器和存储作为一个无缝整体的精密架构和易用性。

一些新的用于容器的分布式软件项目可能会避免使用传统存储供应商的方法,但是我们发现分布式软件的尝试在存储数据路径实现方面存在缺陷,这可能会导致严重的性能问题和规模限制。

Portworx为企业客户提供了第一个真正的容器专用型基础设施。因此,它是部署具有严格的、可扩展的、自动化的、分布式存储层的有态容器应用的必要的部分,有助于完善容器的生态系统。

目录
相关文章
|
3月前
|
Cloud Native 中间件 调度
云原生信息提取系统:容器化流程与CI/CD集成实践
本文介绍如何通过工程化手段解决数据提取任务中的稳定性与部署难题。结合 Scrapy、Docker、代理中间件与 CI/CD 工具,构建可自动运行、持续迭代的云原生信息提取系统,实现结构化数据采集与标准化交付。
114 1
云原生信息提取系统:容器化流程与CI/CD集成实践
|
9月前
|
存储 监控 对象存储
ACK 容器监控存储全面更新:让您的应用运行更稳定、更透明
针对本地存储和 PVC 这两种容器存储使用方式,我们对 ACK 的容器存储监控功能进行了全新升级。此次更新完善了对集群中不同存储类型的监控能力,不仅对之前已有的监控大盘进行了优化,还针对不同的云存储类型,上线了全新的监控大盘,确保用户能够更好地理解和管理容器业务应用的存储资源。
587 279
|
5月前
|
Kubernetes Cloud Native 区块链
Arista cEOS 4.30.10M - 针对云原生环境设计的容器化网络操作系统
Arista cEOS 4.30.10M - 针对云原生环境设计的容器化网络操作系统
152 0
|
7月前
|
安全 持续交付 云计算
课时5:阿里云容器服务:最原生的集成Docker和云服务
阿里云容器服务以服务化形式构建容器基础设施,大幅提升开发效率,简化应用部署流程。通过Docker容器和DevOps工具(如Jenkins),实现自动化部署与迭代,优化企业内部复杂部署问题。该服务支持GPU调度、混合云架构无缝迁移,并与阿里云产品体系无缝集成,提供安全防护、网络负载均衡等多重功能支持。凭借微服务架构,帮助企业突破业务瓶颈,提高资源利用率,轻松应对海量流量。
245 0
课时5:阿里云容器服务:最原生的集成Docker和云服务
|
7月前
|
存储 监控 对象存储
ACK 容器监控存储全面更新:让您的应用运行更稳定、更透明
ACK 容器监控存储全面更新:让您的应用运行更稳定、更透明
173 0
ACK 容器监控存储全面更新:让您的应用运行更稳定、更透明
|
8月前
|
存储 监控 对象存储
ACK 容器监控存储全面更新:让您的应用运行更稳定、更透明
ACK 容器监控存储全面更新:让您的应用运行更稳定、更透明
123 1
|
7月前
|
存储 运维 Kubernetes
容器数据保护:基于容器服务 Kubernetes 版(ACK)备份中心实现K8s存储卷一键备份与恢复
阿里云ACK备份中心提供一站式容器化业务灾备及迁移方案,减少数据丢失风险,确保业务稳定运行。
|
9月前
|
存储 监控 对象存储
ACK容器监控存储全面更新:让您的应用运行更稳定、更透明
介绍升级之后的ACK容器监控体系,包括各大盘界面展示和概要介绍。
|
10月前
|
存储 Kubernetes 开发者
容器化时代的领航者:Docker 和 Kubernetes 云原生时代的黄金搭档
Docker 是一种开源的应用容器引擎,允许开发者将应用程序及其依赖打包成可移植的镜像,并在任何支持 Docker 的平台上运行。其核心概念包括镜像、容器和仓库。镜像是只读的文件系统,容器是镜像的运行实例,仓库用于存储和分发镜像。Kubernetes(k8s)则是容器集群管理系统,提供自动化部署、扩展和维护等功能,支持服务发现、负载均衡、自动伸缩等特性。两者结合使用,可以实现高效的容器化应用管理和运维。Docker 主要用于单主机上的容器管理,而 Kubernetes 则专注于跨多主机的容器编排与调度。尽管 k8s 逐渐减少了对 Docker 作为容器运行时的支持,但 Doc
385 5
容器化时代的领航者:Docker 和 Kubernetes 云原生时代的黄金搭档
|
7月前
|
人工智能 Cloud Native 安全
从云原生到 AI 原生,谈谈我经历的网关发展历程和趋势
从云原生到 AI 原生,谈谈我经历的网关发展历程和趋势
109 0