内置自研容器引擎Newbon,精灵云EcOS更新至2.1版

情人节那天,我们正式对外展现了精灵云自研容器调度引擎Newbon的真实面目(详情可参见微信)。之所以选择情人节那天发布是希望接受过精灵云公有云超50万次容器调度的验证和考验的Newbon可以成为最懂广大Docker使用者的“最佳搭档”。

而同样内置了Newbon的Ghostcloud精灵云企业级容器云平台EcOS(Enterprise Container Operation System)也在情人节后第三天正式更新并上线至2.1版。新版本的EcOS做了以下5点重要功能更新:

  • 新增应用Stack模板,简化创建应用Stack的流程;
  • 新增多种可视化日志系统选项,用户可按需选择创建;
  • 集群支持多虚拟子网,增加了容器组的逻辑独立性;
  • 新增存储管理功能,方便容器持久化存储卷的使用;
  • 集成OpenLDAP/Windows AD用户管理,统一身份验证和管理。

接下来就分别看下EcOS 2.1中各项更新的详细介绍。

 

根据应用模板创建应用Stack

EcOS2.1新增应用Stack模板。用户可根据精灵云提供的不同Stack模板, 使用相应的镜像组及向导功能,来创建容器集群式的应用Stack。并且,根据模板创建的应用Stack和用户自定义创建的应用Stack一样,也能照常使用应用Stack的其他功能,如动态伸缩、负载均衡、灰度发布等。因此,应用模板在规范和简化用户创建应用Stack的流程上起到的作用显而易见。

EcOS应用Stack模板


提供多种日志系统选择

很多人在使用容器中只注重结果,对过程可能不闻不问,应用的日志可能随着标准输出标准错误扬长而去,无法捕捉,无法定格,结果不如意时只能望洋兴叹。因而容器内应用程序的日志搜集和容器日志同等重要。

ELK(ElasticSearch+LogStash+Kibana)是目前流行的一体化日志方案,提供日志收集、处理、存储、搜索、展示等全方位功能。其中LogStash Client可一直监视制定文件,将其中更新的内容发给LogStashServer ,然后通过LogStash输出,所以运行一个LogStash容器就可以监控用户所有的想监控的容器应用。

而在日志搜集和统一分析方面,EcOS 2.1新增了三种可视化日志搜集和日志分析方案供用户选择,分别是:EFK(ElasticSearch +Fluentd + Kibana)、ELK(ElasticSearch + LogStash + Kibana)和ELKK(ElasticSearch + LogStash + Kafka + Kibana)。这三种日志搜集系统不仅可以保障用户能统一、实时地搜集容器日志,同时还能搜集容器内应用程序的日志,且操作很简单,用户根据自己的需要创建应用和配置日志服务器即可。

可选择的日志系统方案


集群支持多虚拟子网

如大家所知,虚拟局域网是一组逻辑上的设备和用户,这些设备和用户并不受物理位置的限制,可以根据功能、部门及应用等因素将它们组织起来,相互之间的通信就好像它们在同一个网段中一样。大家所熟知的Kubernetes集群中的每个主机都有自己一个完整的子网,容器之间亦可相互通信。

而得益于Newbon调度框架组件,精灵云也加入这个架构思路,在EcOS 2.1版本中,用户可根据实际应用需求,在EcOS集群系统中创建多个虚拟子网,并且子网之间的容器可相互通信。


添加子网


存储管理功能


提到Docker Volume和Volume Plugin其实大家并不陌生,Volume是Docker中一个独立的数据访问接口,应用通过Volume去访问相关的数据,并通过Volume Plugin机制轻易驱动外部存储。而Volume数据卷的概念就是来应对数据持久化的。对用户来说,定义好需要持久化的数据,并采用Volume接口来存储访问是容器应用中一个非常重要的步骤。

如下图所示,EcOS 2.1新增的存储管理功能,让用户可使用Docker Volume Plugin创建网络存储AWS EBS/NFS Volume,并挂载到容器里。该功能也更加方便了容器使用持久化存储卷。

创建AWS EBS Volume

创建AWS NFS Volume

添加网络存储卷

集成OpenLDAP/Windows AD用户管理

OpenLDAP和Windows AD是两种常见的身份验证和管理手段,均能方便用户统一的身份验证、安全管理以及资源公用,可减少管理成本,增强安全性,避免数据复制的问题,并提高数据的一致性。

基于对用户操作习惯的重视,我们在EcOS 2.1的更新功能中集成了OpenLDAP和Windows AD来进行用户管理。用户在EcOS里进行相应配置后,可使用OpenLDAP或Windows AD来绑定和登录EcOS。

OpenLDAP/Windows AD用户管理

从本轮更新的EcOS 2.1版本来看,无论是在日志搜集系统的选择和存储管理还是在用户管理方面,EcOS平台都为用户提供了多重选择的可能,这也进一步印证了精灵云EcOS平台可为用户提供高度定制化的功能,且更加贴近用户需求。

关于精灵云

Ghostcloud精灵云成立于2015年,坐落于成都天府软件园D区,是成都高新区重点扶持企业,也是国内首批从事容器虚拟化研发的企业,为企业级行业客户提供针对互联网化、私有云管理平台、大数据业务基础架构的平台服务。将最新容器技术与DevOps/微服务相融合,运用至企业IT系统的全生命周期的开发、测试、运维及发布的流程中,帮助企业级客户降低成本、提升效率、简化运维及系统部署,并提升系统的可靠性及安全性。依靠对业务流程和应用的丰富行业经验,以及对新一代虚拟化技术Docker的深度集成,Ghostcloud精灵云为企业级客户核心业务提供安全可靠的支撑,构建新一代云计算高效IT系统。

时间: 2024-12-22 01:14:28

内置自研容器引擎Newbon,精灵云EcOS更新至2.1版的相关文章

ASP.NET Core Web 应用程序系列(一)- 使用ASP.NET Core内置的IoC容器DI进行批量依赖注入

在正式进入主题之前我们来看下几个概念: 一.依赖倒置 依赖倒置是编程五大原则之一,即: 1.上层模块不应该依赖于下层模块,它们共同依赖于一个抽象. 2.抽象不能依赖于具体,具体依赖于抽象. 其中上层就是指使用者,下层就是指被使用者. 二.IoC控制反转 控制反转(IoC,全称Inversion of Control)是一种思想,所谓“控制反转”,就是反转获得依赖对象的过程. 三.依赖注入(DI) 依赖注入设计模式是一种在类及其依赖对象之间实现控制反转(IoC)思想的技术. 所谓依赖注入(DI,全

自研容器调度引擎Newben会成为“中国的K8s”?

作者:精灵云 前言: 一个月以前,我们对外详细介绍了内置在精灵云EcOS(Enterprise Container Operation System,企业级容器云平台)中的全自研容器调度框架Newben ,文章刚发出,就有很多人向小GO询问Newben是否会开源的问题.在此,小GO引用精灵云创始人晏东对CSDN的专访回答作为给大家的统一答复:"Newben适用于所有以Docker作为虚拟化引擎的场景,目前主要面向中大型企业,不对外开放代码."也就是说,Newben目前暂不开源,而是内置

JSP内置对象详解

jsp中内置对象:request.response.session.applecation.out.pagecontesx.config.page.exception.cookie 1.request:是javax.servlet.httpservletRequest类型的对象,该对象是用户客户端的请求信息,主要用户接受客户端通过http协议传送到服务器的数据! (包括头部信息.系统信息.请求方式以及请求信息参数),jsp内置对象Web容器所创建的一组对象! 生命周期:jsp发出请求一个requ

内置标签[1]

ThinkPHP 模版中的内置标签,所谓内置标签就是模版引擎 提供的一组可以完成控制.循环和判断功能的类似 HTML 语法的标签. 一. 判断比较 ThinkPHP 内置了 IF 标签用于在模版中进行条件判断. 首先在  Home/controller/UserController.class.php  内插入以下代码: 1 class UserController extends Controller { 2 public function index() { 3 $user='蜡笔小新';

Tomcat的常用内置对象

Tomcat的常用内置对象 1.request内置对象 所谓内置对象就是容器已经创建好了的对象,如果收到一个用户的请求就会自动创建一个对象来处理客户端发送的一些信息,这个内置对象就是request.类型是javax.servlet.http.HttpServletRequest.  request内置对象包含了用户发送的一些信息,我们可以使用对应的成员方法进行操作,下面举一些常见的方法. 1 System.out.println("浏览器信息:"+req.getHeader("

Python类型及内置函数

List类型常用函数: append(obj):在列表尾部添加一个对象 count(obj):计算对象在列表中出现的次数 extend(seq):把序列seq的内容添加到列表中 index(obj,i=0,j=len(list)):计算对象obj在列表中的索引位置 insert(index,obj):把对象插入列表index指定的位置 pop(index=-1):读取并删除index位置的对象,默认为最后一个对象 remove(obj):从列表中删除对象obj reverse():获得反向列表

jersey 集成spring,并使用grizzly内置容器测试jersey

jersey集成spring相对来说比较简单,需要注意的几点是: 1.引入maven依赖jersey-spring,其中包含了spring的相关依赖,如果和项目中所使用的spring版本相冲突,可以通过exclusions清除掉. 2.确保jersey资源类所在的包路径,能被spring扫描到,即spring配置中的<context:component-scan base-package="" />. 3.确保jersey资源类打上注解@Component,这样可以注入sp

内置容器的排序规则构造方式

转自:http://lhearen.top/2016/08/27/Sort-for-Built-in-Containers/ C ++中有很多内置的容器,我们可以轻松有效地实现我们想要的内容. 然而,有时它们的排序能力相对有限,因此,我们必须提出自定义比较器来重新定义排序功能. 几乎所有的函数/容器(例如priority_queue除外)都要求排序满足严格弱排序的标准数学定义,否则函数/容器的行为将不会被定义. 方法: 定义 operator<() 如果你希望自定义类的对象能够像往常的原始类型一

Go语言开发(三)、Go语言内置容器

Go语言开发(三).Go语言内置容器 一.Go语言数组 1.Go语言数组简介 Go语言提供了数组类型的数据结构.数组是具有相同唯一类型的一组已编号且长度固定的数据项序列,类型可以是任意的原始类型例如×××.字符串或者自定义类型.相对于去声明number0, number1, ..., and number99的变量,使用数组形式numbers[0], numbers[1] ..., numbers[99]更加方便且易于扩展.数组元素可以通过索引(位置)来读取(或者修改),索引从0开始,第一个元素