news

POET: Endlessly Generating Increasingly Complex and Diverse Learning Environments and their Solutions

We are interested in open-endedness at Uber AI Labs because it offers the potential for generating a diverse and ever-expanding curriculum for machine learning entirely on its own. Having vast amounts of data often fuels success in machine learning, and we are thus working to create algorithms that generate their own training data in limitless quantities. In the normal practice of machine learning, the researcher identifies a particular problem (for example, a classification problem like ImageNet or a video game like Montezuma’s Revenge) and then focuses on finding or designing an algorithm to achieve top performance.
Read more

Combining Federation V2 and Istio Multicluster

In a previous post, we saw how to leverage Istio Multicluster to deploy an application (bookinfo) on multiple Red Hat OpenShift clusters and apply mesh policies on all of the deployed services. We also saw that the deployment process was relatively complex. In this post we are going to see how Federation V2 can help simplify the process of deploying an application to multiple clusters. Federation V2, as the name suggests, is the evolution of the Kubernetes Federation initiative, after the project was rebooted around the beginning of 2018.
Read more

Write operators for databases in Kubernetes with KubeDB

Running production quality databases in Kubernetes can be quite a hassle. But KubeDB promises to solve all your problems. Let’s have a quick look at this framework. You can count on KubeDB to solve your problems when running production quality databases in Kubernetes. KubeDB is a framework for writing operators for any database that support certain requirements. Namely: Create a database declaratively using CRD. Take one-off backups or period backups to various cloud stores, eg,S3, GCS, etc.
Read more

Kubernetes Failure Stories

I started to compile a list of public failure/horror stories related to Kubernetes. It should make it easier for people tasked with operations to find outage reports to learn from. Since we started with Kubernetes at Zalando in 2016, we collected many internal postmortems. Docker bugs (daemon unresponsive, process stuck in pipe wait, ..) were a major pain point in the beginning, but Docker itself has become more mature and did not bite us recently.
Read more

Lasers vs. Microwaves: The Billion-Dollar Bet on the Future of Magnetic Storage

For most of the past 50 years, the areal density of hard disks—a measure of how many bits of data that engineers can squeeze into a given area—increased by an average of nearly 40 percent each year. Lately, though, that rate has slowed to around 10 percent. Everyone who works on magnetic storage is well aware of this problem, but only in the past year or so have executives from Seagate Technology and Western Digital, the leading manufacturers of hard drives, very publicly split on how to solve it.
Read more

Deployment strategies for the Jaeger Agent

If you’ve been following the evolution of the Kubernetes templates for Jaeger, you might have noticed an important change recently: the Jaeger Agent is not being deployed as a DaemonSet anymore. Instead, instructions are now being provided on how to deploy it as a “Sidecar”. The Agent component was developed to act as a “buffer” between the tracer and the collector. This buffer should sit very close to the tracer, usually on localhost.
Read more

A Crash Course For Running Istio

At Namely we’ve been running with Istio for a year now. Yes, that’s pretty much when it first came out. We had a major performance regression with a Kubernetes cluster, we wanted distributed tracing, and used Istio to bootstrap Jaeger to investigate. We immediately saw the potential of a service mesh as it relates to our infrastructure and decided to make an investment in the tool. It hasn’t always been the smoothest ride, but we have learned a ton about how it works and how to operate it.
Read more

Understanding How Envoy Sidecar Intercept and Route Traffic in Istio Service Mesh

This article uses Istio’s official bookinfo example to explain how Envoy performs routing forwarding after the traffic entering the Pod and forwarded to Envoy sidecar by iptables, detailing the inbound and outbound processing. For a detailed analysis of traffic interception, see Understanding Envoy Sidecar Proxy Injection and Traffic Interception in Istio Service Mesh. Source: medium.com

How to Ship an App Rewrite Without Risking Your Entire Business

This article is the fifth in a series covering how Uber’s mobile engineering team developed the newest version of our driver app, codenamed Carbon, a core component of our ridesharing business. Among other new features, the app lets our population of over three million driver-partners find fares, get directions, and track their earnings. We began designing the new app in conjunction with feedback from our driver-partners in 2017, and began rolling it out for production in September 2018.
Read more

PostgreSQL across clouds and on-premises

PostgreSQL is a very popular open source relational database. It’s been in active development for over 30 years and has achieved a very high level of reliability and performance, as well as a very robust feature set. If your applications make use of PostgreSQL, you’ll now be able to use Crossplane to deploy both your application and its PostgreSQL database to many of the major cloud providers as well on on-premises.
Read more