This year, for the first time, we had the pleasure to attend LinuxCon 2017 China, the main Linux Conference organized by the The Linux Foundation that took place from June 19th to June 20th 2017 at the China National Convention Center in Beijing, China.
The first day brought together about 2.000 attendees sharing their knowledge, collaborating on new technologies, and learning about the latest Open Source and GNU/Linux technologies, including cloud, containers, microservices, and networking.
The Day 1 General Session has started with a thanks to the Chinese companies that have supported the Linux project: there has been an increase in contribute from China, that amounts to +400%.
Linux is the most successful software in the history. Below you can find some incredible numbers:
- 000 source files in the Linux kernel
- 21+ M lines of source code
- 900+ developers from all over the globe
- $ 10.3 B Value of Typical Linux operating system
- 99,4% of worlds high performance
- 64,8% smartphone, tablet, handheld, smart TV, wearable computer
- 90% of the world’s stock exchanges.
Linux has been one of the first and best example of Open Source software: new players has emulated and taken a cue from proprietary software (like Linux) to create then new technologies, like Docker, Hadoop, Tensorflow, etc…
There are millions of Opensource projects all over the world (just think that only on GitHub there are 64 million of OS repo), and the Linux Foundation enable these projects and products ecosystem.
During the keynote there was then a prize-giving to Professor Lu Shouqun, that received lifetime achievement award by Linux Foundation for promoting Opensource in China since 1991.
Then was the turn of Quanyi Ma, Senior Architect, Beijing Huawei Digital Technologies, whoexplained that we are in the midst of container revolution, and the way of continuous integration and continuous deployments (CI/CD) is being rebuild with container. ContainerOps is not just CI - CD pipeline tools, it's a whole new concept with DevOps workflow engine and components.
During the keynote we had the opportunity to attend some speeches also by Jonathan Bryce, the executive director of Openstack foundation, and by Gebi Liang, Partner Director of Cloud and Enterprise Engineering China at Microsoft Asia-Pacific Research and Development Group. Gebi told the Microsoft open source history, summarized the Microsoft open source progress, announced Microsoft partnership with Linux community and other open source communities oriented to achieve more in the Open source scenario. She shared also Microsoft's open source strategy and made some examples that showed how MS wants to innovate on the basis of the Open source technologies.
During Day 1 we had also the honour to meet Linus Torvalds, the father of Linux and Git. Here below you can find a picture taken with him :-)
The creator of Linux, Linus Torvalds, started also the Day 2 Keynote. He talked about his work of maintaining the Linux kernel: he’s done this from 25 years, from 1991, and he likes his job. He works only on the Linux project, because he doesn’t have time to dedicate to other Open Source projects.
He mentioned and thanked then the Linux community, and he explained that it’s a long way to pass from contributor to top maintainer, role that he plays now; it’s a matter of dedication to your job. Now in Linux there is a strong team made up of 10 top maintainers, great achievement considering we are talking about an open source project.
“If I had the opportunity to re-start today – he said - I would work on the hardware”.
In the morning of day 2 our DevOps Expert, Lorenzo Fontana, took part to a Panel titled “Containers and Networking: A Symbiotic Relationship”, during which he explained how, as cloud adoption grows, containers are increasingly being used to simplify deployment of distributed applications. Lorenzo and Rajat Chopra, a Red Hat Engineer, moderated by Sheng Liang, the co-founder and CEO of Rancher Labs, discussed on how the mix of container deployment models are ranging from VM to bare metal, and on the need to manage overlay container networks independently but synchronously with the underlay, creating a new thicket of networking complexity to be navigated.
Then in the afternoon Lorenzo made a speech titled “Practical Container Network Interface”, in which he went in depth with the PCNI project, a network interface created by multiple companies and projects including CoreOS, Red Hat OpenShift, Apache Mesos, Cloud Foundry, Kubernetes, Kurma and rkt. First proposed by CoreOS to define a common interface between the network plugins and container execution, CNI is designed to be a minimal specification concerned only with the network connectivity of containers and and to remove allocated resources when the container is deleted. What CNI offers is a nearly trivial interface against which it has to develop new plugins.
CNI has three main components:
- CNI Specification:that defines an API between runtimes and network plugins for container network setup. No more, no less.
- Plugins:that provide network setup for a variety of use-cases and serve as reference examples of plugins conforming to the CNI specification.
- Library:that provides a Go implementation of the CNI specification that runtimes can use to more easily consume CNI.
CNI specification and libraries exist to write plugins to configure network interfaces in Linux containers. The plugins support the addition and removal of container network interfaces to and from networks. Defined by a JSON schema, its templated code makes it straight-forward to create a CNI plugin for an existing container networking project or a good framework for creating a new container networking project from scratch.
This project redefined both the way we connect containers and think about networks when using the container runtimes that implemented the specification, however the specification hides a lot of interesting implementation details addressed by the project itself or by an external plugin. During the talk Lorenzo wanted to tackle this topic in a practical way by showing what's under the CNI and by showcasing cool hacks and usage scenarios.
He mentioned also the NetCAN Project, a newborn project sponsored by Kiratech, for the purpose of help in analyzing networking interfaces and links created trough local or distributed bridges. The main goals of NetCAN project are:
- To provide a standalone web interface that shows the current network configuration inside the host or the cluster (as indipendent as possible compared to the cluster manager or container engine)
- To provide a set of tools to analyse network traffic happening inside containers by applying filters and capturing packets
- To provide a way to export netcan datas to external tools like Elastic
What a great experience to attend this great event in Beijing! See you soon at the next Conference!