Docker+ Kubernetes已成为云计算的主流(二十六)

640?wx_fmt=gif


前言              

最近正在抽时间编写k8s的相关教程,很是费时,等相关内容初步完成后,再和大家分享。对于k8s,还是上云更为简单、稳定并且节省成本,因此我们需要对主流云服务的容器服务进行了解,以便更好地应用于生产。




目录



主流云服务容器服务介绍 

  • 亚马逊AWS 

  • 微软Azure 

  • 阿里云 

  • 腾讯云 

Docker+ Kubernetes已成为云计算的主流 

  • 什么是Kubernetes(k8s) 

  • Kubernetes正在塑造应用程序开发和管理的未来 

  • Docker+ Kubernetes已成为云计算的主流 


 主流云服务容器服务介绍




1亚马逊AWSAmazon Web Services (AWS) 是亚马逊公司旗下云计算服务平台,为全世界范围内的客户提供云解决方案。AWS面向用户提供包括弹性计算、存储、数据库、应用程序在内的一整套云计算服务,帮助企业降低IT投入成本和维护成本。

那么如何在AWS上运行Docker呢?AWS 同时为 Docker 开源解决方案和商业解决方案提供支持,并且可通过多种方式在 AWS 上运行容器:

  • Amazon Elastic Container Service (ECS),是一种高度可扩展的高性能容器编排服务,支持Docker容器,让我们可以在 AWS 上轻松运行和扩展容器化应用程序,而不需要安装和操作自己的容器编排软件,不需要管理和扩展虚拟机集群,也不需要在这些虚拟机上调度容器。其工作原理如下图所示:

640


  • AWS Fargate,适用于Amazon ECS的技术,可让我们在生产环境中运行容器,而无需部署或管理基础设施。

  • Amazon Elastic Container Service for Kubernetes (EKS) ,可以让我们在 AWS 上运行 Kubernetes,而无需安装和操作 Kubernetes 主节点。

  • Amazon Elastic Container Registry (ECR) ,是一个高度可用且安全的私有容器存储库,可以让我们能够轻松地存储和管理Docker 容器镜像,并对静态镜像进行加密和压缩,以便快速提取和保护这些镜像。

  • AWS Batch,可以让Docker 容器运行高度可扩展的批处理工作负载。


2微软Azure

Microsoft Azure 是一个开放而灵活的企业级云计算平台。通过 IaaS + PaaS 帮助用户加快发展步伐,提高工作效率并节省运营成本。

Azure是一种灵活和支持互操作的平台,它可以被用来创建云中运行的应用或者通过基于云的特性来加强现有应用。它开放式的架构给开发者提供了Web应用、互联设备的应用、个人电脑、服务器、或者提供最优在线复杂解决方案的选择。

在容器这块,Azure同样的提供了众多解决方案:

640

下面我们侧重介绍下以下服务:

  • Azure 容器实例:Azure 容器实例提供了在 Azure 中运行容器的最简捷方式,既无需预配任何虚拟机,也不必采用更高级的服务。

  • Azure Service Fabric:Azure Service Fabric 是一款分布式系统平台,可方便用户轻松打包、部署和管理可缩放的可靠微服务和容器。 开发人员和管理员不需解决复杂的基础结构问题,只需专注于实现苛刻的任务关键型工作负荷,即那些可缩放、可靠且易于管理的工作负荷。总之,Azure Service Fabric 旨在解决构建和运行服务方面的难题,并有效地利用基础结构资源,使团队可以使用微服务方法来解决业务问题。并且,其与服务生成方式无关,可以使用任意技术。不过,它确实提供内置编程 API,以便用户可以更轻松地生成微服务。

640

  • Azure Kubernetes 服务 (AKS):AKS管理托管的 Kubernetes 环境,使用户无需具备容器业务流程专业知识即可快速、轻松地部署和管理容器化的应用程序。 它还通过按需预配、升级和缩放资源,消除了正在进行的操作和维护的负担,而无需使应用程序脱机。

  • Azure 应用服务:Azure应用服务是用于托管 Web 应用程序、REST API 和移动后端的服务。可以使用 .NET、NET Core、Java、Ruby、Node.js、PHP 或 Python 等偏好的语言进行开发。 在基于 Windows 和 Linux 的环境中,应用程序都可以轻松地运行和缩放。应用服务不仅可将 Microsoft Azure 的强大功能(例如安全性、负载均衡、自动缩放和自动管理)添加到应用程序。还能利用其DevOps功能,例如来自Azure DevOps、GitHub、Docker 中心和其他源的持续部署,以及包管理、过渡环境、自定义域和 SSL 证书。

  • Azure Dev Spaces:使用 Azure Dev Spaces,可以测试并以迭代方式开发在 Azure Kubernetes 服务 (AKS) 中运行的整个微服务应用程序,而无需复制或模拟依赖项。 Azure Dev Spaces 减少了在共享 Azure Kubernetes 服务 (AKS) 群集中与你的团队协作以及直接在 AKS 中运行和调试容器的负担,并降低了这些工作的复杂度。


3阿里云

阿里云(www.aliyun.com)创立于2009年,是全球领先的云计算及人工智能科技公司,为200多个国家和地区的企业、开发者和政府机构提供服务。2017年1月阿里云成为奥运会全球指定云服务商。2017年8月阿里巴巴财报数据显示,阿里云付费云计算用户超过100万。阿里云致力于以在线公共服务的方式,提供安全、可靠的计算和数据处理能力,让计算和人工智能成为普惠科技。阿里云在全球18个地域开放了49个可用区,为全球数十亿用户提供可靠的计算支持。此外,阿里云为全球客户部署200多个飞天数据中心,通过底层统一的飞天操作系统,为客户提供全球独有的混合云体验。

飞天(Apsara)是由阿里云自主研发、服务全球的超大规模通用计算操作系统。 它可以将遍布全球的百万级服务器连成一台超级计算机,以在线公共服务的方式为社会提供计算能力。 从PC互联网到移动互联网到万物互联网,互联网成为世界新的基础设施。飞天希望解决人类计算的规模、效率和安全问题。飞天的革命性在于将云计算的三个方向整合起来:提供足够强大的计算能力,提供通用的计算能力,提供普惠的计算能力。飞天诞生于2009年2月,目前为全球200多个国家和地区的创新创业企业、政府、机构等提供服务。

640

同样,阿里云对容器也提供了友好的支持:

  • 容器服务 ACS

容器服务提供高性能可伸缩的容器应用管理服务,支持用Docker和Kubernetes进行容器化应用的生命周期管理,提供多种应用发布方式和持续交付能力并支持微服务架构。容器服务简化了容器管理集群的搭建工作,整合了阿里云虚拟化、存储、网络和安全能力,打造云端最佳容器运行环境。

  • 容器服务 ACK

容器服务 Kubernetes 版(简称 ACK)提供高性能可伸缩的容器应用管理能力,支持企业级 Kubernetes 容器化应用的全生命周期管理。容器服务 Kubernetes 版简化集群的搭建和扩容等工作,整合阿里云虚拟化、存储、网络和安全能力,打造云端最佳的 Kubernetes 容器化应用运行环境。

  • 弹性容器实例 ECI

阿里云弹性容器实例(Elastic Container Instance)是 Serverless 和容器化的弹性计算服务。用户无需管理底层 ECS 服务器,只需要提供打包好的镜像,即可运行容器,并仅为容器实际运行消耗的资源付费。

  • 容器镜像服务 ACR

容器镜像服务(Container Registry)提供安全的镜像托管能力,稳定的国内外镜像构建服务,便捷的镜像授权功能,方便用户进行镜像全生命周期管理。容器镜像服务简化了Registry的搭建运维工作,支持多地域的镜像托管,并联合容器服务等云产品,为用户打造云上使用Docker的一体化体验。


4腾讯云

腾讯云为腾讯倾力打造的云计算品牌,以卓越科技能力助力各行各业数字化转型,为全球客户提供领先的云计算、大数据、人工智能服务,以及定制化行业解决方案。其基于QQ、微信、腾讯游戏等海量业务的技术锤炼,从基础架构到精细化运营,从平台实力到生态能力建设,腾讯云将之整合并面向市场,使之能够为企业和创业者提供集云计算、云数据、云运营于一体的云端服务体验。

在容器这块,腾讯云提供了如下解决方案:

  • 容器服务 TKE

腾讯云容器服务(Tencent Kubernetes Engine ,TKE)基于原生 kubernetes 提供以容器为核心的、高度可扩展的高性能容器管理服务。腾讯云容器服务完全兼容原生 kubernetes API ,扩展了腾讯云的 CBS、CLB 等 kubernetes 插件,为容器化的应用提供高效部署、资源调度、服务发现和动态伸缩等一系列完整功能,解决用户开发、测试及运维过程的环境一致性问题,提高了大规模容器集群管理的便捷性,帮助用户降低成本,提高效率。容器服务提供免费使用,涉及的其他云产品另外单独计费。

640

  • 容器实例服务 CIS

容器实例服务(Container Instance Service , CIS)可以帮用户在云上快捷、灵活的部署容器,让用户专注于构建程序和使用容器而非管理设备上。无需预购 CVM(云服务器),就可以在几秒内启动一批容器来执行任务。同时,开发者也可以通过 kubernetes API 把已有kubernetes 集群的 pod 调度到 CIS 上以处理突增业务。CIS 根据实际使用的资源计费,可以帮用户节约计算成本。使用 CIS 可以极大降低用户部署容器的门槛,降低用户执行 batch 型任务或处理业务突增的成本。


Docker+ Kubernetes已成为云计算的主流


从上面主流的云服务中我们可以看到,没有哪家云厂商不支持Docker,同样的,也没有哪家云厂商不支持Kubernetes!也就是说,Docker+ Kubernetes已经成为云计算的主流!


1什么是Kubernetes(k8s)

Kubernetes(简称k8s)诞生于谷歌,是一个开源的,用于管理云平台中多个主机上的容器化的应用,k8s的目标是让部署容器化的应用简单并且高效,其提供了应用部署、规划、更新、维护的机制。

k8s主要有以下特点:

  • 可移植

支持公有云,私有云,混合云,多重云(multi-cloud) 。可以将容器化的工作负载从本地开发计算机无缝移动到生产环境。在本地基础结构以及公共云和混合云中,在不同环境中协调容器,保持一致性。

  • 可扩展性

支持模块化,插件化,可挂载,可组合。并且k8s的扩展和插件在社区开发者和各大公司的支持下高速增长,用户可以充分利用这些社区产品/服务以添加各种功能。

  • 自动化和可伸缩性

支持自动部署,自动重启,自动复制,自动伸缩/扩展,并且可以定义复杂的容器化应用程序并将其部署在服务器群集甚至多个群集上——因为k8s会根据所需状态优化资源。通过内置的自动缩放器,k8s可轻松地水平缩放应用程序,同时自动监视和维护容器的正常运行。


2Kubernetes正在塑造应用程序开发和管理的未来

k8s构建于 Google 数十年经验,一大半来源于 Google 生产环境规模的经验。结合了社区最佳的想法和实践,而且还在不断地高速迭代和更新之中。

她衔着金钥匙出生,一诞生就广受欢迎,更是在2017,其打败了所有的竞争对手,赢得了云计算的战争——主流的云厂商基本上都纷纷放弃了自己造“轮子”的举动,终止了各自的容器编排工具,加盟了k8s阵营,其中包括Red Hat、微软、IBM、阿里、腾讯、华为和甲骨文等。

k8s像风暴一样席卷了应用开发领域,并且已成为云原生应用程序(架构、组件、部署和管理方式)的事实标准,大量的开发者和企业正在使用k8s创建由微服务和无服务器功能组成的现代架构。


3Docker+ Kubernetes已成为云计算的主流

容器是现代软件交付的未来,而Kubernetes是编排容器的最佳方案(事实上的标准)。

Docker 和Kubernetes相辅相成,联手打下了云计算的“万里江山”。Docker 为打包和分发容器化应用程序提供了一个开放的标准,而 Kubernetes 则协调和管理通过 Docker 创建的分布式容器化应用程序。换句话说,Kubernetes 提供了部署和运行通过Docker生成的应用程序所需的基础结构。

在主流的云服务,基于Docker+k8s的新型PaaS平台具有敏捷部署、弹性伸缩、灵活调度、故障自动恢复等优势,充分满足业务扩展中的资源支持,因此在短短两年之内,便从Docker Swarm、Cloud Foundry Diego、Kontena、Apache Mesos、Amazon ECS…等大量对手中脱颖而出,拿下了皇冠。

k8s和Docker的胜利意味着这是有史以来第一次,无论使用哪一种云平台,研发人员都可以拥有完全相同的计算环境。

往期内容




Docker最全教程——从理论到实战(一)

Docker最全教程——从理论到实战(二)

Docker最全教程——从理论到实战(三)

Docker最全教程——从理论到实战(四)

Docker最全教程——从理论到实战(五)

Docker最全教程——从理论到实战(六)

Docker最全教程——从理论到实战(七)

Docker最全教程——从理论到实战(八)    

Docker最全教程——从理论到实战(九)

Docker最全教程之使用Tencent Hub来完成CI(十)
Docker最全教程——数据库容器化(十一)
Docker最全教程——数据库容器化之持久保存数据(十二)
Docker最全教程——MongoDB容器化(十三)
Docker最全教程——Redis容器化以及排行榜实战(十四)

Docker最全教程之Ubuntu下安装Docker(十五)

Docker最全教程之树莓派和Docker(十六)

Docker最全教程之使用TeamCity来完成内部CI、CD流程(十七)

Docker最全教程之使用Docker搭建Java开发环境(十八)

Docker最全教程之Go实战,墙裂推荐(十九)

Docker最全教程之使用.NET Core推送钉钉消息(二十)

Docker最全教程之使用 Visual Studio Code玩转Docker(二十一)

Docker最全教程之Python爬网实战(二十二)

使用PHP搭建个人博客站点

Docker最全教程之使用Node.js搭建团队技术文档站(二十四)

Docker最全教程之MySQL容器化 (二十五)




640?wx_fmt=jpeg


本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/315406.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

P4137 Rmq Problem / mex 主席树求mex

传送门 文章目录题意:思路:题意: 思路: 按照值建线段树,每个位置维护值出现的最后位置,让后可持久化一下,当查询[l,r][l,r][l,r]的时候,我们只需要在[1,r][1,r][1,r]中找最后出现位…

《刷新》:拥抱同理心,建立成长型思维

“ 不刷新即死亡”2018年,很多朋友包括博客园里的很多园友都在阅读微软第三任CEO萨提亚纳德拉的这本《刷新》并且发布了很多读后感,但我却一直没有来得及阅读。刚好最近订阅了喜马拉雅的VIP会员,每天上下班时间开始了听书之旅,这里…

Consul初探-集成ocelot

前言由于 Consul 的高可用性、丰富的API、友好的 Web 控制台界面等特点,Consul 的发展非常迅猛,得益于 .NETCore 社区的快速发展和社区成员的贡献,我们现在可以非常方便快速的将 Consul 集成到 .NETCore 中,在 Ocelot 的集成方面也…

2021年广东工业大学第十五届文远知行杯程序设计竞赛(同步赛) H.有多短 思维

传送门 文章目录题意:思路:题意: 思路: 可以发现树的直径起点和终点一定是两个度数为111的点,所以我们可以把kkk平均的分给所有度数为111的点,这样答案就为2∗kcnt\frac{2*k}{cnt}cnt2∗k​。 证如果分配给…

Identity和IdentityServer的区别及联系

关于Identity和IdentityServer初学的时候可能会有一些疑惑(虽然我也不是很精深吧),但是,这里说一下自己关于这两者的一些理解,如有错误,欢迎指正总体上,ASP.NET Core Identity提供了一个用来管理和存储用户账户的框架.IdentitySer…

C#规范整理·集合和Linq

LINQ(Language Integrated Query,语言集成查询)提供了类似于SQL的语法,能对集合进行遍历、筛选和投影。一旦掌握了LINQ,你就会发现在开发中再也离不开它。  开始!前言C#中的集合表现为数组和若干集合类。不管是数组还…

UVA - 11361 Investigating Div-Sum Property(数位dp/记忆化搜索板子)

题目:https://vjudge.net/problem/UVA-11361 思路:数位dp,用记忆化搜索写,dp[pos][i][j][limit] 代表剩余有pos位,每位上的数字和模k 等于i, 当前总数值模k等于j,limit代表限制位。 本题还要注意…

C#并发编程之异步编程(三)

写在前面本篇是异步编程系列的第三篇,本来计划第三篇的内容是介绍异步编程中常用的几个方法,但是前两篇写出来后,身边的朋友总是会有其他问题,所以决定再续写一篇,作为异步编程(一)和异步编程(二)的补充。本篇内容主要…

UVA - 10253 Series-Parallel Networks(递推式、记忆化搜索写法)

题目:UVA-10253 题目翻译(来自蓝书): 串并联网络有两个端点,一个叫源,一个叫汇,递归定义如下: (1) 一条单独的边是串并联网络。 (2)…

C#规范整理·泛型委托事件

基于泛型,我们得以将类型参数化,以便更大范围地进行代码复用。同时,它减少了泛型类及泛型方法中的转型,确保了类型安全。委托本身是一种引用类型,它保存的也是托管堆中对象的引用,只不过这个引用比较特殊&a…

Abp v0.18.0 新版本: MVC Module 启动模板

0.18.0将于近期发布, 本文内容针对于0.18.0版本.MVC模块启动模板可用此模板开发基于模块开发最佳实践和约定的可复用 应用程序模块 . 它同样适用于开发微服务.如何开始?你可以使用ABP CLI创建基于此启动模板的新项目,或者你也可以在入门页面创建并下载项目. 在这里我们使用CLI…

Consul-template+nginx实现自动负载均衡

前言consul-template 是 Consul 的一个守护程序,使用 consul-template 可以方便快速的实现对 Consul Key/Value 存储系统的访问,可以从 KV 系统中读取数据、监视变动、同步本地文件;还可以在执行模板更新的同时,执行本地系统命令&…

Codeforces Round #613 (Div. 2) E. Delete a Segment 离散化

传送门 文章目录题意:思路:题意: 思路: 我们考虑将区间内的位置都111,之后求区间段数就可以转换成求,连续不为000的区间段数,由于范围有[−1e9,1e9][-1e9,1e9][−1e9,1e9]的级别,所…

是时候挥别 SQL Server 2008 了

微软 宣布将于 2019 年 7 月终止对 SQL Server 2008 和 2008 R2 的支持,使用 SQL Server 2008 的公司应该认真开始考虑下一步了。本文引用了一家数字化转型咨询公司高级顾问对此的分析,并提供了一些解决方案和注意事项。如果你还在使用 微软 2008 版的 S…

领域驱动设计,让程序员心中有码(八)

领域驱动是十五年前,由Eric Evans提出的解决软件工程复杂性问题的方法,作者从自己多年软件开发的角度出发,通过引入领域驱动设计的概念以及一系列战略设计模式和战术方法,为混沌的软件开发领域带来了一缕阳光。在过去的许多年&…

H - Great Cells Gym - 101194H(数学推导/思维)

VJ地址 ps:在训练时写这道题 差点被送走了 我们可以发现给出的公式可以转化这样 这个就不说了,就是k^(nm)所以排列的可能; 然后我们要重点观察这个公式,可以发现g * Ag(方案数 * good点的数量) 可以意味这组成一个…

基于Dapper的开源Lambda扩展,且支持分库分表自动生成实体之基础

LnskyDB是基于Dapper的Lambda扩展,支持按时间分库分表,也可以自定义分库分表方法.而且可以T4生成实体类免去手写实体类的烦恼.文档地址: https://liningit.github.io/LnskyDB/开源地址: https://github.com/liningit/LnskyDBnuget地址: https://www.nuget.org/packages/LnskyDB…

技术达人“创造营”官宣:Microsoft Learn 学习平台C位出道

真的大神敢于直面随时更新的IT技术你是要做一个平平无奇的“合格员工”?还是要做一个博古通今的“江湖百晓生”?转型变化,是时代的氛围面对日新月异的技术更新一不留神,就会沦落为“技术支持滞后人员”在微软,有这样一…

P2839 [国家集训队]middle 二分 + 主席树 在值域上建区间

传送门 文章目录题意&#xff1a;思路&#xff1a;题意&#xff1a; 思路&#xff1a; 我们先解决怎么判断中位数的问题&#xff0c;我们可以二分一个midmidmid&#xff0c;将<mid<mid<mid的值都变成−1-1−1&#xff0c;其他的数都变成111&#xff0c;那么当全部的和…

读再多书都没觉得自己变强?试试我这“5年陈”的方法

这里是Z哥的个人公众号每周五早8点 按时送达当然了&#xff0c;也会时不时加个餐&#xff5e;我的第「76」篇原创敬上4800字巨献奉上hi&#xff0c;大家好。三周过去了&#xff0c;上次教你的几个「速读」技巧练习的怎么样了&#xff1f;上周&#xff0c;已经有不少小伙们开始催…