Skip to content
@upmio

upmio

Run Databases & Middleware in Kubernetes

Run Databases & Middleware in Kubernetes

Welcome to UPMIO, a comprehensive open source platform designed to seamlessly manage databases and middleware within Kubernetes environments, covering the entire operational lifecycle from initial deployment to ongoing maintenance.

UPM (Unified Platform Management) provides cloud-native automated operations and management capabilities for MySQL, Redis, Kafka, Zookeeper, Elasticsearch, and other data services.

Core Projects

Universal workload Operator that provides Unit and UnitSet custom resources, supporting unified orchestration and management of various databases and middleware.

Advanced operations Operator that provides automated management for complex operational scenarios such as MySQL master-slave replication, Redis clusters, and ProxySQL synchronization.

Containerization and Kubernetes deployment system for database and middleware components. Provides production-ready Helm charts with unified package management, security-hardened containers, and comprehensive monitoring for MySQL, PostgreSQL, Redis, Kafka, Elasticsearch, and other data services.

Architecture

The main task of the operator is to bring the state of the cluster in line with what is declared by the user in the custom resources. This process of constant watching and adjustment is called the “Reconciliation cycle” - it is the operator’s workflow.

The basic workflow of working with the operator can be simplified as the following diagram:

upm-operator

  • Operator declares and owns resources of unit-operator & compose-operator.
  • Kubernetes validates of the resource according to the specification from CRD (see more in custom resources ).
  • Operator subscribed to change events (create, update, delete) for related resources.
  • When an event occurs, the operator reacts and updates the state of the objects in the cluster.
  • For some objects in the cluster the reconciliation cycle is performed at a given interval, even without the occurrence of change events.

Demo Video

Watch the complete deployment and verification process in action:

asciicast

For more examples and tutorials, visit our demo repository.

Contributing

We welcome contributions to all UPMIO projects! Each project has detailed contributing guidelines:

Ways to Contribute

  • Report Issues: Help us identify bugs and improvement opportunities
  • Submit Pull Requests: Fix issues, add features, or improve documentation
  • Enhance Documentation: Improve guides, examples, and API documentation
  • Share Knowledge: Write blog posts, create tutorials, or speak at conferences
  • Test & Feedback: Try new features and provide valuable feedback

Acknowledgments

We would like to express our sincere gratitude to Syntropy for their valuable support and collaboration in advancing enterprise data services and open source innovation. Their commitment to partnership and collaborative innovation has been instrumental in making cutting-edge open source technologies accessible and reliable for businesses worldwide.

License

UPMIO is licensed under the Apache License, Version 2.0.

Popular repositories Loading

  1. upm-packages upm-packages Public

    Production-ready, standardized Helm charts and images for databases and middleware.

    Shell 7 3

  2. unit-operator unit-operator Public

    A Kubernetes extension suite for enhanced pod management: deployment, operations, publishing, and availability.

    Go 6

  3. compose-operator compose-operator Public

    A Kubernetes operator for managing database replication topologies across MySQL, Redis, PostgreSQL, and ProxySQL instances.

    Go 5

  4. demo demo Public

    UPM (Unified Platform Management) Demo

    Shell 3 2

  5. kubespray-upm kubespray-upm Public

    Forked from kubernetes-sigs/kubespray

    Deploy a Production Ready Kubernetes Cluster And Deploy UPM

    Jinja 2

  6. .github .github Public

Repositories

Showing 6 of 6 repositories

People

This organization has no public members. You must be a member to see who’s a part of this organization.

Top languages

Loading…

Most used topics

Loading…