Since the Red Hat Enterprise Linux Server for ARM Development Preview 7.3 became available I’ve been wanting to try it out to see how the existing code for x86_64 systems works on the 64-bit ARM architecture (a.k.a. aarch64).
Going in, I was a bit apprehensive that some kind of heavy lifting would be needed to get things working on the ARM platform. My experience with cross-architecture ports with other distros (before I joined Red Hat) indicated
going through dependency hell as I frantically tried to find equivalent packages for the ARM architecture. Needless to say, most of these porting exercises ended with massive amounts of productivity loss and potential security exposures as I downloaded packages from unknown sources, all the time hoping one of them would work.
For the cross-architecture porting exercise with Red Hat Enterprise Linux, I chose the Virtual IoT Gateway Lab as the test case. This lab builds an Intelligent IoT Gateway, a key component of enterprise Internet of Things (IoT) as it enables real-time decision-making at the edge, secures downstream devices and optimizes network utilization.
The other reason I chose this lab was because it uses Red Hat Fuse, A-MQ and BRMS - standard tooling for any enterprise Java developer. This lab is also fairly easy to set up and comes with scripts that build the needed services from source.
For hardware, I picked the APM Mustang system (X-Gene™ Server, 64-bit ARMv8-A compliant implementation) that packs sufficient computing punch in a low power budget. The Mustang has a nice form-factor that doesn’t take up too much space on my desk, though the fan is a bit loud for my taste.
Everything Just Works
Once the Red Hat Enterprise Linux Server for ARM Developer Preview was installed on the Mustang, I enabled the subscription and added the repo rhel-7-for-arm-optional-rpms to enable the access to the ARM architecture packages. From there on, I simply followed the steps for the lab as I would for any x86 system. Everything just worked. The Gateway was up and running with the sensor application sending data to the Gateway that routed it per the business rules. Logging into the Fuse admin console, I could see the messages flowing to expected destinations (see below).
How the Gateway lab Works
In this lab, we build and deploy the routing and business rules services on Red Hat Fuse. The sensor application sends temperature data using MQTT to the Red Hat JBoss A-MQ broker. These messages will be forwarded to the services that we started earlier. The business rules trigger the desired action when the sensor value reaches a threshold.
You can download the lab here: https://github.com/ishuverma/Virtual_IoT_Gateway
Conclusion
This little exercise made me appreciate the often un-touted benefit of using Red Hat Enterprise Linux: everything worked out of the box. This is only possible because it uses a common userspace and core packages for both architectures instead of creating a custom distribution for each architecture.
For me, it was an ease of use that saved me a trip to dependency hell. But for an enterprise, this could have huge implications. By choosing Red Hat Enterprise Linux, one gets a standardized environment that stays consistent across architectures, from IoT devices to data center. Having access to packages that are provided through a Red Hat supported repo significantly improves developer productivity (not having to hunt for packages) and eliminates security risks of installing these packages from unknown sources.
ARM architecture’s near dominance in mobile and IoT segments can also be translated to enterprise-grade systems, datacenters and cloud. Although, not many ARM servers are currently available in the market, several silicon vendors like Cavium and Qualcomm are working on delivering compelling server-class products to the market. Standardizing on Red Hat Enterprise Linux in your environment future-proofs your infrastructure investments as it allows Java applications to easily run across multiple architectures (x86_64, ARM, IBM Power, etc.). Applications written in other languages will likely require recompiling code for a given architecture, but likely Red Hat Enterprise Linux provides the same set of tools across all architectures delivering a consistent developer experience.
저자 소개
Ishu Verma is Technical Evangelist at Red Hat focused on emerging technologies like edge computing, IoT and AI/ML. He and fellow open source hackers work on building solutions with next-gen open source technologies. Before joining Red Hat in 2015, Verma worked at Intel on IoT Gateways and building end-to-end IoT solutions with partners. He has been a speaker and panelist at IoT World Congress, DevConf, Embedded Linux Forum, Red Hat Summit and other on-site and virtual forums. He lives in the valley of sun, Arizona.
채널별 검색
오토메이션
기술, 팀, 인프라를 위한 IT 자동화 최신 동향
인공지능
고객이 어디서나 AI 워크로드를 실행할 수 있도록 지원하는 플랫폼 업데이트
오픈 하이브리드 클라우드
하이브리드 클라우드로 더욱 유연한 미래를 구축하는 방법을 알아보세요
보안
환경과 기술 전반에 걸쳐 리스크를 감소하는 방법에 대한 최신 정보
엣지 컴퓨팅
엣지에서의 운영을 단순화하는 플랫폼 업데이트
인프라
세계적으로 인정받은 기업용 Linux 플랫폼에 대한 최신 정보
애플리케이션
복잡한 애플리케이션에 대한 솔루션 더 보기
오리지널 쇼
엔터프라이즈 기술 분야의 제작자와 리더가 전하는 흥미로운 스토리
제품
- Red Hat Enterprise Linux
- Red Hat OpenShift Enterprise
- Red Hat Ansible Automation Platform
- 클라우드 서비스
- 모든 제품 보기
툴
체험, 구매 & 영업
커뮤니케이션
Red Hat 소개
Red Hat은 Linux, 클라우드, 컨테이너, 쿠버네티스 등을 포함한 글로벌 엔터프라이즈 오픈소스 솔루션 공급업체입니다. Red Hat은 코어 데이터센터에서 네트워크 엣지에 이르기까지 다양한 플랫폼과 환경에서 기업의 업무 편의성을 높여 주는 강화된 기능의 솔루션을 제공합니다.