Home Blog Page 427

Irresistible Appeal of Open Source

Telecom companies have always cooperated in development of standards. It’s essential for interoperability – otherwise each company’s customers would only be able to interact with its other customers. But there’s a difference between agreeing on standards and sharing software.

Illustrating the increasing pace of open source acceptance in telecom, AT&T announced in early 2017 that it was handing over its ECOMP (Enhanced Control, Orchestration, Management and Policy) platform to the Linux Foundation for placement into open source. AT&T developed ECOMP to manage and automate virtual network functions (VNFs) in its software-defined networks (SDNs). Linux Foundation subsequently merged ECOMP platform with the Open Orchestrator Project to forge the Open Network Automation Platform Project.

Read more at Network World

Quantum Computers Barely Exist—Here’s Why We’re Writing Languages for Them Anyway

Quantum computers are still extremely rudimentary, and largely remain intriguing playthings in a few advanced research labs. That hasn’t deterred people from developing new programming languages for them.

The most recent one comes from Microsoft, which has unveiled Q# (pronounced Q sharp) and some associated tools to help developers use it to create software. It joins a growing list of other high-level quantum programming languages such as QCL and Quipper.

But given that practically nobody has a quantum computer, what’s the point?

Read more at MIT Technology Review

2018: The Year of Kubernetes and Interoperability

On its own, Kubernetes is a great story. What makes it even better is the soaring interoperability movement it’s fueling. An essential part of enabling interoperable cloud-native apps on Kubernetes is the Open Service Broker API. OSBAPI enables portability of cloud services across offerings and vendors. A collaborative project across multiple organizations, including Fujitsu, Google, IBM, Pivotal, Red Hat and SAP, it enables developers, ISVs, and SaaS vendors to deliver services to applications running within cloud-native platforms. In 2017, we saw adoption of the API by Microsoft and Google. Late in the year, Amazon and Pivotal partnered to enable expose Amazon’s services via the broker as well. Red Hat uses it to support the OpenShift marketplace.

A craftily designed API, OSBAPI is beautiful in its simplicity. It got the abstraction right. After several iterations, the abstraction is still holding strong, enabling OSPABI to continue to grow in use and evolve over time, eventually becoming even more powerful.

Read more at The New Stack

Ringing in 2018 with 103 Hacker-Friendly SBCs

Welcome to our latest biannual round-up of hacker-friendly single board computers that run Linux or Android. Included are a brief review of recent SBC market trends, a catalog with key features, specs, and pricing of each SBC, and a table comparing them all.

Relative to our June report, which was accompanied by a reader survey co-sponsored with Linux.com, our latest hacker-friendly single board computer (SBC) round-up has grown from 98 to 103 boards. Although there’s no survey here, we invite your comments in the discussion area at the bottom of this post.

There are three parts to this round-up: this post, which provides an overview of recent SBC market trends and discusses our latest crop of hacker-friendly SBCs in general terms; a catalog post with brief descriptions, specs, pricing, and links to related LinuxGizmos coverage and supplier product pages for all 103 SBCs; and a Google docs spreadsheet that tabulates key features and pricing for all 103 boards. Links to each are in the box below.

Read more at LinuxGizmos

How to Install Docker CE on Your Desktop

In the previous article, we learned some of the basic terminologies of the container world. That background information will come in handy when we run commands and use some of those terms in follow-up articles, including this one. This article will cover the installation of Docker on desktop Linux, macOS, and Windows, and it is intended for beginners who want to get started with Docker containers. The only prerequisite is that you are comfortable with command-line interface.

Why do I need Docker CE on my local machine?

As a new user, you many wonder why you need containers on your local systems. Aren’t they meant to run in cloud and servers as microservices? While containers have been part of the Linux world for a very long time, it was Docker that made them really consumable with its tools and technologies.

The greatest thing about Docker containers is that you can use your local machine for development and testing. The container images that you create on your local system can then run “anywhere.” There is no conflict between developers and operators about apps running fine on development systems but not in production.

The point is that in order to create containerized applications, you must be able to run and create containers on your local systems.

You can use any of the three platforms — desktop Linux, Windows, or macOS as the development platform for containers. Once Docker is successfully running on these systems, you will be using the same commands across platforms so it really doesn’t matter which OS you are running underneath.

That’s the beauty of Docker.

Let’s get started

There are two editions of Docker. Docker Enterprise Edition (EE) and Docker Community Edition (CE). We will be using the Docker Community Edition, which is a free of cost version of Docker intended for developers and enthusiasts who want to get started with Docker.

There are two channels of Docker CE: stable and edge. As the name implies, the stable version gives you well-tested quarterly updates, whereas the edge version offers new updates every month. After further testing, these edge features are added to the stable release. I recommend the stable version for new users.

Docker CE is supported on macOS, Windows 10, Ubuntu 14.04, 16.04, 17.04 and 17.10; Debian 7.7,8,9 and 10; Fedora 25, 26, 27; and centOS. While you can download Docker CE binaries and install on your Desktop Linux systems, I recommend adding repositories so you continue to receive patches and updates.

Install Docker CE on Desktop Linux

You don’t need a full blown desktop Linux to run Docker, you can install it on a bare minimal Linux server as well, that you can run in a VM. In this tutorial, I am running it on Fedora 27 and Ubuntu 17.04 running on my main systems.

Ubuntu Installation

First things first. Run a system update so your Ubuntu packages are fully updated:

$ sudo apt-get update

Now run system upgrade:

$ sudo apt-get dist-upgrade

Then install Docker PGP keys:

sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable"
Update the repository info again:
$ sudo apt-get update

Now install Docker CE:

$ sudo apt-get install docker-ce

Once it’s installed, Docker CE runs automatically on Ubuntu based systems. Let’s check if it’s running:

$ sudo systemctl status docker

You should get the following output:

docker.service - Docker Application Container Engine
  Loaded: loaded (/lib/systemd/system/docker.service; enabled; vendor preset: enabled)
  Active: active (running) since Thu 2017-12-28 15:06:35 EST; 19min ago
    Docs: https://docs.docker.com
Main PID: 30539 (dockerd)

Since Docker is installed on your system, you can now use Docker CLI (Command Line Interface) to run Docker commands. Living up to the tradition, let’s run the ‘Hello World’ command:

$ sudo docker run hello-world

YMChR_7xglpYBT91rtXnqQc6R1Hx9qMX_iO99vL8

Congrats! You have Docker running on your Ubuntu system.  

Installing Docker CE on Fedora

Things are a bit different on Fedora 27. On Fedora, you first need to install def-plugins-core packages that will allow you to manage your DNF packages from CLI.

$ sudo dnf -y install dnf-plugins-core

Now install the Docker repo on your system:

$ sudo dnf config-manager 
    --add-repo 
    https://download.docker.com/linux/fedora/docker-ce.repo
It’s time to install Docker CE:
$ sudo dnf install docker-ce

Unlike Ubuntu, Docker doesn’t start automatically on Fedora. So let’s start it:

$ sudo systemctl start docker

You will have to start Docker manually after each reboot, so let’s configure it to start automatically after reboots. $ systemctl enable docker Well, it’s time to run the Hello World command:

$ sudo docker run hello-world

Congrats, Docker is running on your Fedora 27 system.

Cutting your roots

You may have noticed that you have to use sudo to run Docker commands. That’s because of Docker daemon’s binding with the UNIX socket, instead of a TCP port and that socket is owned by the root user. So, you need sudo privileges to run the docker command. You can add system user to the docker group so it won’t require sudo:

$ sudo groupadd docker

In most cases, the docker user group is automatically created when you install Docker CE, so all you need to do is add your user to that group:

$ sudo usermod -aG docker $USER

To test if the group has been added successfully, run the groups command against the name of the user:

$ groups swapnil

(Here, Swapnil is the user.)

This is the output on my system:

$ swapnil : swapnil adm cdrom sudo dip plugdev lpadmin sambashare docker

You can see that the user also belongs to the docker group. Log out of your system, so that group changes take effect. Once you log back in, try the Hello World command without sudo:

$ docker run hello-world

You can check system wide info about the installed version of Docker and more by running this command:

$ docker info

Install Docker CE on macOS and Windows

You can easily install Docker CE (and EE) on macOS and Windows. Download the official Docker for Mac and install it the way you install applications on macOS, by simply dragging them into the Applications directory. Once the file is copied, open Docker from spotlight to start the installation process. Once installed, Docker will start automatically and you can see it in the top bar of macOS.

IEX23j65zYlF8mZ1c-T_vFw_i1B1T1hibw_AuhEA

macOS is UNIX, so you can simply open the terminal app and start using Docker commands natively. Test the hello world app:

$ docker run hello-world

Congrats, you have Docker running on your macOS.

Docker on Windows 10

You need the latest version of Windows 10 Pro or Server in order to run/install Docker on it. If you are not fully updated, Windows won’t install Docker. I got an error on my Windows 10 system and had to run system updates. My version was still behind, and I hit this bug. So, if you fail to install Docker on Windows, just know you are not alone. Keep an eye on that bug to find a solution.

Once you install Docker on Windows, you can either use bash shell via WSL or use PowerShell to run docker commands. Let’s test the “Hello World” command in PowerShell:

PS C:Usersswapnil> docker run hello-world

Congrats, you have Docker running on Windows.

In the next article, we will talk about pulling images from DockerHub and running containers on our systems. We will also talk about pushing our own containers to Docker Hub.

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

What You Need to Know About the Meltdown and Spectre CPU Flaws

The computer industry is racing to deal with several new vulnerabilities that affect the majority of processors in modern computers and mobile devices. The flaws enable new attacks that break the critical memory defenses in operating systems and bypass fundamental isolation layers, including those vital to virtualization and container technologies.

The most serious of the flaws, dubbed Meltdown or CVE-2017-5754, allows applications running in userspace to extract information from the kernel’s memory, which can contain sensitive data like passwords, encryption keys and other secrets. The good news is that Meltdown can be largely mitigated through software patches, unlike two other vulnerabilities known collectively as Spectre (CVE-2017-5753 and CVE-2017-5715) that will require CPU microcode updates and will likely haunt the industry for some time to come.

Both Meltdown and Spectre stem from a performance-related feature of modern CPUs called speculative execution.

Read more at The New Stack

You GNOME it: Windows and Apple Devs Get a Compelling Reason to Turn to Linux

The biggest open source story of 2017 was unquestionably Canonical’s decision to stop developing its Unity desktop and move Ubuntu to the GNOME Shell desktop.

What made the story that much more entertaining was how well Canonical pulled off the transition. Ubuntu 17.10 was quite simply one of the best releases of the year and certainly the best release Ubuntu has put out in a good long time. Of course since 17.10 was not an LTS release, the more conservative users – which may well be the majority in Ubuntu’s case – still haven’t made the transition.

Meanwhile, the repercussions of Canonical’s move to GNOME are still being felt in the open source world and I believe this will continue to be one of the biggest stories in 2018 for several reasons. The first is that so many have yet to actually make the move to GNOME-based Ubuntu. That will change with 18.04, which is an LTS release set to arrive later this year. Users upgrading between LTS releases will get their first taste of Ubuntu with GNOME come April.

Read more at The Register

Rethinking Your Open Source Use Policy

We don’t code the same way we used to.

I spoke with someone the other day that was fired from his job as a technical product manager after more than 20 years of experience. He is now job-searching but is finding it difficult. There is a new bar set for speed of technology development that capitalizes on agile software development practices and leveraging open source technologies—two things that were not taken seriously just ten years ago. According to 69 percent of senior executives, this digital transformation is forcing us now to rethink our cybersecurity strategies.

To accommodate these time constraints from management, developers have turned more and more to open source code as a great asset to build products and features, as opposed to writing code from scratch.  Open source technologies are available openly on the internet through sites like GitHub and SourceForge. Open source code now makes up 90 percent of the code composition of our modern applications.

Read more at InfoWorld

What Is Machine Learning?

Machine learning is one of the hottest trends in technology today. In fact, Gartner put machine learning at the peak of its most recent Hype Cycle for Emerging Technology. And the firm has predicted that by 2020, artificial intelligence (AI)technologies, including machine learning “will be virtually pervasive in almost every new software product and service.”

According to IDC, organizations will spend $12.5 billion on AI systems in 2017. That’s a huge 59.3 percent increase over 2016 levels, and the analysts say that spending will continue to grow at more than 50 percent per year through 2020. At that point, total AI revenue could top $46 million. David Schubmehl, research director, cognitive systems and content analytics at IDC, said, “Cognitive/AI systems are quickly becoming a key part of IT infrastructure and all enterprises need to understand and plan for the adoption and use of these technologies in their organizations.”

So what is machine learning? What is its relationship to artificial intelligence? And what should technology professionals know about its potential benefits and challenges?

Read more at Datamation

Linux Kernel 4.15 to Arrive in Two Weeks as Linus Torvalds Releases Seventh RC

Linux kernel 4.15 has been in development since the end of November 2017, and it’s now time the development cycle to come to an end, and today’s Release Candidate brings even more of the x86 page table isolation (PTI) patches to mitigate those nasty Meltdown and Spectre security vulnerabilities that put billions of devices at risk of attacks.

“Ok, we had an interesting week, and by now everybody knows why we were merging all those odd x86 page table isolation patches without following all of the normal release timing rules,” said Linus Torvalds in the mailing list announcement. “Anyway, due to this all, 4.15 will obviously be one of the releases with an rc8, even if things are starting to really calm down by now.”

Read more at Softpedia