Introduction to Vitess on Kubernetes for MySQL – Part I of III

栏目: IT技术 · 发布时间: 6年前

内容简介:Here’s high-level Vitess architecture visually explained.

In this blog post series, we will discuss an overview of Vitess technology. Vitess is a database clustering solution for horizontal scaling of data sets currently suitable to 250Gb – 300Gb in sizes*. It’s a proven technology used by several web-scale companies including YouTube. PlanetScale is the company behind developing and supporting this open-sourced project. 

Introduction to Vitess 

Here’s high-level Vitess architecture visually explained. 

Introduction to Vitess on Kubernetes for MySQL – Part I of III

Ref: Sugu Sougoumarane presents an overview of Vitess at Highload in Moscow.

Basic Vitess Components

There are two main components of Vitess. One of them is vtgate which works as a query router where vttablet is a proxy to MySQL to serve the data. 

  • vtgate : A query router responsible for figuring which query to point vttablets. They are simply stateless application servers. It hosts a schema called vschema to keep repository for vttablet(s) metadata. 
  • vttablet : Is responsible for acting as proxy to MySQL instance. Each vttablet has one associated MySQL instance which also can serve different purposes such as taking write traffic, connection pooling, backups, etc. 

Monitoring Component

  • vtctld : Web-based monitoring service that allows seeing an overview of servers and their states

Check out Vitess Concepts for further reading.

Vitess in CNCF (Cloud Native Computing Foundation) 

Cloud native technologies help modern organizations build topologies that are scalable and robust. While these environments vary from the public, private, and hybrid cloud they have one common goal to build resilient yet manageable and observable systems. Most commonly they are built around containers, microservices along with immutable infrastructures. 

CNCF categorizes these technologies in three stages. You may see the rest of the projects at CNCF Cloud Native Interactive Landscape.

Project Services and Maturity Levels

Introduction to Vitess on Kubernetes for MySQL – Part I of III

Image Credit: https://www.cncf.io/projects/

As of this writing, Vitess is the only MySQL-related project that has reached the Graduated level of CNCF. It’s the eighth project following Kubernetes, Prometheus, Envoy, CoreDNS, Containerd, Fluentd, and Jaeger. Vitess is currently reaching its 4.0 GA release. This is an important development, because Kubernetes and Native Cloud grows rapidly, and the MySQL ecosystem needed such an open-source project to be a part of this expansion.

Vitess and Kubernetes Overview 

Vitess scales MySQL via distributed sharding. Since it’s nearly impossible to run stateful databases without orchestration in Kubernetes, Vitess solves this problem by consolidating MySQL’s replication features. By sharding across multiple nodes (containers), Vitess distributes data across and allows applications to operate among them. This method protects the single point of failure of traditional unsharded database topologies where a single bad query can hose down the entire database. 

Part two of this series, setting up and deploying Vitess on Kubernetes (Minikube) for MySQL, will be coming up shortly, so please be on the lookout.

* PlanetScale’s CTO Sugu Sougoumarane quotes this from field experience.

References

Credits

  • Daniel Guzman Burgos – Technical Lead (MySQL)
  • Mykola Marzhan – Director of Server Engineering (Percona)
  • Sergey Kuzmichev – Support Engineer

以上所述就是小编给大家介绍的《Introduction to Vitess on Kubernetes for MySQL – Part I of III》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

参数化建筑设计

参数化建筑设计

高云河、白云生 / 华中科技大学出版社 / 2016-8-1 / 69.80

《参数化建筑设计》以案例的形式讲解参数化建筑设计的具体方法,其中包含犀牛(Rhino)和Grasshopper的应用。本书不单单是一本计算机软件教材,书中教会读者的是参数化建筑设计的思路,希望通过完成一个个案例使读者融会贯通,在今后的设计工作中能够熟练使用,辅助自身完成建筑设计。全书共有10个案例,循序渐进,由浅入深,几乎涵盖了参数化建筑设计所要使用的所有功能和方法。一起来看看 《参数化建筑设计》 这本书的介绍吧!

在线进制转换器
在线进制转换器

各进制数互转换器

Markdown 在线编辑器
Markdown 在线编辑器

Markdown 在线编辑器

UNIX 时间戳转换
UNIX 时间戳转换

UNIX 时间戳转换