Home Blog Page 388

Cloud Foundry for Developers: Part 1

You’ve heard about Cloud Foundry, and you know it’s growing fast and might be something you’re interested in. But what exactly is Cloud Foundry? One possible short answer is Yet Another Cloudy Thingy, because there sure are a lot of cloud projects. A better short answer is Platform as a Service (Paas), for building, managing, and deploying cloud-native applications.

In this series, you will learn about Cloud Foundry and how to get started using it to develop applications. In the first three blogs, we’ll cover basic concepts, terminology, a technical overview and architecture, and in the last two blogs we’ll learn how to write and push an app to a Cloud Foundry instance. The information in this series is based on the Cloud Foundry for Developers (LFD232) training course from Cloud Foundry and The Linux Foundation. You can download a sample chapter from the course here.

What is PaaS?

PaaS describes a complete infrastructure for developing, managing, and deploying applications. It bundles servers, networks, storage, operating systems, middleware, databases, and development tools into a scalable, centrally-managed hardware and software stack. PaaS can be specialized, for example for mobile application development, or generalized, supporting a wide range of platforms and development environments. PaaS may be on premises, or pay-as-you-go from a public service provider, or a combination of both. Some popular commercial PaaS hosts are Amazon Web Services, Google App Engine, Red Hat’s OpenShift Online, Microsoft Azure, and Salesforce.

The goal is to streamline application development and management by relieving developers from the hassle of building and maintaining their own development and deployment environments. A PaaS host looks the same to the user, whether it is local or remote: all you need is computer and a network connection to access everything you need.

Cloud Foundry

There is a ton of information on cloudfoundry.org, but you have to dig to find out what Cloud Foundry is. It is a platform for building PaaS projects; it is not a standalone product but must run on top of an IaaS (Infrastructure as a Service) platform. Cloud Foundry was created at VMware in 2009 and was designed to run on VMware vSphere.

Cloud Foundry morphed and grew until it was spun off as an independent non-profit Linux Foundation project. It uses Open Container Initiative and lot of other cloud technologies including Docker, Kubernetes, and BOSH. Cloud Foundry also runs on OpenStack and aims to be platform-neutral, running on any IaaS. If you want to try building your own Cloud Foundry instance, follow these instructions on OpenStack.org. If you want to jump right into application development and not hassle with building your own PaaS, CloudFoundry.org maintains a list of certified providers, where you can get started for free or low-cost.

The Foundation certifies these projects, which must meet certain standards. The Cloud Foundry license is the Apache License 2.0, a permissive license that allows releasing modified code under different licenses, and grants permissive patent rights. The Foundation also offers developer certifications, and administers the Cloud Foundry Certified Developer Exam.

The Cloud Foundry Foundation owns the trademarks and manages the project, which is not a small task, as contributors and supporters include some industry heavyweights. The Foundation’s job is to be neutral and ensure that no single entity can control the code. There are a host of “intellectual property” (I loathe the term, but we’re stuck with it) issues to navigate and harmonize. If this sort of thing interests you, visit Cloud Foundry Foundation to learn all about governance, their board of directors, membership, and a host of other tasks and issues that the Foundation manages.

“Every Business is a Software Business”

This is a popular quotation now, and while I don’t agree completely with it, it is true that most businesses must be tech-savvy about custom app development. Cornelia Davis of Pivotal says: “You are either building a software business, or losing to someone who is.” Some classic examples are Netflix vs. Blockbuster, Uber and Lyft vs. cab and limo companies, Airbnb vs. the hotel/motel industry. 

Not everyone is entirely happy with this invasion of software into everything. Every restaurant, store, and product now has its own app, and more and more devices want to yap at us all the time. Remember Ray Bradbury’s short story “The Murderer”? Albert Brock is fed up with the incessant din of modern society, people calling him on his wrist radio, and even his house nags him, so he embarks on a crusade of destruction to shut everything up. Quite prescient for 1953.

But, this is the state of our world now, and this is where the growth and opportunities are for software developers. And, to keep up with these modern times, over the next four parts of this series, you’ll learn how to get started with using Cloud Foundry as your development platform. Join me as we get started learning and building.

Read Part 2 of this series.

Download the Cloud Foundry for Developers sample chapter now.

The Critical Missing Piece of DevOps…And How to Find It

We’ve probably all heard the DevOps principle “you build it, you run it.” In theory, DevOps makes each team responsible for both the development and operation of its code, giving DevOps teams complete responsibility — and complete visibility and transparency — for the entire value stream, including not just coding, testing, securing, and complying, but even the business results of the code when it is running in production. But IT operations includes much more than the limited “ops” functions we typically fold into a DevOps team. I’m talking about things like ticket management, incident handling, user management and authorization, backups and recovery, network management, security operations, infrastructure procurement and cost optimization, compliance reporting, and much more. In today’s IT organization, where do these responsibilities fall? And how can we improve these operations and perhaps even apply DevOps and Agile principles to them?

This post, the first in a series on how to best think about operations in the cloud, will explore that set of operations functions that is not typically assigned to DevOps teams. We will also talk about how organizations not yet using DevOps can still benefit from streamlined operations when they migrate their applications as-is to the cloud.

Read more at AWS

Auditing Docker Containers in a DevOps Environment

The handy auditd package can help track down weaknesses in your system before, during, or after an attack.

Thanks to the unremitting, ever-present threat of a multitude of attacks to which a Linux system can be subjected, it’s critical to capture important changes and events made by users and processes on your running systems.

Highlighting such changes could potentially point toward something as innocuous as a simple misconfiguration but, equally, might proactively help stop an impending attack dead in its tracks. Additionally, having trustworthy, detailed logging data is exceptionally useful for post-event forensic analysis, especially when you are trying to discern how an attacker originally managed to compromise your system and get a foothold.

One such package I have been using recently on a large AWS server estate is called auditd . Its man page states: “auditd is the userspace component to the Linux Auditing System.”

Read more at ADMIN magazine

ONAP, CNCF Come Together on Containers

ONAP and Kubernetes, two of the fastest growing and in demand open source projects, are coming together at Open Networking Summit this week. To ensure ONAP runs on Kubernetes in any environment, ONAP is now a part of the new Cross-Cloud CI project that integrates, tests and deploys the most popular cloud native projects.

The opening ONS keynote from Arpit Joshipura, GM Networking & Orchestration at Linux Foundation, will demonstrate and test ONAP 1.1.1 and 1.95 Kubernetes deployed across all public, private clouds and bare metal. For end users, the integration of open networking and cloud native technologies provides seamless portability of applications.

Read more at LIght Reading

Git v2.17.0 Released

Version 2.17.0 of the Git source-code management system is out. It includes a long list of relatively minor tweaks. “Since Git 1.7.9, ‘git merge’ defaulted to –no-ff (i.e. even when the side branch being merged is a descendant of the current commit, create a merge commit instead of fast-forwarding) when merging a tag object. This was appropriate default for integrators who pull signed tags from their downstream contributors, but caused an unnecessary merges when used by downstream contributors…

The latest feature release Git v2.17.0 is now available at the usual places.  It is comprised of 516 non-merge commits since v2.16.0, contributed by 71 people, 20 of which are new faces.

Read more at LWN.net

DNS Resolvers Performance Compared: CloudFlare x Google x Quad9 x OpenDNS

A couple of months ago I did a performance comparison between some of the top free DNS Resolvers available. It was just after Quad9 had launched and I was trying to decide which one to use and recommend to families and friends. Google, OpenDNS, Quad9, .. some many options… I love options …

And things just got better. CloudFlare, one of the companies that know the most about Internet performance recently launched their own free DNS resolver. It supports DNS over TLS and DNS over HTTPS by default, which makes it even more interesting.

Read more at Medium

3 DevOps Culture Mistakes and How to Fix Them

It’s a universally accepted truth: The more changes you make to code, the larger the chance it’s going to break.

Everyone knows bugs happen, and organizations that are equipped to quickly and expertly squash them are the ones that come out ahead. Increasingly, those teams that prove to be masters of their codebase and fierce problem solvers operate in organizations that have come to embrace good DevOps practices.

Is your organization’s DevOps culture experiencing breakdowns or lack of synergy? It might be time to check for these common bugs – and deploy some proven fixes:

Read more at Enterprisers Project

Linux Kernel 4.16: Networking Patches and More

Linus Torvalds released version 4.16 of the Linux Kernel on Sunday, April 1st, nine weeks after the previous version. After the rather eventful 4.15 cycle, which included the loss of the Linux Kernel Mailing List for several days and the fallout from the Meltdown and Spectre bugs, 4.16 has been mercifully smooth.

Not all smooth, though. There was a big bump in the amount of patches in RC7 that nearly derailed Sunday’s release. However, looking into it, Torvalds noted that the abnormal number of submissions may have been due to the fact that during the RC5 and 6 cycles there had been almost no patches regarding networking. This meant there was a backlog of 2.5 weeks worth of networking stuff, and that makes rc7 look artificially bigger. That’s my story, and I’m sticking to it. Torvalds said.

Getting back to Meltdown and Spectre, the dust kicked up by both bugs still hasn’t completely settled. Quite a few patches were included to try and ameliorate some of their effects. Both 64-bit ARM and IBM z s390 architectures get patches that mitigate possible exploits. Meanwhile, access to /dev/mem is now more restrictive and the code that keeps x86 architectures safe has been cleaned up and optimized.

In more productive news, the VirtualBox Guest driver was merged into the mainline kernel. This means that the VirtualBox VM should work better on Linux from now on. Vaguely related, Jailhouse, a partitioning Hypervisor developed by Siemens, is now also supported in the mainline kernel. Jailhouse is different to other hypervisors in that it can be loaded and configured by a normal Linux system.

Other stuff to look forward to in Linux kernel 4.16

  • The AMD GPU DC display code has been improved so as to incorporate better multi-display support. This means that the highest display rate will be used when synchronizing several monitors. The new code also mitigates underflow/corruption problems which manifest as flickering ghosts when elements are moved on the desktop.
  • Operations for in-kernel filesystems will probably become faster thanks to a patch that optimizes the update of inode data and metadata. In some cases, the speed registered in read bandwidth increased to more than 200 percent.
  • There have been updates to the open source Risc V ISA, which was merged in 4.15. However, there are no device drivers yet.
  • Some new devices that are now supported in the mainline kernel include the Orange Pi R1, NVIDIA’s Tegra TX2, and the second generation “One by Wacom” tablets.

As usual, you can find out more by checking out the writeups at Kernel Newbies and Phoronix.

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

Perspectives on Investing in Open Source Startups

Interest in evaluating and investing in open source startups is on the rise again after a dip in the past couple of years, according to speakers at a panel discussion on investment startups in the open source world.

The discussion took place at The Linux Foundation’s recent Open Source Leadership Summit (OSLS).  In terms of investment activity in the open source startup space, “there is good appetite for the acquirers as well as the public markets, depending on the value proposition that these companies … have to offer,’’ said Rashmi Gopinath, a partner with Microsoft Ventures, the corporate venturing arm for Microsoft. She noted that Microsoft acquired Deis in 2017, an open source startup specializing in the Kubernetes container orchestration platform.

Read more at The Linux Foundation

How Brigade Shares Data Between Containers

Brigade provides a way to script multiple containers to perform a task. With Brigade, you can build things like CI systems, ETL pipelines, and distributed batch processors. One of the critical capabilities of Brigade is its ability to share data between containers. This article describes the two main ways of sharing data.

Brigade’s Purpose

In a previous article in this series, I explained why we created Brigade. I described Brigade as an event-based scripting environment for Kubernetes. A second way of looking at Brigade is as a serverless platform for scripting containers.

Both descriptions share a central feature: Brigade is about linking multiple containers together to create powerful processing pipelines.

Read more at TechnoSophos