Home Blog Page 537

Thin Client Market Embraces Raspberry Pi

Is the Raspberry Pi ready to take over the low-end thin client market? This week, NComputing unveiled the RX-HDX, its second Raspberry Pi based thin client. In addition, ViewSonic announced a software upgrade for the Pi-based SC-T25 thin client that it announced last year.

The future of thin clients — low-cost, remotely managed virtual client computers — has always been a question mark. On one hand, dropping PC prices and increasing use of multimedia in the enterprise has slowed the demand for bare-bones thin clients. Yet, improvements in Virtual Desktop Infrastructure (VDI) technology and the ongoing need to cut maintenance, support, and operating costs have kept the market alive.

Cheap PCs have may have put the brakes on thin clients in recent years, but a rebound seems likely. The arrival of more affordable and power efficient embedded computers — and the Raspberry Pi in particular — is helping to drive down prices and restore thin clients’ edge over standalone PCs.

Early last year, Citrix, one of the major virtualization software providers for thin clients, along with VMware and Microsoft, jumpstarted the Pi thin client market by partnering with the Raspberry Pi Foundation, Broadcom, ThinLinx, and others to bring its Citrix HDX remote display protocol to the Raspberry Pi.

The H264-ready Citrix HDX technology, which is available with Citrix’s XenDesktop virtual desktop and XenApp virtual application software, is an extension of Citrix’s earlier ICA protocol. It adds intelligent redirection, adaptive compression, and data de-duplication to boost performance, especially in multimedia. Citrix HDX is implemented partially via a custom version of a SoC — in this case the Broadcom BCM43437 — that enables compute-intensive HDX algorithms to execute on the CPU. Yet, HDX avoids device obsolescence by not “burning the remoting protocol into silicon,” says Citrix.

Last year, Citrix announced a Raspberry Pi 3 based Citrix HDX Ready Pi mini-PC reference design with preconfigured HDX support for XenDesktop and XenApp. The device’s Linux-based HDX SoC Receiver SDK enables hardware acceleration on the quad-core Broadcom SoC, as well as off-loading to the VideoCore IV GPU. The device offers device management for firmware updates, remote configuration, and DHCP tagging for plug and play deployment. It can automatically connect to Citrix’s StoreFront enterprise app store like higher-end Citrix clients.

The Citrix HDX Ready Pi ships with a version of ThinLinx’s TLXOS. This Raspbian spin-off, which supports VMware Horizon Blast Extreme and Microsoft RDP/RemoteFX protocols as well as Citrix HDX, also provides a virtual client and management stack that can manage both x86 and ARM devices at once. The TLXOS client runs on Intel’s NUCs and Compute Sticks in addition to the Raspberry Pi 2 and 3.

ViewSonic  SC-T25 and NComputing RX-HDX

Last July, ViewSonic released a version of the Citrix HDX Ready Pi as the $89 SC-T25. This week, ViewSonic announced that the SC-T25 now offers the Linux-based NoTouch OS from Stratodesk, another Citrix HDX collaborator. NoTouch OS provides the SC-T25 with new features like Skype for Business support, as well as single sign-on and dual monitor support.

Also this week, NComputing unveiled its own $119, Citrix HDX compliant RX-HDX thin client. The product is also based on the Citrix HDX Ready Pi technology, but features a different design borrowed from NComputing’s $99, Raspberry Pi 3-based RX300 thin client, announced in March. The RX300 hosts images provided by its own Windows-based vSpace Pro 10 platform, and is aimed more at the educational and small business markets where NComputing is among the leaders. The new RX-HDX, meanwhile, should boost its prospects in the enterprise market.

Due to ship in July, NComputing’s RX-HDX features dual monitor support and a sleep mode button. There’s also a Pi Management Console (PMC) and web-based device management for up to 10,000 RX devices. The RX-HDX runs on less than 5W, and offers Raspberry Pi 3 features such as 1GB RAM, WiFi and Bluetooth, and 4x USB ports with full USB redirection. There’s also a Kensington lock, an optional VESA mount, and a sealed, internal 8GB microSD card.

Even at the $119 level, the Citrix HDX Ready Pi systems are competitive with DIY solutions. A homegrown thin client system with a $10 TXLOS build and a typical Raspberry Pi 3 starter kit and keyboard and mouse bundle can be had for about $100 without the display.

Initially, Citrix listed Micro Center as a Citrix HDX Ready Pi partner, but no longer. The computer retailer still offers a PowerSpec Raspberry Pi 3 Starter Kit that is billed as a zero thin client with “Citrix Receiver for Linux and a fully licensed ThinLinX TLXOS RPi OS on 8GB microSD.” The system sells for only $50, discounted from $80. Although it appears to be based on the Citrix HDX Ready Pi, Micro Center does not promote the connection.

Unlike ViewSonic and Micro Center, which are newcomers to thin clients, NComputing was ranked number three in the market at 10.2 percent, according to a March 2016 IDC report. The report also noted that NComputing was one of the fastest growing thin client vendors after fourth place Centerm of China.

The 2015 thin client market slumped due to competition from low-cost computers such as Chromebooks. However, IDC projected the market would return to steady growth through 2019 when it expects sales of 6.4 million units, up from 5.1 million in 2015.

This week’s reaffirmation by NComputing and ViewSonic of their Raspberry Pi experiments suggests that thin client market leaders Dell and HP, which both saw reduced sales in 2015, might consider similar moves. There are other low-cost, VESA mountable size embedded platforms to build on, but it’s hard to beat the Pi 3 for its platform ecosystem. Its price/performance is pretty darn good, as well.

“The Raspberry Pi is renowned for its innovation, portable size, versatility, and economic viability,” said NComputing CTO Richard Sah in an email Q&A. “With each iteration, the affordable computer has established itself as a robust and reliable device, one increasingly become viable within an enterprise setting. NComputing strives to be the market leader in Pi-based thin clients and will continue to innovate on top of the Pi platform.”

Aside from small, and high price/performance, the Raspberry Pi also attracted NComputing with its larger developer base. “With a vast community of developers behind Raspberry Pi, we believe the platform will become more and more popular in different vertical markets,” says Sah.

Meanwhile several open source community projects are offering alternatives to TXLOS for DIY Pi-based thin clients. The Raspberry Pi Thin Client project, which now supplies a RPiTC v3 1.12 release, supports Citrix Receiver 13.4.2, VMWare Horizon 4.3, NoMachine 5.2.11, and FreeRDP, among other platforms. There’s also WTware, which offers a client for Windows Remote Desktop Services and Windows Terminal Server.

The rise of Raspberry Pi based thin clients could boost the role of ARM thin clients in this very x86-centric market. ARM thin clients have been available for years, and like a fair share of x86 thin clients, they run Linux. Options include the i.MX6-based Atrust T66, Allwinner A20-based Share FL120, and NComputing’s own Cortex-A9 based N500.

Connect with the Linux community at Open Source Summit North America on September 11-13. Linux.com readers can register now with the discount code, LINUXRD5, for 5% off the all-access attendee registration price. Register now to save over $300!

An Introduction to Linux’s EXT4 Filesystem

In previous articles about Linux filesystems, I wrote an introduction to Linux filesystems and about some higher-level concepts such as everything is a file. I want to go into more detail about the specifics of the EXT filesystems, but first, let’s answer the question, “What is a filesystem?” A filesystem is all of the following:

  1. Data storage: The primary function of any filesystem is to be a structured place to store and retrieve data.
  2. Namespace: A naming and organizational methodology that provides rules for naming and structuring data.
  3. Security model: A scheme for defining access rights.
  4. API: System function calls to manipulate filesystem objects like directories and files.
  5. Implementation: The software to implement the above.

Read more at OpenSource.com

Hyperledger Sawtooth Graduates to Active Status

We’re happy to share that Hyperledger’s Technical Steering Committee (TSC) has granted the Hyperledger Sawtoothmaintainer’s request to advance the project’s status from Incubation to Active. Hyperledger Iroha also graduated today.

Hyperledger Sawtooth was accepted under incubation in April 2016. The framework was designed to explore scalability, security, and privacy questions prompted by the original distributed ledgers. It currently focuses on (1) designing enterprise deployments that don’t lose the distributed systems benefits of blockchains and (2) making smart contracts safe and confidential.

Read more at Hyperledger

What to Expect (and Not Expect) from Linux Universal Packages

Traditionally, Linux has relied on two main package formats, .deb (Debian) and .rpm (Red Hat). Although structured differently, both .deb and .rpm packages consist of upstream software customized for a particular distribution, plus the scripts to install any dependencies — that is, required libraries, utilities, and other packages — not already installed on the system. This arrangement restricts the required hard drive space to a minimum, and both formats have served Linux well for almost two decades.

However, in recent years, these traditional formats have come under increasing criticism. “Linux users are increasingly expecting more of a consumer experience for application — much like the app experience on a smartphone, for example,” says Thibaut Rouffineau, Canonical’s head of Internet of Things marketing. Rouffineau criticizes the distributions that use .deb or .rpm for having “strict and complicated” requirements that slow the introduction of new versions and complicate the support of Linux by requiring a separate version of the package for almost every distribution.

Read more at The New Stack

The Architect Elevator — Visiting the Upper Floors

Many large organizations see their IT engine separated by many floors from the executive penthouse, which also separates business and digital strategy from the vital work of carrying it out. The primary role of an architect is to ride the elevators between the penthouse and engine room, stopping wherever is needed to support these digital efforts: automating software manufacturing, minimizing up-front decision making, and influencing the organization alongside technology evolution.

“Most of what architects have traditionally done should be done by developers, by tools, or not at all” proclaimed Martin Fowler and Erik Doernenburg at a recent meetup. This may come as a surprise to many architects who are proud to carry their hard-earned title. As Chief Architect of a large financial services company, I do actually agree with their statement – the keyword being “traditionally”.

Traditionally, architects were considered to be those folks who make major design decisions on a project, draw architecture diagrams, and direct developers. Those tasks are in fact better handled by the development team and modern tooling than by a single person. Many modern companies therefore eschew software architect as a separate job title, even though they highly value software architecture. The good news is that many new tasks await architects in large organizations. And they are far more interesting and impactful than drawing class diagrams. However, they require architects to engage at the upper floors of their organization.

Read more at Martin Fowler

Creating Virtual Machines in KVM: Part 2 — Networking

When last we met, we learned the basics of creating new virtual machines in Creating Virtual Machines in KVM: Part 1. Now we’re going to learn how to control Internet access for our virtual machines, network VMs with each other, and create new virtual networks.

Internet Access

Some Linux distributions, such as CentOS 7 and Red Hat Enterprise Linux 7, do not start networking by default, so you have to enable it. If you don’t have networking in a virtual machine, first check whether it is enabled.

The default network is NAT (network address transation) when you create a new virtual machine — assuming your particular Linux distribution has not mucked with this. This forwards network traffic through your host system; if the host is connected to the Internet, then your virtual machines have Internet access.

The virtual machine manager also creates an Ethernet bridge between the host and virtual network, so you can ping the IP addresses of your VMs from the host, and your VMs can ping the IP address of the host.

Confirm your virtual network type by opening the information tab on any running VM; this is the little white “i” in a blue circle on the top left of your virtual machine console (Figure 1).

Figure 1: Network information.

Your virtual machines have their own virtual network, which is on a different subnet than the host. Your VMs should be able to ping each other by IP address and by hostname, because your virtual network has its own name server. When your ping tests succeed, then you can set up services such as web, email, SSH, and so on, just like on any Linux machine.

Virtual Networks

Go to Edit > Connection Details > Virtual Networks in your virtual machine manager to view the details of your virtual network (Figure 2).

Figure 2: Connection details.

This shows the network name, Ethernet bridge name, the DHCP address range, and status. As your collection of VMs grows you may wish to give them separate subnets. How to do this? With ease. Click the little green “Add network” button at the bottom left of the Virtual Networks tab.

Figure 3: Green means go.

In step 1, enter your new network name, which is anything you want.

In step 2, enter your new network address. The field background changes to green when you enter a non-colliding address (Figure 3). Enable DHCP with a click. How easy is that?

In step 3, enable IPv6. Or not.

In step 4, you have the option to either create an isolated network with no external access or one with external access via NAT or routing. NAT is the easiest (Figure 4).

Figure 4: NAT is easiest.
Click Finish. This returns you to the Connection Details screen, where you can admire your networks list.

Using Your New Virtual Network

Open the information tab on a running VM and delete your existing network configuration. Look for the “NIC :[mac address]” entry in the left pane, where all of your hardware is listed, and right-click/Remove Hardware to remove it.

Next, click the Add Hardware button at the bottom. Select Network and choose your new network from the Network Source dropdown.

Distributions that use Network Manager should pick up the new assignment automatically. If you’re not using Network Manager, then renew your DHCP lease or reboot.

Useful Commands

The virtual machine manager is a nice tool, but it is complex. It is usually faster to run command-line queries to get answers. brctl, bridge control, lists your Ethernet bridges and their status:

$ brctl show
bridge name bridge id           STP enabled  interfaces
virbr0      8000.000000000000   yes
virbr1      8000.000000000000   yes
virbr2      8000.fe540075e883   yes           vnet0
                                              vnet1

The virsh command is very useful for querying and managing virtual machines. List all of your virtual networks and their status:

$ virsh net-list --all
 Name                 State      Autostart     Persistent
----------------------------------------------------------
 default              active     yes           yes
 net2                 inactive   no            yes
 net3                 active     yes           yes

List all of your virtual machines and their status:

$ virsh list --all
 Id    Name                           State
----------------------------------------------------
 1     Ubuntu-1604                    running
 2     centos7.0                      running
 -     opensuse-leap                  shut off
 

Get information on a single virtual network:

$ virsh net-info net3
Name:           net3
UUID:           b3b23db5-fc8e-4428-8913-1287a179ec68
Active:         yes
Persistent:     yes
Autostart:      yes
Bridge:         virbr2

Dump complete information about a virtual network in XML format:

$ virsh net-dumpxml  net3
<network connections='2'>
  <name>net3</name>
  <uuid>b3b23db5-fc8e-4428-8913-1287a179ec68</uuid>
  <forward mode='nat'>
    <nat>
      <port start='1024' end='65535'/>
    </nat>
  </forward>
  <bridge name='virbr2' stp='on' delay='0'/>
  <mac address='52:54:00:ca:b2:c3'/>
  <domain name='net3'/>
  <ip address='192.168.10.1' netmask='255.255.255.0'>
    <dhcp>
      <range start='192.168.10.128' end='192.168.10.254'/>
    </dhcp>
  </ip>
</network>

Domains vs. Hostnames

Domains and hostnames are not the same thing, although they can be the same if you desire. Virtual machine hostnames are the standard Linux hostnames, and you manage them just like any Linux.

The virsh list command returns a list of your virtual machine names, also called domains. These are the names that you configured at creation. Look on the information > Overview tab of a running VM to see its domain name. This has nothing to do with DNS domain names; they’re just arbitrary names for our VMs.

Learn more about Linux through the free “Introduction to Linux” course from The Linux Foundation and edX.

Google Plans to Demonstrate the Supremacy of Quantum Computing

Quantum computers have long held the promise of performing certain calculations that are impossible—or at least, entirely impractical—for even the most powerful conventional computers to perform. Now, researchers at a Google laboratory in Goleta, Calif., may finally be on the cusp of proving it, using the same kinds of quantum bits, or qubits, that one day could make up large-scale quantum machines.

By the end of this year, the team aims to increase the number of superconducting qubits it builds on integrated circuits to create a 7-by-7 array. With this quantum IC, the Google researchers aim to perform operations at the edge of what’s possible with even the best supercomputers, and so demonstrate “quantum supremacy.”

Read more at IEEE Spectrum

Google, IBM and Lyft Launch Istio, an Open-Source Platform for Managing and Securing Microservices

Microservices, that is, breaking larger applications into small parts that communicate over APIs, is increasingly becoming the architectural style of choice for many developers (especially when coupled with containers). Managing this fleet of services introduces its own set of challenges, though. To help developers and DevOps professionals manage and secure their microservice-based applications, Google, IBM and Lyft today announced Istio, a new open platform that allows you to create a network of deployed services, and which includes tools for load balancing, service-to-service authentication and monitoring, among others.

It can do all of this without requiring any changes to the actual applications. That’s because Istio sits at the network level and uses a proxy to intercept all network communication between your microservices. At its core, Istio uses the Envoy proxy (which was developed by Lyft) and its built-in service discovery and load balancing tools, among other things.

Read more at TechCrunch

And Now, A Brief Definition of the Web

What exactly is the web? It seems like a stupid question because we all know the answer: the web is the thing Tim Berners-Lee invented in 1989. It’s not the same thing as “the internet,” which is what we use to access the web, apps, and streaming video. It’s what we visit every day with our web browsers on our phones and laptops. Simple, right?

Well, no. Traditionally, we think of the web as a combination of a set of specific technologies paired with some core philosophical principles. The problem — the reason this question even matters — is that there are a lot of potential replacements for the parts of the web that fix what’s broken with technology, while undermining the principles that ought to go with it.

Read more at Flipboard

30 Best Practices for Software Development and Testing

Joining any new company—with an established culture and programming practices—can be a daunting experience. When I joined the Ansible team, I decided to write up the software engineering practices and principles I’ve learned over the years and to which I strive to work. This is a non-definitive, non-exhaustive list of principles that should be applied with wisdom and flexibility.

My passion is for testing, as I believe that good testing practices can both ensure a minimum quality standard (sadly lacking in many software products), and can guide and shape development itself. Many of these principles relate to testing practices and ideals. Some of these principles are Python-specific, but most are not. (For Python developers, PEP 8 should be your first stop for programming style and guidelines.)

Read more at OpenSource.com