精华内容
下载资源
问答
  • 如今,市场上已有的先进技术已经改变了数据保护模式,并创建了一数据保护模式,即数据不仅被复制或备份,而且还通过基于区块链验证来保护其免受网络攻击。 去年,Ethereum公司创始人Vitalik Buterin表示,...
    如今,市场上已有的先进技术已经改变了数据保护模式,并创建了一种新的数据保护模式,即数据不仅被复制或备份,而且还通过基于区块链的验证来保护其免受网络攻击。

    去年,Ethereum公司的创始人Vitalik Buterin表示,由于面临可扩展性问题,该公司的区块链平台可能永远不会取代集中式云计算,但它在未来几年内将优于VISA平台。

    正如Buterin所言,目前区块链在提供运行大数据应用程序所需的计算能力方面,还远远不能取代云计算。但这并不意味着这项技术无法帮助它达到目标,也不意味着它在改善现有云计算基础设施方面没有起到任何作用。

    区块链寻求解决的云计算面临的主要挑战之一是成本。云计算解决方案在短时应用时往往比较便宜,但在用于具有可预测工作负载的应用程序时可能非常昂贵。换句话说,这些解决方案在偶尔需要使用时具有成本效益,但在日常使用时比传统方法要昂贵的多。

    云计算应用的高成本可归因于亚马逊、微软、IBM等公司提供的服务的集中化。但是现在通过区块链技术,可以分散云计算应用。除了降低成本外,分散管理还可以确保提高效率,同时消除数据泄露的风险。

    其中一家进入云计算分散化市场的公司是Conduit公司,这是一个由麻省理工(MIT)培训的工程师所创立的平台。该项目试图从各种设备收集未使用的计算能力,并将其与需要运行大量计算机应用程序的企业和用户共享。

    与传统的云计算解决方案不同,区块链驱动的云计算解决方案将依赖来自包括个人计算机用户的大量的闲置计算能力。这意味着拥有无限制的计算能力和更低的成本,因为提供者和用户都不需要建立任何基础设施。

    根据Conduit公司的首席技术官Ryan Robinson的说法,该项目对提供加密货币所需的计算能力非常有帮助。为了挖掘加密货币所需的巨大能耗是大规模接受和认可其有效性的主要障碍之一。

    在这个领域的解决方案对加密大规模采用来说是无价的。通过Conduit公司提供的解决方案,个人可以从电脑上挖掘加密货币,而无需投资于成本高昂的基础设施。

    Conduit公司的解决方案不是试图使云计算空间民主化的唯一的解决方案。另一个名为Leonardo Render的公司正在开发一种解决方案,使用户能够使用外部GPU而不是个人GPU或基于云计算的GPU来实现其创作过程。渲染或图像合成是计算机图形卡执行复杂计算以生成2D或3D图像的过程。

    微软首席执行官对收购GitHub非常看好

    目前,个人或公司需要投资自己的渲染基础设施或依靠云计算服务。这两种选择不仅成本价高昂,而且动画师获得每秒钟的视频渲染时间需要等待一个月,其速度非常缓慢。

    Leonardo Render公司利用区块链使用户能够直接连接到大规模GPU开采公司,并利用其计算能力,而无需将他们的创意作品上传到第三方平台。这意味着渲染可以在用户的计算机上实施,并且他们能够跟踪整个过程的各个阶段。

    除了帮助创作者和艺术家之外,Leonardo Render解决方案还将对加密货币的矿工有所帮助。与CPU相比,GPU被认为更适合加密挖矿,因为它们更倾向于执行类似和重复的任务,而不是多元化的多任务功能。

    另一个名为Gladius的公司也正在开发一种解决方案,将带宽聚合在一起,并与需要额外带宽的用户共享以抵御DDoS攻击。虽然云计算可以提供超出这些攻击所需的额外帮助,但它仍然有局限性。另一方面,像Gladius公司提供这样的分散式解决方案由于获得一系列带宽提供商提供的服务而成本更低,并且高度可靠。

    随着区块链技术的不断发展,毫无疑问会出现越来越多的云计算解决方案。全球许多组织机构下放权力的速度日益增加,因此这是探索区块链技术和机会的最佳时机。在人们谈到云计算时,Conduit、Leonardo Render和Gladius等公司正在为区块链领域的更多技术创新铺平道路。


    原文发布时间为:2018-06-8

    本文作者:Sadie Williamson 

    本文来自云栖社区合作伙伴“企业网D1Net”,了解相关信息可以关注“企业网D1Net”。

    展开全文
  • ZXDFS分布式文件系统架构 FAC将同一数据文件按一定大小切成多个数据片每一个数据片都存多个副本 云存储实现多副本以下几种方式 系统保证安全至少2个副本 根据数据类型设定多副本例如彩信话单为计费使用重要性高...
  • 数据倾斜原理及解决方案 ...一是唯一值非常少,极少数值非常多记录值(唯一值少于千) 一是唯一值比较多,这个字段某些值远远多于其他值记录数,但是它占比也小于百分之一或千分之一。 数据倾斜:

    数据倾斜原理及解决方案

    何为数据倾斜?

    在弄清什么是数据倾斜之前,我想让大家看看数据分布的概念:

    正常的数据分布理论上都是倾斜的,就是我们所说的20-80原理:80%的财富集中在20%的人手中, 80%的用户只使用20%的功能 , 20%的用户贡献了80%的访问量 ,。

    不同的数据字段可能的数据倾斜一般有两种情况:

    一种是唯一值非常少,极少数值有非常多的记录值(唯一值少于几千)

    一种是唯一值比较多,这个字段的某些值有远远多于其他值的记录数,但是它的占比也小于百分之一或千分之一。

    数据倾斜:

    数据倾斜在MapReduce编程模型中十分常见,用最通俗易懂的话来说,数据倾斜无非就是大量的相同key被partition分配到一个分区里,造成了'一个人累死,其他人闲死'的情况,这种情况是我们不能接受的,这也违背了并行计算的初衷,首先一个节点要承受着巨大的压力,而其他节点计算完毕后要一直等待这个忙碌的节点,也拖累了整体的计算时间,可以说效率是十分低下的。

    数据倾斜发生时的现象: 

    1、绝大多数task执行得都非常快,但个别task执行的极慢。 
    2、原本能正常执行的Spark作业,某天突然爆出OOM(内存溢出)异常。观察异常栈,是我们写的业务代码造成的。

    数据倾斜发生的原理 :

    在进行shuffle的时候,必须将各个节点上相同的Key拉取到某个节点上的一个task来进行处理,比如按照key进行聚合或者join操作。如果某个key对应的数据量特别大的话,会发生数据倾斜。比如大部分key对应的10条数据,但个别key却对应了100万条数据,那么大部分task会只分配到10条数据,而个别task可能会分配了100万数据。整个spark作业的运行进度是由运行时间最长的那个task决定的。 
    因此出现数据倾斜的时候,spark作业看起来会运行得非常缓慢,甚至可能因为某个task处理的数据量过大导致OOM。

    解决方案

    1、增加jvm内存,这适用于第一种情况(唯一值非常少,极少数值有非常多的记录值(唯一值少于几千)),这种情况下,往往只能通过硬件的手段来进行调优,增加jvm内存可以显著的提高运行效率。

    2、增加reduce的个数,这适用于第二种情况(唯一值比较多,这个字段的某些值有远远多于其他值的记录数,但是它的占比也小于百分之一或千分之一),我们知道,这种情况下,最容易造成的结果就是大量相同key被partition到一个分区,从而一个reduce执行了大量的工作,而如果我们增加了reduce的个数,这种情况相对来说会减轻很多,毕竟计算的节点多了,就算工作量还是不均匀的,那也要小很多。

    3、自定义分区,这需要用户自己继承partition类,指定分区策略,这种方式效果比较显著。

    4、重新设计key,有一种方案是在map阶段时给key加上一个随机数,有了随机数的key就不会被大量的分配到同一节点(小几率),待到reduce后再把随机数去掉即可。

    5、使用combinner合并,combinner是在map阶段,reduce之前的一个中间阶段,在这个阶段可以选择性的把大量的相同key数据先进行一个合并,可以看做是local reduce,然后再交给reduce来处理,这样做的好处很多,即减轻了map端向reduce端发送的数据量(减轻了网络带宽),也减轻了map端和reduce端中间的shuffle阶段的数据拉取数量(本地化磁盘IO速率),推荐使用这种方法。

    如何定位发生数据倾斜的代码 

    1、数据倾斜只会发生在shuffle中,下面是常用的可能会触发shuffle操作的算子:distinct、groupByKey、reduceByKey、aggregateByKey、join、cogroup、repartition等。出现数据倾斜时,可能就是代码中使用了这些算子的原因 

    2、通过观察spark UI的节目定位数据倾斜发生在第几个stage中,如果是用yarn-client模式提交,那么本地是可以直接看到log的,可以在log中找到当前运行到了第几个stage;如果用yarn-cluster模式提交,可以通过Spark Web UI 来查看当前运行到了第几个stage。此外,无论是使用了yarn-client模式还是yarn-cluster模式,我们都可以在Spark Web UI 上深入看一下当前这个stage各个task分配的数据量,从而进一步确定是不是task分配的数据不均匀导致了数据倾斜。 

    3、根据之前学的stage的划分算法定位到极有可能发生数据倾斜的代码

    这是没有发生倾斜的例子,若41ms为1h即表示发生倾斜。 也可查看属于第几个stage。

    查看导致数据倾斜的key的分布情况 

    1. 如果是Spark SQL中的group by、join语句导致的数据倾斜,那么就查询一下SQL中使用的表的key分布情况。 
    2. 如果是对Spark RDD执行shuffle算子导致的数据倾斜,那么可以在Spark作业中加入查看key分布的代码,比如RDD.countByKey()。然后对统计出来的各个key出现的次数,collect/take到客户端打印一下,就可以看到key的分布情况。

    数据倾斜详细解决方案

    一、使用Hive ETL(提取、转换和加载) 预处理数据 

    方案使用场景: 
    导致数据倾斜的是Hive表。如果该Hive表中的数据本身很不均匀,而且业务场景需要频繁的使用Spark对Hive表执行某个分析操作,那么比较适合使用这种技术方案。 
    思路:
    此时可以评估,是否可以通过Hive来进行数据预处理。即通过Hive ETL 预先对数据按照Key进行聚合,或者是预先和其他表进行join,然后再Spark作业中针对的数据源就是预处理后的Hive表。此时由于数据已经预先进行过聚合或者join操作了,那么在Spark作业中也就不需要使用原先的shuffle类算子执行这类操作了。 
    原理:
    从根源上解决了数据倾斜,因为彻底避免了在Spark中执行shuffle类算子。 
    但是因为毕竟数据本身就存在分布不均匀的问题,所以在Hive ETL中进行groubBy或者join等shuffle操作时,还是会发生数据倾斜,导致Hive ETL速度很慢。只是避免了Spark程序发生数据倾斜。 
    经验:
    在一些Java系统与Spark结合使用的项目中,会出现Java代码频繁调用Spark作业的场景,而且对Spark作业的执行性能要求很高,就比较适合使用这种方案。将数据倾斜提前到上游的Hive ETL,每天仅执行一次,只有那一次是比较慢的,而之后每次Java调用Spark作业时,执行速度都会很快,能够提供更好的用户体验。

    二、过滤少数导致倾斜的key 

    方案使用场景:
    若发现导致倾斜的key就少数几个,并且对计算本身的影响并不大。比如99%的key对应10条数据,但只有一个key对应100万数据。 
    思路:
    若判断少数几个数据量特别多的key对作业的执行和计算结果不是那么特别重要,可以直接过滤掉那几个key。如在Spark SQL中就可以使用where子句过滤掉这些key,或者在Spark Core 中对RDD执行filter算子过滤掉这些key。如果需要每次作业执行时,动态判定哪些key的数据量最多然后过滤,可以使用sample算子对RDD进行采样,然后计算每个key的数量,取数据量最多的key过滤即可。 
    缺点:
    适用场景不多,大多数情况下,导致倾斜的key还是很多的,并不是只有少数几个。

    三、提高shuffle操作的并行度 

    方案使用场景:
    若我们必须要面对数据倾斜问题,要这么使用。 
    思路:
    在对RDD执行shuffle算子时,给shuffle算子传入一个参数,如reduceByKey(1000),该参数设置了这个shuffle算子执行时shuffle read task 的数量。对于Spark SQL中的shuffle类语句,如 groupBy 、join 等需要设置一个参数,即spark.sql.shuffle.partitions。该参数代表了shuffle read task 的并行度,默认值是200。 
    原理:
    增加shuffle read task 的数量,可以让原本分配给一个task的多个key分配给多个task,从而让每个task处理比原来更少的数据。举例来说,如果原本有5个key,每个key对应10条数据,这5个key都是分配给一个task的,那么这个task就要处理50条数据。而增加了shuffle read task以后,每个task就分配到一个key,即每个task就处理10条数据,那么自然每个task的执行时间都会变短了。 

    实现起来比较简单,可以有效缓解和减轻数据倾斜的影响。 
    只是缓解了数据倾斜而已,没有彻底根除问题,根据实践经验来看,其效果有限。

    四、两阶段聚合(局部聚合+全局聚合) 

    方案使用场景:
    对RDD执行reduceByKey等聚合类shuffle算子或者在Spark SQL中使用group by语句进行分组聚合时,比较适用这种方案。 
    思路: 
    这个方案的核心实现思路就是进行两阶段聚合。第一次是局部聚合,先给每个key都打上一个随机数,比如10以内的随机数,此时原先一样的key就变成不一样的了,比如(hello, 1) (hello, 1) (hello, 1) (hello, 1),就会变成(1_hello, 1) (1_hello, 1) (2_hello, 1) (2_hello, 1)。接着对打上随机数后的数据,执行reduceByKey等聚合操作,进行局部聚合,那么局部聚合结果,就会变成了(1_hello, 2) (2_hello, 2)。然后将各个key的前缀给去掉,就会变成(hello,2)(hello,2),再次进行全局聚合操作,就可以得到最终结果了,比如(hello, 4)。

    方案优点: 
    对于聚合类的shuffle操作导致的数据倾斜,效果是非常不错的。通常都可以解决掉数据倾斜,或者至少是大幅度缓解数据倾斜,将Spark作业的性能提升数倍以上。 
    方案缺点: 
    仅仅适用于聚合类的shuffle操作,适用范围相对较窄。如果是join类的shuffle操作,还得用其他的解决方案。 

    五、将reduce join 转为map join 

    方案使用场景:
    在对RDD使用join类操作,或者是在Spark SQL中使用join语句时,而且join操作中的一个RDD或表的数据量比较小(几百M或者一两G)。 
    实现思路:
    不使用join算子进行连接操作,而使用Broadcast变量与map类算子实现join操作,进而完全规避掉shuffle类操作,彻底避免数据倾斜的发生和出现。将较小RDD中的数据直接通过collect算子拉取到Driver端的内存中来,然后对其创建一个Broadcast变量;接着对另外RDD执行map类算子,在算子函数内,从Broadcast变量中获取较小RDD 的全量数据,与当前RDD的每一条数据按照连接key进行比对,如果连接key相同的话,那么就将两个RDD的数据用你需要的方式连接起来。 
    实现原理: 
    普通的join是会走shuffle过程的,而一旦shuffle,就相当于会将相同key的数据拉取到一个shuffle read task中再进行join,此时就是reduce join。但是如果一个RDD是比较小的,则可以采用广播小RDD全量数据+map算子来实现与join同样的效果,也就是mao join ,而此时不会发生shuffle操作,也就不会发生数据倾斜。 
    方案优点: 
    对join操作导致的数据倾斜,效果非常好,因为根本就不会发生shuffle,也就根本不会发生数据倾斜。 
    方案缺点: 
    适用场景较少,因为这个方案只适用于一个大表和一个小表的情况。毕竟我们需要将小表进行广播,此时会比较消耗内存资源,driver和每个Executor内存中都会驻留一份小RDD的全量数据。如果我们广播出去的RDD数据比较大,比如10G以上,那么就可能发生内存溢出了。因此并不适合两个都是大表的情况。

    六、采样倾斜key并分拆join操作 

    方案使用场景:
    两个RDD/Hive表进行join的时候,如果数据量都比较大,无法采用上第五点解决方案,那么此时可以看一下两个RDD/Hive表中key的分布情况,若出现数据倾斜,是因为其中某一个RDD/Hive表中的少数几个key的数据量过大,而另一个中的所有key都分布比较均匀,那么采用这个解决方案是比较合适的。 
    实现思路:
    对包含少数几个数据量过大的key的那个RDD,通过sample算子采样出一份样本来,然后统计一下每个key的数据量,计算出数据量最大的是哪几个key。 
    然后将这几个key对应数据从原来的RDD中拆分出来,形成一个单独的RDD,并给每个key打上n以内的随机数作为前缀,而不会导致倾斜的大部分key形成另外一个RDD。

    接着将需要join的另一个RDD,也就是过滤出来的那几个倾斜key对应的数据并形成一个单独的RDD,将每条数据膨胀成n条数据,这n条数据都按顺序附加一个0~n的前缀,不会导致倾斜的大部分key也形成另外一个RDD 
    (此时一共生存了四个RDD:两个key有倾斜的RDD,两个正常RDD) 
    再将附加了随机前缀的独立RDD与另一个膨胀n倍的独立RDD进行join,此时就可以将原先相同的key打散成n份,分散到多个task中去进行join。 而另外两普通的RDD就照常join即可。 最后将两次join的结果使用union算子合并起来即可。

    原理: 
    对于join导致的数据倾斜,如果只是某几个key导致了倾斜,可以将少数几个key拆分为独立RDD,并附加随机前缀打散成n份去进行join,此时这几个key对于的数据就不会集中在少数几个task上,而是分散到多个task进行join。 
    优点:
    对于join导致的数据倾斜,如果只是某几个key导致了倾斜,此方法可以用最有效的方式打散key进行join,且只需要针对少数倾斜的key对应的数据进行扩容n倍,不需要对全量数据进行扩容,避免占用过多内存。 
    缺点: 
    若key特别多,则不合适。

    七、使用随机前缀和扩容RDD进行join 

    方案使用场景:
    若在进行join操作时,RDD中有大量的key导致数据倾斜的时候。 
    思路:
    首先查看RDD/Hive表中的数据分布情况,找到造成数据倾斜的RDD/Hive表,比如有多个key都对应了炒股哦万条数据。 
    然后将该RDD 的每条数据都打上一个n以内的随即前缀。 
    同时对另外一个正常的RDD进行扩容,将每条数据都扩容成n条数据,扩容出来的每条数据都依次打上一个0~n的前缀 
    最后将两个处理后的RDD进行join即可。 
    原理: 
    将原先一样的key通过附加前缀变成不一样的key,然后就看可以将这些处理后的“不同的key”分散到多个task中那个去处理,而不是让一个task去处理大量相同的key。此方法与方法六的区别在于,有大量倾斜key的情况,没法将部分key拆分出来单独处理,因此只能对整个RDD 进行数据扩容,对资源要求很高。 
    缺点:
    更多的是缓解数据倾斜,而不是彻底避免,而且需要对整个RDD进行扩容,对内存资源要求较高。

    展开全文
  • 创新型云计算数据中心建设 VMware解决方案与产品更新;2;中庸之道;混合云是中国云计算市场未来主要增长点之一;中国电信与VMware联合发布天翼混合云;云时代IT运营模型IT如何提供服务;IT 销售未来;变为销售...
  • 37篇经过消化云计算论文打包下载

    热门讨论 2011-01-03 13:28:25
    本文讨论了云应用程序编程面临的挑战与发展,通过个应用程序的讨论,演示了可能的解决方案。同时讨论了怎样正确使用抽象的编程接口,框架使其更有效,可扩展,最重要的独立于系统,这些接口框架支持普通的编程执行...
  • 分享内容主要,混合云依靠其自身优势成为企业过渡方案的必然选择,公共云技术快速发展,企业为了享受云计算的便利性,降低整体IT投资,越来越拥抱云的变革,但是混合云场景对安全上的挑战也同样不容忽视,专家详解...
    在2017云栖大会-成都峰会上,阿里云安全专家戈建勇做了题为《混合云态势感知安全解决方案》的分享。分享内容主要有,混合云依靠其自身优势成为企业过渡方案的必然选择,公共云技术快速发展,企业为了享受云计算的便利性,降低整体IT投资,越来越拥抱云的变革,但是混合云场景对安全上的挑战也同样不容忽视,专家详解混合云态势感知安全解决方案,并分享了几种不同场景下的态势感知安全解决方案及其优势。
    09e955aa6d4afede8153e515260282a8440f07bd


    94c5e606b56faf2976967c6b707287f60d5d8f93


    1d75145a03b800127388200eae760d44469daff0


    ed8e8ad27bc4f53447708f426149f14e0c3e658d


    476133dba56b9402758f98f7190b85a3d7b7cb87


    177df18a6ffa2ba1b68afa233d680ecc7684f460


    00acd71ade157de3b93caa493d22eba23de5b2e6


    99f812110fcb2b9f3f378b6bdc0534d3b917808c


    687fbf9f2f52c4d7d6222d5b305b3b79486ca154


    9a0ed615d391e0ee8d6549619a0d626e3e156079


    002fe671ca09095ae74d1f2dce2f8e3f1ad50cab


    ff0e9823d9b91d75253c2f37cdf018eb521535a4


    a99f3d1fca6b1afece6428714720839d66891184


    74bb686471a2d4abf714c08b49f50394410a05f6


    baf76b3ed0757c7402d387dae4e7edf9c7f9a370


    5e62d0ae02de5f59f0962376eb33d8f486666c0c


    c7c6a3bfbd74044f79bab3f33f2d4099fae54f13


    1754abea804c40b72b09eaebdfe7d62ecc6669e9


    5a581145a383797dbcc4a4fbf397609f4a462241


    42dde41ca5d737f59885cfe46e1b0e49d462b358


    4777edd74b6ffaf132a5a861c081835b53a2497e



    展开全文
  • 随着云计算的发展,企业正积极探索从传统架构转向云计算架构的方法。无论从国家层面还是企业...它其实是别于VMwae闭源产品化的一开源解决方案。 OpenStack的技术呈现了多样化状态,比如计算虚拟化、存储虚拟化、...

    随着云计算的发展,企业正积极探索从传统架构转向云计算架构的方法。无论从国家层面还是企业自身发展来看,这都是势在必行的一种转型。当我们把云理解成为一种服务,尤其是基于OpenStack构建云,会遇到各种技术困惑和技术能力储备的问题。它其实是有别于VMwae闭源产品化的一种开源解决方案。

    OpenStack的技术呈现了多样化状态,比如计算虚拟化、存储虚拟化、网络虚拟化、容器和超融合等都需要有相应的涉猎和技术储备,同时这些技术基于传统基础架构体系,但是又有别于传统解决方案。这就要求我们需要具有识别OpenStack平台本身的能力、理解所承载应用以及优化云平台的能力、改造迁移现有应用的能力[w1] 。

    准确识别OpenStack平台四大能力

    1. 企业在落地云计算的时候,OpenStack作为一个开源解决方案,会遇到产品Bug、调优和组件选型,需要面对OpenStack的复杂性和部署困难的问题。
    2. 传统应用的高可用依赖于基础架构,OpenStack云平台如何实现平台自身高可用以及业务的高可用,同时面对互联网场景下的双态应用模式,需要解决传统业务的上云,又要满足基于容器的微服务架构实现。
    3. 在满足云平台的功能性需求的同时,还需要解决非功能性需求:异构环境的统一纳管,基于应用的性能要求,不可避免的云安全要求和数据中心内及数据中心之前的灾备和双活需求。
    4. OpenStack在上线及上线后相关的升级、运维能力的技术和人才储备。上线过程中的业务迁移,例如:P2V和V2V的能力等[w2] 。

    直面问题解决问题,轻松部署OpenStack

    针对以上遇到的上线投产要求和迁移升级需求,提供一些例子供大家参考:

    • 从云平台的扩展能力和稳定性上来看,需要解决大规模使用过程中RabbitMQ队列堵塞的问题,可以通过基于新版本OpenStack Cell V2的架构实现云平台控制端相关服务的基于物理服务器的拆分和管理。同时根据集群的规模进行RabbitMQ的配置文件调优。
    • Memcache的Token默认存储是64M,基于标准配置,如果有大量的API访问请求,就会造成memcache 存储不足 Token 被剔除,因此过期。所以需要根据云平台的实际情况进行优化调整,实现配置最优。
    • MongoDB 默认配置是不限制内存使用的,在实际使用的过程中会消耗特别大的内存,这块需要进行限制。
    • 在业务迁移场景下,需要保证原网络和迁移后的网络完全一致,存储数据不丢失、业务正常。为避免解决DHCP的混乱情况,系统需要建立独立的DHCP来进行迁移。

    针对大型企业,我们可以提供面向内部的私有云,主要根据具体不同的业务需求,采用不同的可定制化的解决方案,比如存储的多样性定制化、网络的复杂多样性定制化、以及虚拟化层面不同类型的相互分离等等。另外,可以定制化内部私有云以及与公有云构建混合云的机制。这样不仅满足了内部云化的诉求,而且也解决了混合云对不同的业务需求进行不同管理的问题。

    得力于OpenStack的快速发展,九州云实现了基于Ocata版本的OpenStack发行版,实现了容器化部署OpenStack的能力,解决了企业快速部署、升级和调优的问题,从而使得云平台可以大规模部署和扩展,提高企业基于云平台的业务连续性。同时为解决业务性能的不同需求,需要实现异构存储、异构SDN的纳管和定制化开发解决方案,从而满足不同规模的企业用户,以及存在存量异构设备的云化。例如:VMware、Nutanix、EMC Vplex等的纳管和集成。

    九州云基于Ocata版本的OpenStack发行版

    对于中小企业,我们提供了完整的基于通用业务的一套统一的私有云架构,采用统一的分布式存储、KVM虚拟化,OVS网络虚拟化的产品和解决方案,能够实现快速部署云平台及投产使用。

    与此同时,为了企业能够驾驭OpenStack,九州云注重技术能力的输出,提供了丰富的OpenStack开发、使用和运维的培训。例如COA培训,通过培训,解决企业在部署和使用OpenStack的时候具有足够的技术和人才储备。

    六大核心技术凸显九州云OpenStack实力

    我们现有的核心技术包括以下几个方面:

    1. PaaS技术能力:支持云应用和PaaS平台的对接整合能力,实现IaaS的标准化接口为PaaS服务。
    2. 容器技术能力:基于容器化部署OpenStack的能力,实现原子化升级和快速部署扩展云平台能力。
    3. 运营服务能力:支持用户自助管理、应用商店、计费计量、配额分配、请求报障等云平台运营功能。
    4. Devops技术:基于OS技术的需求,具备源码,审查管理、应用构建及发布能力的DevOps模式。
    5. 超融合:能够实现基于开源技术的超融合架构的实现及大规模机柜部署,能够纳管商业超融合产品。
    6. NFV能力:以开源项目为基础,对网络关系及业务服务链的定义。具备部署、配置、监控、灵活编排NFV和异构区域RI的管理。

    目前,我们通常采用的云架构主要是采用统一性的分布式存储,同时结合商业存储及超融合技术实现多样的后端虚拟化相互结合管理、多样的SDN网络模式。另外还有对于整个云环境的服务容器化,也为后续的无缝升级提供了保证。

    在开发过程中,我们从最初的G 和H版本开始演化,到I版本这一较稳定的版本,在实际的开发过程中从Nova、Neutron到Cinder、Kolla,Swift、Trove等,从GlusterFS到Ceph的演进,在整个过程中,主要针对不同的OpenStack使用场景进行了大量的测试以及功能的改进,再针对具体的客户需求进行功能增加,包括多重服务的三节点的HA等。

    成功部署OpenStack的经验之谈

    OpenStack的成长以及整个云机构功能的演进都离不开客户的需求,有了不同的需求,才可以将整个云做的更加完善。

    1、经验之谈

    • 前期做好和客户的技术交流,以及需求收集。获取客户对于云平台的期望,根据技术发展和OpenStack组件的成熟度,逐步构建。
    • 确定客户的业务形态,以及业务规模和后续的增长量。
    • 根据不同的需求和业务形态采用不同的网络模式,以及增长量等判断分离以及超融合的架构模型。

    2、教训之谈

    • OpenStack的升级是一件大事,需要严谨的测试。
    • OpenStack是开源软件,不可避免的会出现Bug等,要积极的与社区进行结合,完善整个过程。
    • OpenStack 核心组件目前比较成熟,但更多的衍生组件还不是很完善,希望OpenStack能不断的产生更好更有用的功能,将整个OpenStack的框架做的越来越好,降低OpenStack的复杂度,提升适应性。

    作者介绍

    杨亚鹏 九州云99Cloud云计算产品服务工程师

    Freezer项目核心开发者,带领九州云99Cloud实现全球 贡献第二,熟悉Ceph, GlusterFS, SaltStack

    赵紫君 九州云99Cloud解决方案总监

    赵紫君拥有超过15年的IT从业经验,具有丰富的大型金融和医疗行业的IT从业经验,超过10年的基础架构解决方案及大型项目管理经验。7年的的云计算解决方案和项目管理经验。熟悉大型数据中心相关的基础架构及云计算解决方案。对于虚拟化、云计算、灾备及双活数据中心具有丰富的实践经验。善于管理大规模、复杂的项目。 


    本文作者:杨亚鹏/赵紫君

    来源:51CTO

    展开全文
  • 云计算环境中CI工具 曾在大规模企业中尝试过CI实践开发者非常了解:代码构建与...而基于云计算平台SaaS解决方案的出现快速地弥补了这方面市场缺失。 Travis CI 是一个 基于GitHub API所打造 
  • 接触过的一些搞了几年云计算的童鞋,也没明白常见的几种虚拟机技术方案的异同,比如只是记住了半虚拟要在虚拟机装驱动而全虚拟不需要,也不知道时候为什么需要打开BIOS里的VT项。本人呢,在看了各种讲解虚拟化的...
  • Benchmark: A survey

    2019-11-19 18:00:43
    在进行大规模集群问题研究时,我们往往没有足够多服务器来搭建一个真正大规模云计算集群,通常以下几种方案解决此问题: 租用云计算集群服务,如Amazon,华为云和阿里云等云服务。但该方式需要投入大量...
  • 前言在进行大规模集群问题研究时,我们往往没有足够多服务器来搭建一个真正大规模云计算集群,通常以下几种方案解决此问题:1.租用云计算集群服务,如Amazon,华为云和阿里云等云服务。但该方式需要投入大量...
  • 低延时网络解决方案   美光科技(Micron Technology, Inc)今天推出了第三代低延时DRAM (RLDRAM○R 3内存)—一高带宽内存技术,能更有效的传输网络信息。视频内容、移动应用和云计算的蓬勃发展,对网络基础...
  • Premium 版 XenServer 扩展了这一平台,可帮助任何规模企业实现管理流程集成和自动化,是一先进虚拟数据中心解决方案。 通俗理解: XenServer 是思杰公司(Citrix) 推出一款服务器虚拟化系统,强调一下是...
  • SpringCloud简介

    2020-12-25 23:13:18
    同时,随着近年微服务架构和Docker容器概念火爆,也会让Spring Cloud在未来越来越“云”化软件开发风格中立一席之地,尤其是在目前五花八门分布式解决方案中提供了标准化、全栈式技术方案,意义可能会...
  • PowerDesigner是Sybase企业建模和设计解决方案,采用模型驱动方法,将业务与IT结合起来,可帮助部署有效企业体系架构,并为研发生命周期管理提供强大分析与设计技术。 六、研究方法 该毕业设计采用研究方法...
  • 在全球云计算和移动互联网产业环境下,Java更具备了显著优势和广阔前景。因此在开发本系统时我把它作为本系统开发语言。 (2)本系统开发工具选择 本系统前台使用开发工具是MyEclipse。MyEclipse企业级工作...
  • 在全球云计算和移动互联网产业环境下,Java更具备了显著优势和广阔前景。因此在开发本系统时我把它作为本系统开发语言。 (2)本系统开发工具选择 本系统将 Eclipse 当作 Java 集成开发环境(IDE)来使用, ...
  • 低延时网络解决方案   美光科技(Micron Technology, Inc)今天推出了第三代低延时DRAM (RLDRAM○R 3内存)—一高带宽内存技术,能更有效的传输网络信息。视频内容、移动应用和云计算的蓬勃发展,对网络基础...
  • 本文首发于我公众号 Linux云计算网络(id: cloud_dev),专注...前面文章讲过了几种 Linux 虚拟网络设备:tap/tun、veth-pair、bridge,它们本质上是 Linux 系统 提供网络虚拟化解决方案,今天要讲 macvlan...
  • Premium 版 XenServer 扩展了这一平台,可帮助任何规模企业实现管理流程集成和自动化,是一先进虚拟数据中心解决方案。 通俗理解: XenServer 是思杰公司(Citrix) 推出一款服务器虚拟化系统,强调一下是...
  • 事务处理原理 第2版

    热门讨论 2012-12-30 10:49:38
    其中有几章是新增加有几章是重新编写,其余各章也有很多内容是新增或修订过。  做这些改动主要目的有两个。一是介绍自从12年以前第1版出版以来新出现和修订事务体系结构和技术。那时,基于...
  • 4.4.5 JVM中一次完整GC流程是怎样,对象如何晋升到老年代,说说你知道的几种主要JVM参数。 4.4.6 你知道哪几种垃圾收集器,各自优缺点,重点讲下cms和G1,包括原理,流程,优缺点。 4.4.7 垃圾回收算法...
  • 虽然微服务架构的解决方案很多,但是对于如何真正落地微服务架构,目前还没有公认的技术标准和规范。幸运的是,业界已经一些很影响力的开源微服务解决方案,比如2015年年初,Spring团队推出的Spring Cloud,其...
  • 敏捷软件开发中可能是最富有成效的几种方法学之一 技能图谱 backend skill 后台开发技能图谱,从程序员内功修炼到后台语言,分布式系统架构 一、数据结构与算法 数据结构与算法  排序算法、动态规划、...
  • java开源包1

    千次下载 热门讨论 2013-06-28 09:14:34
    JSTUN 是另外一个用来解决穿越 NAT 进行通讯 Java 解决方案,是 STUN 协议 Java实现。 在浏览器上运行Java程序 Doppio DoppioVM 是一个可在浏览器上直接运行 Java 项目系统,无需任何插件支持。目前它包含一...
  • java开源包12

    热门讨论 2013-06-28 10:14:45
    JSTUN 是另外一个用来解决穿越 NAT 进行通讯 Java 解决方案,是 STUN 协议 Java实现。 在浏览器上运行Java程序 Doppio DoppioVM 是一个可在浏览器上直接运行 Java 项目系统,无需任何插件支持。目前它包含一...
  • Java资源包01

    2016-08-31 09:16:25
    JSTUN 是另外一个用来解决穿越 NAT 进行通讯 Java 解决方案,是 STUN 协议 Java实现。 在浏览器上运行Java程序 Doppio DoppioVM 是一个可在浏览器上直接运行 Java 项目系统,无需任何插件支持。目前它包含一...

空空如也

空空如也

1 2 3
收藏数 41
精华内容 16
关键字:

云计算的解决方案有几种