Today’s software world is growing ever more cloudy and every more fragmented. We have myriad programming languages, numerous application platforms and services-oriented architectures (yes, but not the dusty ones of yesteryear!)
What is needed to make this work, according to Kelsey Hightower and Sarah Novotny of Google, is a composable infrastructure. “All of this infrastructure tooling and dev tool chain tools broaden what developers are able to do,” said Hightower, program chair of this week’s OSCON conference who joined Google two years ago after stints at Puppet Labs and CoreOS. This tooling, he said, is often built on the shoulders of open-source projects for the purpose of getting better economies out of the effort. “The idea behind working in the cloud is to offer services to consumers, or let customers bring their own services to run in our cloud.”
Composable infrastructure is right for this because, for instance, not every data store is right for every customer, he pointed out. And open-source is the source of many of these parts, he said. “Google uses open source to build critical parts of our infrastructure. Google Cloud is an extension of that. Developers will build their own tools using Python or Go… programming languages we invented that are the foundation for cloud computing around containers.”
Open protocols, Novotny explained, “allow you to jump in and out when the time is right. We support the portability of workflows, though not through lock-in.” Novotny is the former chairwoman of OSCON and now lead open-source communities for Google Cloud, Apache Beam, Spinnaker and Kubernetes. “We’re building open ecosystems around our cloud platform to give value to our customers,” she added.
The cloud presents the same challenges that people faced when servers became open, Hightower said. “You can’t find talent to deal with proprietary software,” he said. With open source, he said “you’re running the same software in the cloud that you’d run on a machine under your desk.”
Their favorite open-source projects
Kubernetes, the container management solution. “It was built for cloud providers and has seen rapid growth with big companies behind it,” such as Red Hat (OpenShift), CloudFoundry and CoreOS.
Go programming language. “It’s libraries and ecosystem are at the heart of Docker and large-scale open-source databases.”
Chrome V8 JavaScript engine. “It’s the foundation for building your own servers and programs.”
BigQuery and Spanner, the data warehouse and relational database service, respectively. “If you’ve built an application on SQL, you can come into Google Cloud and use them. They are standard use cases.”
Novotny said she would add a fifth: TensorFlow. “As machine learning becomes more of a tool for consumers, it can be a differentiator for companies.”