首页 文章 精选 留言 我的

精选列表

搜索[算力],共10000篇文章
优秀的个人博客,低调大师

万物互联时代将至:YunOS将提前发力5G生态布局

在今天举行的2017年IMT-2020(5G)峰会上,中国通信标准化协会战略咨询委员会主任委员奚国华表示,2017年,5G国际标准正式启动,也将在年底完成5G第一基础版本,这也意味着我们距离5G的实际应用又近了一步,因此从这个意义上讲,可以说2017年是5G标准元年。 奚国华认为,5G应用从移动互联网扩展到了物联网,将在提升移动互联网用户体验的基础上,进一步满足未来物联网应用的海量网络需求,与工业、医疗、交通等行业深度融合,实现真正的万物互联。 同时,奚国华对5G的标准、频率、以及产业等发表观点: 一是推动全球统一的5G标准。奚国华希望大家在对5G核心技术与标准提出贡献和建议的同时,能够努力推动全球产业界就5G关键问题达成广泛共识,求同存异、合作共赢,积极推进形成全球统一的5G国际标准,为构建5G全球创新网络和产业生态奠定良好的基础。 二是加强5G频率研究与协调。频率资源是移动通信发展的重要前提,要加强区域间、国家间、行业间的沟通交流,依托国际电信联盟(ITU)这一国际标准组织平台,加强协调,力争形成更多全球统一的5G工作频段。 三是希望我国企业能够为5G技术的创新发展做出更大贡献。我国移动通信在经历了3G、4G时代的快速发展之后,目前已经处于全球产业前列。面对5G技术这一全新的移动通信技术,我国企业应该更加有历史责任感,要与国际产业界共同推动5G技术的创新、产品研发和成功应用。 在讲话中,奚国华还认为,相对3G和4G,5G一个最大的特点是在垂直行业的应用,它不再仅仅局限于流量的提供,而是在这个平台上可以演变出很多的行业应用。5G除了将直接推动移动通信技术和产品的重大飞跃,还会带动芯片、软件等领域快速发展,催生工业互联网、车联网等新业态,将成为推动国民经济发展、促进产业转型升级的重要动力。5G不仅能够造就一个巨大的产业,还有巨大的渗透性,能够带动其他行业蓬勃发展。 在4G时代,移动互联网浪潮汹涌,而普遍认为,5G时代,人类将迎来万物互联的浪潮。国内BAT等互联网企业,也在今年开始布局人工智能、大数据、云计算等。这其中,最引人关注的无疑是阿里YunOS系统。根据官方介绍,YunOS驱动的智能设备已经囊括了手机、电视、笔记本、冰箱、汽车、电视盒子、手表等。 阿里YunOS也已经和多家企业展开了合作,中国移动就是其中一家。中国移动公司研发部总经理刘钧毅认为中国移动与YunOS合作具体表现在三个方面。 首先是体验层面。中国移动目前已经建成了超过150万个4G基站,能够保证网络速度,而YunOS通过智能调动以及资源回收这样的底层技术提供更好的技术体验,快捷的网络+轻快的操作系统给用户带来了流畅的操作体验。 其次是安全层面。中国移动是从网络的角度保证用户的信息安全,主要是通过接入检测、安全的传输通道和认证服务进行保护。而YunOS是通过系统的优化来保证用户信息安全,网络安全+系统安全可以让用户使用没有安全顾虑。 最后是生态层面。中国移动在去年年底将一些自有的网络能力通过集成和打包向业界开放,主要是通过货架式的标准来提供自有专有的通信服务能力,而YunOS推出电商、支付云服务、音乐等内容,这些内容为用户提供了便利,把人、信息、服务很好地连接在了一起。 刘钧毅表示,如果说4G改变了人们的生活,那么5G将会改变这个社会。而5G时代中国移动将会继续与YunOS携手,以快捷的网络和轻快的操作系统,提高终端的流畅性;以安全的网络和操作系统,确保用户信息安全;以开放的网络和丰富的应用,改变人们的生活方式。中国移动也将力争在2020年实现5G的商用。 在6月10日刚刚发布的YunOS 6操作系统,就被官方定义为阿里为5G时代而布局的全新产品。在图像方面,YunOS可以在单镜头下实现双摄效果;支持可定制的VR素材。在位置方面,通过接入千寻位置亚米级高精度定位服务,YunOS 6系统定位精度大幅提升,为用户提供更好的末段导航服务体验,同时,基于位置场景,YunOS主动提供NFC交通卡、会员卡、小区门禁卡等可信服务,并在海外提供eSIM功能。而这些,也正是5G时代万物互联网的基础。 本文转自d1net(转载)

优秀的个人博客,低调大师

一个疑难故障,坑了我半年青春-----知识就是生产力

作者介绍 林伟壕,网易游戏资深运维工程师。现任职于网易游戏,从事游戏运维相关工作;曾就职于中国电信,负责数据网络维护、网络安全防御等工作。深入研究Linux运维、虚拟化等,现致力于企业级网络安全防护自动化体系构建。 相对物理环境,虚拟化环境更加错综复杂。之前弄KVM虚拟化时经常遇到好多次莫名其妙的网络故障,查出来的原因要么是操作系统内核bug,要么是KVM与操作系统内核版本不兼容,最后是通过升级操作系统内核或者KVM版本修复了。没想到,转型到Docker后,又重蹈覆辙了。 本文将介绍一个困扰笔者近半年的虚拟化环境下的疑难故障,最后排查出来的故障原因和修复手段也让人啼笑皆非。并非因为这个过程有多复杂,而是分享一个心理历程,思考在遇到故障时如何兼顾业务和技术,如何正确使用搜索引擎。 故障现象 我们有一套高性能代理集群,之前内测阶段运行稳定,结果等正式上线后不到半个月,提供代理服务的宿主突然接二连三死机,导致宿主上的所有服务全部中断。 故障分析 故障时宿主直接死机,无法远程登录,机房现场敲键盘业务反应。由于宿主syslog已接入ELK,所以我们采集了当时死机前后的各种syslog。 报错日志 通过查看死机宿主的syslog发现机器死机前有以下kernel报错: Nov 12 15:06:31 hello-worldkernel: [6373724.634681] BUG: unable to handle kernel NULL pointer dereferenceat 0000000000000078Nov 12 15:06:31 hello-world kernel: [6373724.634718] IP: []pick_next_task_fair+0x6b8/0x820Nov 12 15:06:31 hello-world kernel: [6373724.634749] PGD 10561e4067 PUDffdb46067 PMD 0Nov 12 15:06:31 hello-world kernel: [6373724.634780] Oops: 0000 [#1] SMP 显示访问了内核空指针后触发系统bug,然后引起一系列调用栈报错,最后死机。 为进一步分析故障现象,首先需要理解这套高性能代理集群的架构。 架构介绍 单个节点,是在万兆网卡的宿主机上跑Docker容器,然后在容器中跑Haproxy实例,每个节点、实例的配置信息、业务信息都托管在调度器上。 特别之处在于:宿主使用Linux Bridge直接给Docker容器配置IP地址,所有对外服务的IP,包括宿主自己的外网IP都绑在Linux Bridge上。 应用介绍 每台宿主的操作系统、硬件、Docker版本全部一致,其中操作系统和Docker版本如下: [操作系统] System : LinuxKernel : 3.16.0-4-amd64Version : 8.5Arch : x86_64 [Docker版本] Docker version 1.12.1, build 6b644ec 初步分析 该集群的宿主配置一致,故障现象也一致,疑点有三个: 1、Docker版本与宿主内核版本不兼容 三台宿主的环境本来一致,但1台稳定跑服务2个月才死机,1台跑服务1个月后死机,另外1台上线跑服务一周便会死机。发现每台宿主除了死机的异常日志,平时也有相同报错日志: time=”2016-09-07T20:22:19.450573015+08:00″level=warning msg=”Your kernel does not support cgroup memory limit” time=”2016-09-07T20:22:19.450618295+08:00″ level=warningmsg=”Your kernel does not support cgroup cfs period”time=”2016-09-07T20:22:19.450640785+08:00″ level=warningmsg=”Your kernel does not support cgroup cfs quotas”time=”2016-09-07T20:22:19.450769672+08:00″ level=warningmsg=”mountpoint for pids not found” 根据上面提示,应该是操作系统内核版本对该版本的Docker不支持某些功能所导致。不过在搜索引擎上搜索这并不影响Docker的功能,更不加影响系统稳定性。 比如: time=”2017-01-19T18:16:30+08:00″level=error msg=”containerd: notify OOM events” error=”openmemory.oom_control: no such file or directory” time=”2017-01-19T18:22:41.368392532+08:00″level=error msg=”Handler for POST /v1.23/containers/338016c68da6/stopreturned error: No such container: 338016c68da6″ 是Docker 1.9以来就有的问题,1.12.3修复了。参考https://github.com/docker/docker/issues/24211 比如Github上有人回复: “I have been update my docker from 1.11.2 to 1.12.3, This issue is fixed. BTW, this error message can be ignored, it should really just be a warning.” 但这里所说的都只是v1.12.2版本就能修复的问题,我们升级Docker版本后发现死机依旧。 于是,我们接着通过各种Google确认了很多与我们存在相同故障现象的问题,初步确认故障与Docker的相关性: http://serverfault.com/questions/709926/bug-unable-to-handle-kernel-null-pointer-dereference-at-on-google-compute-eng https://support.mayfirst.org/ticket/10872 又根据以下官方issue初步确认Docker版本与系统内核版本不兼容可引发宕机的关联性: https://github.com/docker/docker/issues/19910 接着,通过官方的changelog和issue确认宿主所使用Docker版本与系统内核版本不兼容问题: https://github.com/docker/docker/blob/v1.12.2-rc1/CHANGELOG.md 出于尝试心理,我们把Docker版本升级到1.12.2后,未出意外仍出现死机。 2.使用Linux bridge方式改造宿主网卡可能触发bug 找了那台宿主跑服务一周就会死机的宿主,停止运行Docker,只改造网络,稳定跑了一周未发现异常。 3.使用pipework给Docker容器配置IP可能触发bug 由于给容器分配IP时我们采用了开源的pipework脚本,因此怀疑pipework的工作原理存在bug,所以尝试不使用pipework分配IP地址,发现宿主仍出现死机。 于是初步排查陷入困境,眼看着宿主每月至少死机一次,非常郁闷。 故障定位 因为还有线上业务在跑,所以没有贸然升级所有宿主内核,而是期望能通过升级Docker或者其它热更新的方式修复问题。但是不断的尝试并没有带来理想中的效果。 直到有一天,在跟一位对Linux内核颇有研究的老司机聊起这个问题时,他三下五除二,Google到了几篇文章,然后提醒我们如果是这个 bug,那是在 Linux 3.18 内核才能修复的。 参考: https://lists.gt.net/linux/kernel/2256803 https://lkml.org/lkml/2014/2/15/217 https://github.com/docker/docker/issues/21081 https://github.com/torvalds/linux/commit/eeb61e53ea19be0c4015b00b2e8b3b2185436f2b 原因: 从sched: Fix race between task_group and sched_task_group的解析来看,就是parent 进程改变了它的task_group,还没调用cgroup_post_fork()去同步给child,然后child还去访问原来的cgroup就会null。 不过这个问题发生在比较低版本的Docker,基本是Docker 1.9以下,而我们用的是Docker1.11.1/1.12.1。所以尽管报错现象比较相似,但我们还是没有100%把握。 但是,这个提醒却给我们打开了思路:去看内核代码,实在不行就下掉所有业务,然后全部升级操作系统内核,保持一个月观察期。 于是,我们开始啃Linux内核代码之路。先查看操作系统本地是否有源码,没有的话需要去Linux kernel官方网站搜索。 “` apt-cache search linux-image-3.16.0-4-amd64 apt-get source linux-image-3.16.0-4-amd64 “` 下载了源码包后,根据报错syslog的内容进行关键字匹配,发现了以下内容。由于我们的机器是x86_64架构,所以那些avr32/m32r之类的可以跳过不看。结果看下来,完全没有可用信息。 /kernel/linux-3.16.39#grep -nri “unable to handle kernel NULL pointer dereference” * arch/tile/mm/fault.c:530: pr_alert(“Unable to handlekernel NULL pointer dereference\n”); arch/sparc/kernel/unaligned_32.c:221: printk(KERN_ALERT “Unable to handle kernel NULL pointerdereference in mna handler”); arch/sparc/mm/fault_32.c:44: “Unable to handle kernel NULL pointer dereference\n”); arch/m68k/mm/fault.c:47: pr_alert(“Unable tohandle kernel NULL pointer dereference”); arch/ia64/mm/fault.c:292: printk(KERN_ALERT “Unable tohandle kernel NULL pointer dereference (address %016lx)\n”, address); debian/patches/bugfix/all/mpi-fix-null-ptr-dereference-in-mpi_powm-ver-3.patch:20:BUG:unable to handle kernel NULL pointer dereference at (null) 最后,我们还是下线了所有业务,将操作系统内核和Docker版本全部升级到最新版。这个过程有些艰难,当初推广这个系统时拉的广告历历在目,现在下线业务,回炉重造,挺考验勇气和决心的。 故障处理 下面是整个故障处理过程中,我们进行的一些操作。 升级操作系统内核 对于Docker 1.11.1与内核4.9不兼容的问题,可以删除原有的Docker配置,然后使用官方脚本重新安装最新版本Docker “` /proxy/bin#ls /var/lib/dpkg/info/docker-engine. docker-engine.conffiles docker-engine.md5sums docker-engine.postrm docker-engine.prerm docker-engine.list docker-engine.postinst docker-engine.preinst #Getthe latest Docker package. $curl -fsSL https://get.docker.com/ | sh #启动 nohupdocker daemon -H tcp://0.0.0.0:2375 -H unix:///var/run/docker.sock-s=devicemapper& “` 这里需要注意的是,Docker安装方式在不同操作系统版本上不尽相同,甚至相同发行版上也有不同,比如原来我们使用以下方式安装Docker: “` apt-get install docker-engine “` 然后在早些时候,还有使用下面的安装方式: “` apt-get install lxc-docker “` 可能是基于原来安装方式的千奇百怪导致问题丛出,所以Docker官方提供了一个脚本用于适配不同系统、不同发行版本Docker安装的问题,这也是一个比较奇怪的地方,所以Docker生态还是蛮乱的。 验证 16:44:15 up 28 days, 23:41, 2 users,load average: 0.10, 0.13, 0.15 docker30320 1 0 Jan11 ? 00:49:56 /usr/bin/docker daemon -p/var/run/docker.pid Docker内核升级到1.19,Linux内核升级到3.19后,保持运行至今已经2个月多了,都是ok的。 总结 这个故障的处理时间跨度很大,都快半年了,想起今年除夕夜收到服务器死机报警的情景,心里像打破五味瓶一样五味杂陈。期间问过不少研究Docker和操作系统内核的同事,往操作系统内核版本等各个方向进行了测试,但总与正确答案背道而驰或差那么一点点。最后发现原来是处理得不够彻底,比如升级不彻底,环境被污染;比如升级的版本不够新,填的坑不够厚。回顾了整个故障处理过程,总结下来大概如下: 回归运维的本质 运维要具有预见性、长期规划,而不能仅仅满足于眼前: 应急预案:针对可能系统上线后可能发生的故障类型进行总结,并提供应急预案。 抢通业务:优先抢通业务,再处理故障。 应用版本选择等技术选型问题:在环境部署和应用选型时需要特别注意各种版本,最好采用社区通用或者公司其他同学已经测试或验证可行的版本。 操作系统内核:要合理升级内核,只有定位到确定版本存在的问题,才能有针对性的升级内核版本,不然一切徒劳。 在我们原来的设计中,不同用户调度器针对同一个容器同时操作没有加锁机制,也没有按照对源判断原则,也曾出现过迁移失败的情况。迁移时判断迁往的目的地址是否就是本地地址,如果是本地地址应该拒绝操作的。这个问题不知你是否觉得眼熟。我倒是发现,很多人程序开发过程中,就经常不对输入源或者操作的源状态进行判断,结果出现了各种bug。 Google的能力 在处理这个故障的过程中,会发现不同人使用Google搜出来的东西并不一样,为什么呢?我觉得这就是搜索引擎槽点满满,或者说灵活之处。像这次的故障,我用Linux Docker Unable to handle kernel NULL pointer dereference去搜索,与别人用”Unable to handle kernel NULL pointer dereference”结果就不同。原因在于增加了””之后,搜索更加精确了。关于Google的正确打开方式,建议参考: https://www.zhihu.com/question/20161362?rf=19798921 http://www.yunweipai.com/archives/18950.html

优秀的个人博客,低调大师

【Spark Summit EU 2016】基于Spark的分布式计算,提升业务洞察力

更多精彩内容参见云栖社区大数据频道https://yq.aliyun.com/big-data;此外,通过Maxcompute及其配套产品,低廉的大数据分析仅需几步,详情访问https://www.aliyun.com/product/odps。 本讲义出自Stephan Kessler在Spark Summit EU 2016上的演讲,主要介绍了目前商业智能的相关技术蓝图,并且从业务应用和大数据以及数据科学的角度谈论了目前商业智能蓝图中的不足,并分享了在Spark上集成的业务功能以及如何在Spark上利用不同来源的数据,并对HANA Vora 1.3进行了介绍。

资源下载

更多资源
腾讯云软件源

腾讯云软件源

为解决软件依赖安装时官方源访问速度慢的问题,腾讯云为一些软件搭建了缓存服务。您可以通过使用腾讯云软件源站来提升依赖包的安装速度。为了方便用户自由搭建服务架构,目前腾讯云软件源站支持公网访问和内网访问。

Nacos

Nacos

Nacos /nɑ:kəʊs/ 是 Dynamic Naming and Configuration Service 的首字母简称,一个易于构建 AI Agent 应用的动态服务发现、配置管理和AI智能体管理平台。Nacos 致力于帮助您发现、配置和管理微服务及AI智能体应用。Nacos 提供了一组简单易用的特性集,帮助您快速实现动态服务发现、服务配置、服务元数据、流量管理。Nacos 帮助您更敏捷和容易地构建、交付和管理微服务平台。

Sublime Text

Sublime Text

Sublime Text具有漂亮的用户界面和强大的功能,例如代码缩略图,Python的插件,代码段等。还可自定义键绑定,菜单和工具栏。Sublime Text 的主要功能包括:拼写检查,书签,完整的 Python API , Goto 功能,即时项目切换,多选择,多窗口等等。Sublime Text 是一个跨平台的编辑器,同时支持Windows、Linux、Mac OS X等操作系统。

WebStorm

WebStorm

WebStorm 是jetbrains公司旗下一款JavaScript 开发工具。目前已经被广大中国JS开发者誉为“Web前端开发神器”、“最强大的HTML5编辑器”、“最智能的JavaScript IDE”等。与IntelliJ IDEA同源,继承了IntelliJ IDEA强大的JS部分的功能。

用户登录
用户注册