多重保护,提升读写,提高利用率
云物理机性能卓越、满足核心高性能应用场景
服务器托管性能可控、资源独享、物理资源隔离
镜像标准镜像、服务集成镜像,自定义镜像
本地快照定期对数据备份,以防数据丢失
比格云容器服务基于原生Kubernetes管理方案提供以容器为核心的解决方案。
有效解决了用户开发、测试及运维过程中的环境问题。
有效帮助用户降低成本,提高效率。
使用比格云,会涉及到以下基本概念:
集群:是指容器运行所需云资源的集合,包含了若干台云服务器、负载均衡器等云资源。
实例(Pod):由相关的一个或多个容器构成一个实例,这些容器共享相同的存储和网络空间。
工作负载:Kubernetes 资源对象,用于管理 Pod 副本的创建、调度以及整个生命周期的自动控制。
Service:由多个相同配置的实例(Pod)和访问这些实例(Pod)的规则组成的微服务。
Ingress:Ingress是用于将外部HTTP(S)流量路由到服务(Service)的规则集合。
镜像仓库:用于存放Docker镜像,Docker镜像用于部署容器服务。
1 注册并登录账号
注册并登录容器服务控制台,完成容器服务创建,即可开始使用容器服务产品。
2 创建集群
根据创建集群页面,填写相关信息和购买资源服务,即可创建集群。
3 部署工作负载
支持使用镜像部署、YAML 文件编排两种方式部署工作负载。
4 完成工作负载创建后,通过监控、升级、伸缩等操作对 Pod 生命周期进行管理。
产品优势 | 比格云容器服务 | 自建容器服务 |
---|---|---|
灵活扩展 | 比格云容器服务与负载均衡集成,支持在多个容器之间分配流量。您只需指定容器配置和要使用的负载均衡器,容器服务管理程序将自动添加和删除。除此之外,容器服务可以自动恢复运行状况不佳的容器,保证容器数量满足您的需求,以便为应用程序提供支持。 | 需要根据业务流量情况和健康情况人工确定容器服务的部署,可用性和可扩展性差。 |
安全独立 | 采用独立专属云主机进行部署,采用分布式服务架构,保证服务故障自动恢复、快速迁移,实现服务和数据的安全、高可用。 | 自建容器服务受到内核影响,很难确保服务的稳定可靠。除此之外,租户、设备等模块隔离性都比较差。 |
快速部署 | 高效的BGP网络,保障了镜像的极速上传和下载。容器秒级启动,极大程度降低了运行所需要的成本,更加专注于业务本身。 | 容易网络质量无法保证,镜像创建效率无法保障。 |
成本可控 | 比格云容器服务没有任何附加费用。您只需为您创建的用于存储和运行应用程序的云服务资源(例如云服务器、共享存储、网络等)付费。 | 前期需要投入大量时间和金钱进行构建,维护,扩容等。 |
简单易用 | 比格云容器服务提供大规模容器集群管理、资源调度、容器编排、代码构建,屏蔽了底层基础构架的差异,简化了分布式应用的管理和运维。无需再操作集群管理软件,只需启动容器集群,并指定想要运行的任务即可,让您可以集中精力开发Docker化的应用程序。 | 自建容器涉及集群管理软件、配置管理系统。管理难度高,实现复杂。 |
设备与容器运用管理
1 支持部署无状态工作负载、有状态工作负载、守护进程集、普通任务、定时任务等。
2 应用升级支持替换升级、滚动升级(按比例、实例个数进行滚动升级);支持升级回滚。
3 弹性伸缩支持节点和工作负载的弹性伸缩。
弹性伸缩
1 电商客户遇到促销、限时秒杀等活动期间,访问量激增,需及时、自动扩展云计算资源。
2 视频直播客户业务负载变化难以预测,需要根据CPU/内存使用率进行实时扩缩容。
3 游戏客户每天中午12点及晚上18:00-23:00间需求增长,需要定时扩容。
服务搭建
1 开箱即用与云容器引擎无缝对接,一键开启后即可提供非侵入的智能流量治理解决方案。
2 策略化智能路由无需修改代码,即可实现HTTP、TCP等服务连接策略和安全策略。
容器服务暂不收取服务本身费用,用户只需支付对应资源创建费用即可,具体资源资费列表可参考官网价格计算器。
实例计费模式 | 包月 | 包年 | 按需计费 |
---|---|---|---|
付款方式 | 预付费 | 预付费 | 购买时冻结费用,每小时结算 |
计费单位 | 元/月 | 元/月 | 元/小时 |
单价 | 单价较低 | 单价较低 | 单价较高 |
是指容器运行所需云资源的集合,包含了若干台云服务器、负载均衡器等云资源。
容器技术起源于Linux,是一种内核虚拟化技术,提供轻量级的虚拟化,以便隔离进程和资源。
尽管容器技术已经出现很久,却是随着Docker的出现而变得广为人知。
Docker是第一个使容器能在不同机器之间移植的系统。
它不仅简化了打包应用的流程,也简化了打包应用的库和依赖,甚至整个操作系统的文件系统能被打包成一个简单的可移植的包。
这个包可以被用来在任何其他运行Docker的机器上使用。
容器和虚拟机具有相似的资源隔离和分配方式,容器虚拟化了操作系统而不是硬件,更加便携和高效。
Node是运行具体容器的主机,负责提供后具体的服务,并且本身具有自我修复能力。
(Node组件结构图)
1 kubelet
负责对pod对应容器创建,启停等一系列的任务,kubelet时刻watch着Master中的APIServer中的资源变动。
当有和自己相关的任务的时候就会调用Docker执行具体的任务。
2 kube-proxy
用于实现K8SService(需要提供的服务)的通信和负载均衡。
3 Pod
K8S不是直接运行的容器,而是操作Pod,把Pod作为原子单元管理。
一个Pod里面可运行多个容器,Pod里面运行的多个容器被捆绑在一起被统一调度不可分割。一个Pod的所有容器只能同时运行在一个Node上。
(Master组件结构图)
1 ETCD
用户保存应用程序配置信息的守护进程,是一个k-v存储系统,存储内容为用用户发出的API请求中容器的具体要求。
2 APIServer
是K8S开放给用户的唯一入口,接受用户的指令。同时对指令进行规范检查,将合乎规范的话将其放入etcd中。
3 Scheduler
是作为调度器,负责的内容是寻找要部署的容器的最佳Node主从模式,只能有一个正在执行的服务。
4 ControllerLoop
使用轮询的方式保证每个容器的运行正常,当某个资源不可用,会尝试重启,要是还不行,会尝试初始化资源,比如尝试把容器铲掉,拉取镜像重启运行。
(Pod组件结构图)
Pod是Kubernetes创建或部署的最小/最简单的基本单位,一个Pod代表集群上正在运行的一个进程。
一个Pod封装一个应用容器(也可以有多个容器),存储资源、一个独立的网络IP以及管理控制容器运行方式的策略选项。
Pod代表部署的一个单位:Kubernetes中单个应用的实例,它可能由单个容器或多个容器共享组成的资源。
1 Deployment
Deployment集成了上线部署、滚动升级、创建副本、恢复上线的功能。
在某种程度上,Deployment实现无人值守的上线,大大降低了上线过程的复杂性和操作风险。
2 DaemonSet
DaemonSet是这样一种对象(守护进程),它在集群的每个节点上运行一个Pod,且保证只有一个Pod。
这非常适合一些系统层面的应用,例如日志收集、资源监控等,这类应用需要每个节点都运行,且不需要太多实例
一个比较好的例子就是Kubernetes的kube-proxy。
3 StatefulSet
StatefulSet给每个,Pod提供固定名称,Pod名称增加从0-N的固定后缀,Pod重新调度后Pod名称和HostName不变。
StatefulSet通过HeadlessService给每个Pod提供固定的访问域名。
StatefulSet通过创建固定标识的PVC保证Pod重新调度后还是能访问到相同的持久化数据。
4 CronJob
CronJob是基于时间的Job,就类似于Linux系统的crontab文件中的一行,在指定的时间周期运行指定的Job。
任务负载的这种用完即停止的特性,特别适合一次性任务,比如持续集成。
5 Job
Job是Kubernetes用来控制批处理型任务的资源对象。
批处理业务与长期伺服业务(Deployment、Statefulset)的主要区别是批处理业务的运行有头有尾。
而长期伺服业务在用户不停止的情况下永远运行。
Job管理的Pod根据用户的设置把任务成功完成就自动退出(Pod自动删除)。
1 ConfigMap
ConfigMap是一种用于存储应用所需配置信息的资源类型,用于保存配置数据的键值对,可以用来保存单个属性,也可以用来保存配置文件。
通过ConfigMap可以方便的做到配置解耦,使得不同环境有不同的配置。
2 Secret
Secret是一种加密存储的资源对象,您可以将认证信息、证书、私钥等保存在Secret中,
而不需要把这些敏感数据暴露到镜像或者Pod定义中,从而更加安全和灵活。
Secret与ConfigMap非常像,都是key-value键值对形式,使用方式也相同,不同的是Secret会加密存储,所以适用于存储敏感信息。
为集群内容器分配在容器网络地址范围内的IP地址。
1 Service
用户在Kubernetes中可以部署各种容器,其中一部分是通过HTTP、HTTPS协议对外提供七层网络服务,
另一部分是通过TCP、UDP协议提供四层网络服务。而Kubernetes定义的Service资源就是用来管理集群中四层网络的服务访问。
Kubernetes的ServiceTypes允许指定Service类型,默认为ClusterIP类型。
ServiceTypes的可取值以及行为描述如下:
ClusterIP
通过集群的内部IP暴露服务。当您的服务只需要在集群内部被访问时,请使用该类型。该类型为默认的ServiceType。
NodePort
通过每个集群节点上的IP和静态端口(NodePort)暴露服务。
NodePort服务会路由到ClusterIP服务,该ClusterIP服务会自动创建。
通过请求
除了测试以及非生产环境以外,不推荐在生产环境中直接通过集群节点对外甚至公网提供服务。
从安全上考虑,使用该类型会直接暴露集群节点,容易受到攻击。
通常认为集群节点是动态的、可伸缩的,使用该类型使得对外提供服务的地址和集群节点产生了耦合。
LoadBalancer
负载均衡器,可以向公网或者内网暴露服务。负载均衡器可以路由到NodePort服务,或直接转发到处于内部网络条件下的容器中。
ClusterIP和NodePort类型的Service,在不同云服务商或是自建集群中的行为表现通常情况下相同。
而LoadBalancer类型的Service,由于使用了负载均衡进行服务暴露。
2 Ingress
Service是基于四层TCP和UDP协议转发的,而Ingress可以基于七层的HTTP和HTTPS协议转发,可以通过域名和路径做到更细粒度的划分。
为集群内主机分配在节点网络地址范围内的IP地址。
命名空间(Namespace)是对一组资源和对象的抽象整合。
在同一个集群内可创建不同的命名空间,不同命名空间中的数据彼此隔离。
使得它们既可以共享同一个集群的服务,也能够互不干扰。
集群创建完成后,不可以切换Master机型操作系统。如需切换Node机型操作系统,需先将Node机型移出后再更换操作系统
云主机到期或被销毁可能导致Master或Node节点不可用
自行升级内部组件版本可能导致集群无法使用
Copyright © 2011-2024 Biggeryun.com. All Rights Reserved. 比格云 版权所有
工信部可信云云主机服务认证 | 国家信息安全等级保护三级认证 | 《中华人民共和国增值电信业务经营许可证》B1-20172466 | 沪ICP备12023723号-6 | 沪公网安备 31011502006948号 拒绝网络谣言 清朗网络环境