Almost exactly five years ago, on May 24, 2017, IBM and Google announced the launch of Istio. The open technology should enable developers to seamlessly connect, secure and manage networks of different microservices – regardless of platform, source or provider. What has happened so far?
Even before the 5th anniversary, Google announced that it would donate Istio to the Cloud Native Computing Foundation (CNCF).
In the first days of the Istio project, only employees from Google and IBM participated in it, from the roadmap discussion to the scrums. In the summer of 2017, it was not yet an open community, but the project has opened up enormously since then. Employees of Google, Solo.io and IBM are now represented on the Istio Technical Oversight Committees and employees of Google, Solo.io , IBM, RedHat, Intel, DaoCloud, Huawei and Tetrate have held leadership positions in the community.
Recently, Google announced that it was donating Istio to the Cloud Native Computing Foundation (CNCF), which caused a lot of excitement in the community and solidified Istio’s position as a de facto service mesh solution. The open participation of the community and the acceptance of Istio have made it the most widespread service mesh in the world.
The explosive proliferation of service mesh technologies in companies proves that the transition to microservices is accelerating. Just as Kubernetes has become the industry standard for container orchestration, Istio has become the Kubernetes of the service mesh. More than 1,000 contributors from over 900 companies trust Istio to connect their business-critical workloads.
The Istio project is characterized by excellent cooperation, where ideas are often challenged and implementations are constantly revised to create better and simpler solutions for our users.
A diverse community is the engine for better innovation. With each release, the community listens to the feedback of the users and makes changes to improve the usability of Istio. One of our main goals: simple scenarios should be easy, and complicated scenarios should be possible. The community uses the following insider tips to make Istio successful:
Focus on Day 2 operations
Users of Istio always start with day 0 and Day 1, but Day 2 is even more important for them so that their applications can continue to run within Istio and upgrade them to newer Istio control and data layers without interrupting their applications.
The community has made numerous efforts to simplify upgrades. This starts with the collection and analysis of the upgrade surveys for each version, continues with the improvement of upgrade strategies to enable a Canary upgrade of the Istio control level in addition to the in-place upgrade, and extends to extended support windows for upgrades and the exchange of security assessments and best practices.
Istio is supposed to be boring
One of the main goals of the Istio project is to make Istio transparent for applications, especially for applications running on Kubernetes, so that users do not have to think about running Istio. Over the past year, the community has made efforts to change pod networking so that pods running with Sidecar behave in the same way as pods running without sidecar in Kubernetes. The community is currently reviewing other network behaviors, such as Egress traffic, to ensure that it is consistent with Kubernetes. In addition, many core functions have been transferred to the beta and stable phase so that users can use Istio in production and use these core functions.
Continuous innovation
From WasmPlugin resources, telemetry and ProxyConfig resources to discovery selectors or gateway enhancements by integrating gateways as sidecars and implementing Kubernetes Gateway APIs – based on user requests and industry standards, the Istio community has developed these innovations. They enable users to run Istio declaratively in production without having to restart their applications. Admins can also update their gateway implementations with a simple reboot.
If you would like to participate in the improvement of Istio, you can do so by participating in the user community meeting or a working group meeting via Slack. After completing a pull request, anyone interested can submit an application for membership to become an Istio contributor and developer!
* Lin Sun is Director of Open Source at Solo.io and member of the Istio Steering Committee.