Posted on Leave a comment

How to Install Ubuntu Arm Server on the Raspberry Pi Compute Module 3

A few weeks ago, the Ubuntu team released a pre-built 64-bit Ubuntu Arm Server Raspberry Pi image that can be downloaded and flashed to an SD Card, that is compatible with both the Raspberry Pi 3B and Raspberry Pi 3B+ single board computers. As we documented in our original article detailing the new Ubuntu build, in the past you needed to build a kernel, create a root filesystem, and then install the necessary firmware and drivers. But now with this new ready-made image, there is no longer a need for any of those difficult and time consuming tasks. While the image was intended to be run on standard Raspberry Pi 3B and 3B+ hardware, with some small modifications it can be installed and run on the Raspberry Pi Compute Module 3 as well.

First and foremost, you will need to start with the new 64-bit Raspberry Pi 3 Ubuntu Arm Server image, which can be downloaded here: http://cdimage.ubuntu.com/releases/18.04/

Once downloaded, you will need to unzip / extract the image file from the compressed archive file.

Next, using a Raspberry Pi Compute Module IO Board or Waveshare Compute Module IO Board Plus, you will need to flash the image file to the Compute Module 3’s onboard eMMC. Instructions for that process can be found here: https://www.raspberrypi.org/documentation/hardware/computemodule/cm-emmc-flashing.md

After the flash process is complete, there should be 2 partitions on the eMMC, ‘boot’ and ‘system’. Mount the ‘boot’ partition of the eMMC so that you can view and edit the files on it.

The first change to be made is to the ‘config.txt’ file. Open it up and change the kernel line, add an initramfs, add an arm_control line, and comment out the device tree address as such:

kernel=vmlinuz
initramfs initrd.img followkernel
arm_control=0x200
#device_tree_address=0x02000000

Save and exit.

While the partition is still mounted, you need to add an additional file to the top level directory of the partition as well. In this ‘boot’ partition, you will notice there are .dtb files for the Raspberry Pi 3B. But since we are adapting this Ubuntu image for the Compute Module 3, we need to add the CM3’s .dtb file here as well. A copy of the Compute Module 3’s .dtb can be extracted from a stock Raspbian image, but for convenience a copy can be downloaded from the Raspberry Pi GitHub here: https://github.com/raspberrypi/firmware/blob/master/boot/bcm2710-rpi-cm3.dtb

Simply download it, then copy it to the mounted ‘boot’ partition.

At this point, all necessary changes are complete, and it’s time to boot up and check our work! Unmount the ‘boot’ partition, power down the Compute Module, and then change the IO Board to standard boot mode via it’s jumper setting. Reapply power, and the boot process should begin! The first boot takes a few minutes, as cloud-init runs a series of one-time setup processes to resize the rootFS, setup networking, generate SSH keys, create a container environment, and other tasks. But, after a few minutes you should be able to login to your new 64-bit Ubuntu Arm Server for Raspberry Pi Compute Module with a default username and password of ‘ubuntu’ via SSH or a console!

Posted on 4 Comments

64-bit Ubuntu Raspberry Pi 3 Arm Server Image Now Available

This morning there is some great news for fans of the popular Raspberry Pi 3 single board computer, looking to run 64-bit Ubuntu Arm Server on their board!

 

The Ubuntu team, with support from Arm, has released a ready-made image that can be written to an SD Card and directly booted on a Raspberry Pi 3B or 3B+, with no configuration necessary.  We were able to give this image a test, and although it is technically considered a beta, it seems most everything is working and all of the standard functionality one would expect from Ubuntu Server intact!

 

You can download the image here:  http://cdimage.ubuntu.com/releases/18.04/release/

How to Install Ubuntu on the Raspberry Pi 3

Once the image is downloaded, it needs to be extracted, and can then be written to an SD Card.  Of course, the higher the read and write speed of the SD Card, the better overall system performance will be.

 

After getting the image written and inserted in to the Pi, take note that the first boot may take a few minutes while the OS goes through a few setup routines.

 

A quick run through the system showed the basic console hardware requirements of HDMI, USB, and Ethernet all worked out of the box, as well as WiFi.  SSH is enabled and working, and normal software installation and updating via ‘apt’ package management is working great.  As an added bonus, the image comes with ‘cloud-init’ setup to automatically expand the partition on the SD Card to the maximum capacity of the card, generate SSH keys, configure networking for the LXD container runtime (which is also preinstalled), and finally force a password change upon first login to the system.

 

All said, this means the Ubuntu Arm Server image is ready to use immediately upon writing the SD Card and booting the Pi!

 

In the past, it was technically possible to bootstrap a system using a custom built kernel and an Ubuntu rootfs, then add Pi-specific firmware and drivers.  After that you had to add users, manually install networking, and add even basic system utilities.  That process required in-depth knowledge of system installation and configuration, and was not something most users could tackle on their own.  However, thanks to the efforts of the Ubuntu Arm team in creating this new ready-made image, no advanced knowledge of the Linux build process is required, and even casual Raspberry Pi users can be up and running easily!

 

One final thing to keep in mind, is that this image is fully intended to be a 64-bit Ubuntu Arm Server platform!  Use cases such as File or Print servers, DNS, MySQL or other database servers, web front-end caching, or other lightweight services all make sense for this platform.  It can also be used for installation and testing of Aarch64 software, developing and compiling Arm64 applications, exploring containers, or even production workloads where possible!  Small, distributed compute workloads, IoT services, Industrial Internet of Things, environmental monitoring, remote compute capacity in non-traditional settings, or many other uses cases are all possible.  While a desktop *can* be installed, due to the limited memory on the Raspberry Pi, only a lightweight desktop like LXDE or XFCE will truly work, with both Mate and Gnome quickly running out of memory, moving to Swap, and then slowing the system to a crawl.   Even so, desktop performance in this image is not optimized, so sticking with the intended use of this image as a Server OS makes the most sense.

 

In summary, thanks to a collaborative effort from Arm and the Ubuntu teams, the community now has a ready-made Raspberry Pi 3B(+) 64-bit Ubuntu Arm Server image!
Posted on Leave a comment

ARM Server Update, Summer 2018

Continuing our quarterly ARM Server update series, it is now Summer 2018 so it is time to review the ARM Server news and ecosystem updates from the past few months!  This blog series only covers the ARM Server highlights, but for more in-depth ARM Server news be sure to check out the Works on Arm Newsletter, delivered every Friday by Ed Vielmetti!

Looking at our recent blog posts, the most important headline seems to be the rumored exit from the business by Qualcomm.  Although, at the moment, this has not been confirmed, if true it would be a major setback for ARM Servers in the datacenter.  The Qualcomm Centriq had been shown to be very effective by CloudFlare for their distributed caching workload, and had been shown by Microsoft to be running a portion of the Azure workload as well.

However, just as Qualcomm is rumored to be exiting, Cavium has released the new ThunderX2 to general availability, and several new designs have now been shown and are listed for sale.  The ThunderX2 processor is a 32-core design that can directly compete with Xeons, and provides all of the platform features that a hyperscaler would expect.

Finally, in software news, Ubuntu has released it’s latest 18.04 Bionic Beaver release, which is an LTS version, thus offering 5 years of support.  As in the past, there is an ARM64 version of Ubuntu, which should technically work on any UEFI standard ARM Server.  Examples include Ampere X-Gene servers, Cavium ThunderX servers, Qualcomm, Huawei, HP Moonshot, and AMD Seattle servers.

As always, make sure to check back for more ARM Server and Datacenter industry news, or follow us on Twitter for daily updates on all things ARM, IoT, single board computers, edge computing, and more!

 

Posted on Leave a comment

Report: Qualcomm Looking to Exit ARM Server Processor Business

Recently, Bloomberg ran an article claiming that Qualcomm was seeking to close down or find a buyer for it’s ARM Server processor, the Centriq.  While the report has not been publicly confirmed by the company, if true, this would be welcome news to Cavium who just launched their ThunderX2 ARM Server processor.  Ampere could also benefit from this, as they are currently preparing to launch an updated X-Gene ARM Server processor based on the Applied Micro deisgn.

It would be a loss for the ARM Server ecosystem as a whole though, as the Centriq was well received in the press and reviews showed that the chip offered superior performance, lower power consumption, and excellent network throughput.

Here’s hoping this report is false!

 

Posted on Leave a comment

ARM Server Update, Spring 2017

As always, much has changed in the ARM Server world since our last post!  Here are the highlights of what’s going on in the Linux on ARM Server community:

First and foremost, a huge announcement from Microsoft came at the 2017 Open Compute Project (OCP) U.S. Summit last month.  Microsoft stated they can utilize ARM Servers to power over 50% of their Cloud Workload, and demonstrated two designs, one based on the Cavium ThunderX2, and one based on the Qualcomm Centriq 2400.  They even showed an internal build of Windows Server running on the Qualcomm.

Next, 96Boards showed off all the latest projects and boards they have been working on at Linaro Connect, from IoT to the powerful Qualcomm Snapdragon 820 SBC.

Finally, on the Raspberry Pi front, a new Raspberry Pi Zero was released with WiFi built-in.  This will allow the Raspberry Pi Zero to be more easily adapted to IoT applications, without the need for a USB Wi-Fi adapter or USB ethernet adapter that was previously required.  This simpler solution addresses one of the biggest complaints about the Pi Zero.

 

 

Posted on Leave a comment

Qualcomm Centriq 2400 ARM Server Processor

Qualcomm has announced their new ARM Server processor, called the Centriq 2400, which is designed for high efficiency processing and is capable of handling datacenter workloads.  While Cavium, AMD, and Applied Micro all have ARM Server processors, Qualcomm’s new processor is the first to be built on a 10-nanometer manufacturing process.  It will be able to handle cloud software stacks now that the software ecosystem has matured, and should be able to compete with Xeon offerings as the hyperscalers like Microsoft, Facebook, Google, Amazon, Tencent, Baidu, Alibaba, and China Mobile build out next generation datacenters.

Qualcomm has lots of experience of course developing, manufacturing, and selling ARM processors via their Snapdragon line of cell phone chips, so they do have an edge on the competition as vendors like Cavium and Applied Micro don’t have the same experience and relationships already built.  Additionally, Qualcomm can leverage some synergies with the Snapdragon 820 and 835, albeit they definitely have their differences.

With another vendor now entering the ARM Server marketplace (and a major one at that), the future is looking bright for ARM gaining more traction and making inroads in the datacenter.

 

Posted on Leave a comment

ARM Server Linux Update, March 2016

It has been a few months since our last ARM Server update, and as usual, a lot has changed in just a short time!

The biggest and most important news is the launch of the Raspberry Pi 3, freshly upgraded to a quad-core 64-bit ARM processor from Broadcom, whereas all previous Raspberry Pi’s have been based on 32-bit processors. With 8 million units sold, the Raspberry Pi is by far the most popular ARM single board computer, so the move to a 64-bit processor will potentially add millions of units to the 64-bit ARM ecosystem.

In January, the AMD Opteron A1100 officially launched, which is also a 64-bit model. It is available in 3 different SKU’s with varying core count and speeds, and AMD is arguably the biggest name to launch an ARM Server SOC thus far.

The LeMaker Cello is a new board based on the 96Boards Enterprise Edition specification, utilizing one of the AMD Opteron processors. It has gigabit ethernet, DDR3 memory, SATA, and USB 3.0, so connectivity and data throughput should be excellent.

Finally, as part of the latest 96Boards Reference Software Platform, both Debian and CentOS are now supported for install, and a single 4.4 Kernel run the DragonBoard, HiKey, and HuskyBoard.

So there you have it. Just a few short months, and lots of change has happened in the ARM Server ecosystem (as usual)!

Posted on Leave a comment

miniNodes.com Launches First Hosted 64-Bit ARM Server

Phoenix, AZ — Cloud hosting provider miniNodes.com, a pioneer in the ARM server hosting industry, is proud to announce the immediate availability of the world’s first hosted 64-bit ARM server. The new 64-bit ARM miniNode is the first publicly available hosted Linux server to use a processor based on the ARMv8 architecture.

While the transition from 32-bit to 64-bit CPU’s is already underway in the smartphone market, the server market has been slower to evolve. This has been due to the limited availability and prohibitively expensive early samples of 64-bit ARM hardware. However, the new 64-bit ARM miniNode eliminates the barriers to entry and dramatically reduces the cost for companies to begin testing software, porting applications, and building new technologies that leverage the benefits of the ARMv8 architecture. The 64-bit ARM miniNode is based on the HiSilicon Kirin 6220 processor, which has 8 ARM Cortex-A53 cores, coupled with 1gb of RAM and 20gb of storage. Linux support includes Debian 8.0 “Jessie” at launch, with other Linux distributions expected to become available in the future.

Although ARM processors already power the vast majority of smartphones, tablets, and media players, as well as some laptops, the biggest market segment poised for growth is the server and datacenter industry. ARM’s low power, high efficiency CPU designs can result in significant energy savings for web-scale datacenter operators, where energy and cooling are the largest costs. Companies can make sure their applications and code are ready to take advantage of these next-generation datacenters by using the new miniNode 64-bit ARM server to achieve compatibility today.

More information about the miniNode 64-bit ARM server can be found on our website, https://www.mininodes.com/product/64-bit-arm-mininode/

More information on ARM Holdings can be located on their website, http://www.arm.com

Posted on Leave a comment

Hosted Raspberry Pi Servers Now Available on miniNodes.com

miniNodes is proud to announce it is the first provider in North America to offer hosted Raspberry Pi servers.  Although they are small in size, Raspberry Pi Model B+ servers are able to perform many of the same functions and roles larger servers typically fulfill.  Raspberry Pi servers can host websites, email, databases, and DNS, can be used for learning programming languages like Python, Ruby, NodeJS, Bash scripting, and Linux administration, and can even be used as Minecraft servers.

Our hosted Raspberry Pi servers come in either 16gb or 32gb sizes, combined of course with the Pi’s ARM Cortex processor and 512mb of RAM.  Each node has a static IP Address, and SSH access.

For more details or to order, see https://www.mininodes.com/product/raspberry-pi-mininode/

 

Posted on Leave a comment

Arm Server Solutions: Using Microservers for Your IT Workload

 

The challenges faced by IT departments are unique. IT is typically viewed as a cost center, has low visibility and few tangible products, and yet plays a critical role in today’s business environment. As IT departments routinely have to operate on minimal budgets and with scarce resources, maximizing the return on investment and making the most of every computing dollar (and CPU cycle) is critical.

 

Customization

One way that IT departments can cut costs on their cloud and hosted server spending is by switching to microservers. Microservers are an emerging technology, based on the premise that today’s IT workloads are different from those of the past. More transactional computing is taking place, and an emphasis is placed on horizontal scalability and data replication instead of single node performance. Additionally, segmentation of workloads by specific use cases can make better use of resources in a customized microserver environment, as opposed to generic one-size-fits-all general purpose servers.

Arm servers and micro server platforms can be optimized for delivering IT services such as:

Networking – Routing and transport, packet shaping / forwarding, firewalls.
Databases – MySQL, PostgreSQL, and NoSQL databases such as mongoDB, Redis, and Cassandra
Web ServersApache, nginx
Caching – CDN servers and caching dynamic content in flat format at the edge to alleviate workload on backend servers.
Load Balancers – Dedicated nodes to prioritize and intelligently allocate requests to servers.
Reporting – Logging, analysis, business intelligence, and reporting services.
Big Data – Transactional and batch processing of data for machine learning or Hadoop.
Communications and APIs – Standard services like email and IM, emerging communication technologies like RabbitMQ, and API feeds back to other services and devices.

In the past, all of these services would have to be delivered by a single type of commodity server, which generally could not be effectively optimized for each different workload. This resulted in overspending and wasted resources. Arm servers and their software stack can easily be tailored to each independent workload, ensuring the most efficient delivery of these common IT services.

 

Efficiency

Let’s look closer at the efficiency and advantages offered by ARM microservers:

Flexibility – As already mentioned, ARM servers are flexible in their hardware platform design, varying from single-core units with 256mb of RAM and 100mb ethernet all the way to 48-core designs with 40gbE uplinks.

Size – As the name implies, micro servers are small. Some are the size of a credit card, others range up the size of a phonebook. Either way, they are much smaller than the traditional 1U, 2U, and 4U rackmount chassis.

Power Consumption – Here again, the numbers can vary, but they range from 2 to 3 watts up to about 40 watts in the more powerful configurations. However, this is on the order of 20x more efficient than a traditional server which incorporates a 500 to 1000 watt power supply.

Cost – Prices can vary of course, but micro servers can cost anywhere from $50, to a few hundred dollars, up to $3,000 depending again on the configuration and capability. A standard server can cost anywhere from $500 to $10,000, so an ARM server could be 10x to 20x more cost effective as well.

Scalability – This is another area where ARM servers excel. Traditionally, as more compute power was needed, a faster processor and more memory was the answer. As the upper end of the processing power spectrum is reached, costs grow exponentially. Small, marginal gains in processor speed incur a steep increase in cost. To demonstrate this concept, here is a current price list for Intel Core i7 processors, illustrating this phenomenon.

Core i7-4790S – $303
3.2GHz / 4 cores

Core i7-4930K – $583
3.4GHz / 6 cores

Core i7-4960X – $999
3.6GHz / 6 cores

Source: http://www.cpu-world.com/Price_Compare/Desktop_CPU_prices_(latest).html

In the example above, a marginal improvement from 3.4ghz to 3.6ghz nearly doubles the cost of the processor, but does not effectively double the performance or compute capacity. The same effect is observed in the price of memory, where cost vs. capacity follows a similar exponential curve. A superior method of addressing capacity issues is thus to scale horizontally and add additional nodes to handle increased workload, and balance the computational requests across the newly formed cluster of servers. This is the premise that Hadoop and mongoDB are founded upon, as well as many other emerging technologies like Cassandra, Varnish caching, and Docker.

 

Developing a New Ecosystem

While there are clearly significant advantages, microserver and ARM servers have a bit more maturing to do in the marketplace and ecosystem before they can capture sizable market share. The ecosystem can be defined as follows, per the supply chain:

Chip vendors, such as AMD, Allwinner, Freescale, Qualcomm, Samsung, MediaTek, Rockchip, etc. who produce CPU’s based on ARM cores and IP. Currently, the bulk of chips produced are 32-bit processors, whereas business and micro servers will need 64-bit support. ARM has A53 and A57 64-bit cores sampling and in early adopter products, but volume production of these cores and processors needs to ramp up.

Hardware integrators like HardKernel, Wandboard, Olimex, pcDuino, CubieTech, Radxa, Advantech, and others need to integrate those 64-bit cores into custom PCB designs.

Software and Operating Systems needs to mature and fully support 64-bit ARMv8 processors. Ubuntu and Fedora are already there, but RedHat, CentOS, and CoreOS have work to do still.

Datacenters that host next generation microserver and hosted ARM servers need to come online and provide capacity for mass deployment of nodes to build both public and private clouds.

These ecosystem components will take time to build out and scale. These initiatives need to be well planned, repeatable, and cost effective to ensure that ARM servers can gain a foothold in the marketplace, and then build momentum from there based on competitive advantages and disruptive forces. These components won’t appear overnight, but it won’t be long until the microserver takes significant market share aware from traditional, generic servers.