2019年1月7日,华为推出鲲鹏920处理器,便宣告了构建鲲鹏生态系统的开始。据官方介绍,鲲鹏是一个包含了鲲鹏计算单元、AI处理单元、智能管理、智能网卡的片上系统SoC,在此之上加上服务器操作系统,从而形成一个生态的闭环。在2019年9月20号举办的华为全联接大会中,预告了华为服务器操作系统EulerOS(欧拉)将会以开源版本发出,代号为openEuler,其主要目的就是完善鲲鹏生态系统。被华为Cloud&AI BG总裁侯金龙称为“鲲鹏灵魂”的就是这个openEuler操作系统,它不仅能让华为云计算为人工智能保驾护航,还能为数据安全提供更全面的保障。在2020年3月27日的华为开发者大会上,正式推出了openEuler 20.03 LTS 版本,任何伙伴都可以免费的获取LTS版本,并且可以商业化,同时承诺将对openEuler永久免费、开源。

随着美帝对中国的封锁日趋严峻,国家在大政策方针上也开始了全面国产化的进程,新上线的软硬件服务基本上都要求使用国产,符合安全可控原则。本人所在公司业务也涉及到国企及党政军部门的业务,因此必须在国产化安全可控方面有相应的策略,经过一番对国产服务器及操作系统(多多少少都有一些现有国外开源Linux的影子)的调研了解后,个人觉得华为推出的鲲鹏服务器以及Euler系统比较符合公司的发展方向:1. 华为有自主知识产权硬件,鲲鹏为Arm架构芯片,性能与Intel相比不弱;2. 开源的Euler使用起来更让人放心;3. 华为同时拥有软硬件开发能力,这使得系统的稳定性和可用性更强; 4. 最重要的一点,我们使用 .NET Core 开发平台,支持Arm架构,并且在Docker的加持下(使用Docker是为了简化运行环境配置,毕竟那些配置还是很繁琐的),基本上无需修改程序,仅仅需要在Euler系统上重新编译即可顺利运行。以下,我就介绍如何使用Euler系统来编译运行.NET Core程序。

01

首先,作为测试环境,我在华为云上购买了一台鲲鹏云服务器,4C8G, EulerOS 2.8

02


其次,我们要先调整下系统环境,不知为何默认的yum包源并不正确,查阅官方文档才获得正确配置。

1. SSH远程登录后,需要调整一下yum包的源地址。转到 /etc/yum.repos.d 目录下,修改 euleros_aarch64.repo 文件内容如下:

[base]
name=EulerOS-2.0SP8 base
baseurl=http://mirrors.huaweicloud.com/euler/2.8/os/aarch64/
enabled=1
gpgcheck=1
gpgkey=http://mirrors.huaweicloud.com/euler/2.8/os/RPM-GPG-KEY-EulerOS

2. 添加Docker包源

执行如下命令:

yum-config-manager \--add-repo \https://download.docker.com/linux/centos/docker-ce.repodnf clean all # 清除所有的缓存文件
dnf makecache # 制作元数据缓存

然后再执行

yum repolist all

显示内容大致如下,说明yum软件包源设置成功

03

接下来,该是安装Docker的时候了。

1. 安装必备组件

yum install policycoreutils-python
wget http://mirror.centos.org/altarch/7/extras/aarch64/Packages/container-selinux-2.107-3.el7.noarch.rpm
rpm -ivh container-selinux-2.107-3.el7.noarch.rpm

2. 安装Docker

yum list docker-ce --showduplicates | sort -r # 列一下可以安装的Docker版本
yum install docker-ce # 当然是默认最新版啦

3. 安装完看一下Docker版本

docker -v
Docker version 19.03.8, build afacb8b

4. 既然Docker装好了,我们跑一下 .NET Core 官方Demo瞧瞧

docker run --rm -it -p 80:80 mcr.microsoft.com/dotnet/core/samples:aspnetapp

嗯,程序顺利运行起来了!请忽略截图里几个”Already exists”, 因为我之前已经拉了一个dotnet的包。我们现在用浏览器访问下服务器的80端口看看吧!

页面正确展示,也显示了服务器的一些信息,只是那个最大可用内存有点问题,感觉应该是core的问题,有知道的同学可以留言说说看。

04

至此,我们让Arm架构的鲲鹏服务器在Euler系统上基于Docker跑起 .NET Core程序了。如果有Docker运行 .NET Core程序的同学们就已经可以自己玩起来了,如果没有做过,那么在下一篇文章中,我将继续介绍如何使用.NET SDK 的 Docker镜像编译 .NET Core程序,并使用Docker将它跑起来。

最后,让我们来欣赏下作为国产硬件骄傲的鲲鹏生态主打曲。

“鲲之大,不知千里也,鹏之背,翼若垂云天”

.NET与鲲鹏共展翅,昇腾九万里(一)相关推荐

  1. .NET与鲲鹏共展翅,昇腾九万里(二)

    在上一篇文章 .NET与鲲鹏共展翅,昇腾九万里(一)中,我们通过在鲲鹏架构的Euler系统上跑Docker的方式把dotnet core 跑起来了,有读者反馈说"还是走docker喽,你这个 ...

  2. 华为昇腾AI全栈知识深入解读,师资培训沙龙深圳场圆满落幕!

    头图 | 视觉中国 极度缺乏AI人才,已成为中国人工智能产业发展道路上的瓶颈.在国家政策的支持下,众高校初建AI专业者甚多,但高校教师应掌握哪些知识储备来传道授业,大家都是"摸着石头过河&q ...

  3. 2019华为全联接大会(汇总)

    来源:龙为科技 2019年9月18-20日,华为公司在上海举办第四届华为全联接大会(HUAWEI CONNECT),发布云和AI的最新产品与解决方案,分享如何应用云和AI的技术,推进数字化转型的最新实 ...

  4. [ASP.NET Core MVC] 如何实现运行时动态定义Controller类型?

    昨天有个朋友在微信上问我一个问题:他希望通过动态脚本的形式实现对ASP.NET Core MVC应用的扩展,比如在程序运行过程中上传一段C#脚本将其中定义的Controller类型注册到应用中,问我是 ...

  5. 【HC资料合集】2019华为全联接大会主题资料一站式汇总,免费下载!

    HUAWEI CONNECT 2019 大会主题演讲.峰会演讲精彩资料速递,欢迎下载查阅. 主题 资料下载(登录后可下载附件) 演讲者 [主题演讲资料]2019华为全联接大会day   2 共筑高品质 ...

  6. 华为全面启航计算战略:“鲲鹏+昇腾”双引擎

    HUAWEI CONNECT 2019第二天,华为基于"鲲鹏+昇腾"双引擎正式全面启航计算战略,宣布开源服务器操作系统.GaussDB OLTP单机版数据库,开放鲲鹏主板,拥抱多样 ...

  7. 星辰大海:华为用“鲲鹏+昇腾”计算双擎再出发

    如果说数据是智能时代的生产资料,计算是智能时代的生产力,那么多元化的计算芯片毫无疑问就是智能时代生产力的动力引擎,动力引擎决定了未来人工智能规模化商用的进程. 在2019年华为全联接大会上,华为首次对 ...

  8. 鲲鹏与天宫:从航空城驶向智能时代的万千星辰

    智能化的变革正在中国大地上以飓风呼啸之势席卷,没有人会怀疑,5G+AI+云将会在未来数十年改变我们习以为常的社会系统. 这为ICT(信息技术与通讯)产业的发展带来了一场前所未有的价值大爆发,但与此同时 ...

  9. 上海与鲲鹏的数字共鸣

    我们曾经跟大家分享过众多地区的鲲鹏生态建设与鲲鹏产业实践.不难发现,鲲鹏来到了某个地方,一定会与当地独特的经济需求.产业基础.政策导向相契合,给出因地制宜.因需而供的生态建设方案. 而当鲲鹏遇到国际化 ...

最新文章

  1. 微擎 jssdk php文件,微擎register_jssdk分享到朋友功能无法使用的问题及解决办法
  2. 读书笔记之《淘宝技术这十年》
  3. 第八次课作业(采购管理、信息与配置管理)
  4. PyTorch 之 Datasets
  5. 二十四、深入Java抽象类,抽象方法和接口
  6. Python下tornado实现webSocket实现
  7. WINFORM如何只弹出一个子窗体
  8. No module named 'ConfigParser'
  9. javascript基础系列:字符串的常用方法
  10. 吴恩达深度学习之二《改善深层神经网络:超参数调试、正则化以及优化》学习笔记
  11. 【转载+思考】追问泄题之源:命题权寻租打开方便之门
  12. 统计分析与R软件-chapter2-4
  13. 一位考研党亲自整理的大学计算机网络基础知识总结(不看后悔版)
  14. Java +Vue 实现滑动拼图验证码(Java篇 )
  15. 【windows系统】插入移动硬盘后,有盘符,但提示需要格式化的解决办法
  16. Android中 一些维持状态的经验
  17. Ansys Lumerical | 行波 Mach-Zehnder 调制器仿真分析
  18. win10怎么更新显卡驱动_Intel发布核显新驱动:支持Win10 H2更新、11代酷睿狂喜-Intel,核显,驱动,Win10 ——快科技(驱动之家旗下媒体)-...
  19. CSS3开启硬件加速及利弊
  20. 关于Twinmotion可视化渲染软件初识

热门文章

  1. WebRTC 音频模块单独编译 --【转载】
  2. [snmp++]读取cisco路由交换机信息[一] - 环境搭建
  3. 财税、管理知识,离您那么远吗?
  4. Leetcode怎么调试java代码,在Clion上调试LeetCode代码
  5. 克隆ubuntu硬盘_使用Ubuntu Live CD克隆硬盘
  6. android mvvm 官方例子,详解Android的MVVM框架 - 数据绑定
  7. Linux常用C函数-接口处理篇(网络通信函数)
  8. c++变量的作用域、生存期和可见性
  9. 本地环境和测试环境搭建
  10. QT-Linux开发环境的搭建