MegaEase Cloud 2023.03 Significant Update
In February 2023, we launched the MegaEase Cloud platform. On this platform, users only need to add their own hosts to easily deploy various open-source basic software services, such as MySQL, Redis, MongoDB, Kafka, ElasticSearch, Docker, Kubernetes, etc. At the same time, you can also conveniently operate and maintain these services, for example, monitoring, alerting, logging, configuration, scaling up, scaling down, cloning, etc. In addition, we also support application deployment with Docker Compose and Kubernetes. By using our supported Zipkin protocol SDK or Service Mesh, you can also immediately obtain APM (Application Performance Management) capabilities.
Today, we have made the following series of significant updates to the MegaEase Cloud:
- Infrastructure Software Updates
- Added Nginx and MinIO services
- Provided Kubernetes offline deployment
- Integrated with Cloudflare
- Zero Trust + MinIO CDN capability
- Easegress with CDN’s canary release and tracing capabilities
- Monitoring Metrics Collation and Optimization
- Benchmarking against DataDog and Prometheus
- Continuous integration capabilities
- Providing Docker image repository services
- Continuously application deployment through GitHub Actions
Currently, the entire platform is still in the public beta, so all these newly added features can be used for free!
1. Infrastructure Software Updates
We have the following updates
1.1 New Added Services
Nginx service. Nginx is a lightweight HTTP reverse proxy service, widely used for reverse proxying and load balancing of backend HTTP services. With the MegaEase Cloud platform, you can deploy Nginx services on multiple hosts simultaneously. We will collect monitoring metrics and access logs of successfully deployed Nginx services and provide features such as scaling up and scaling down.
In addition, the MegaEase Cloud platform can also centrally manage the configuration of Nginx services on multiple machines. We have distinguished between global configuration and local configuration, so you can flexibly configure Nginx services on different hosts.
MinIO service. MinIO is an open-source, high-performance distributed object storage service that is compatible with AWS S3. With the MegaEase Cloud platform, you can easily deploy a single-instance or distributed MinIO service. For a distributed MinIO, you need to prepare and mount the corresponding disks on your machines according to their specifications. Once deployed, features such as logging, monitoring, scaling, and web console are all available.
In addition, we have also connected CDN services for MinIO services, see the later section on Cloudflare integration.
Now, the entire MegaEase Cloud open-source basic software landscape is as follows (note: they are all host deployments, not containerized deployments):
1.2 Kubernetes Offline Deployment
In the previous version, we used the official Ansible script KubeSpray provided by Kubernetes for deployment. However, when deploying in the China region, network issues could cause deployment failures. To solve this problem, we developed the feature to deploy Kubernetes into an offline environment.
You only need to enable this option when deploying Kubernetes and select a host that has already installed Docker as the system image source for Kubernetes. This way, even if we cannot access the overseas internet, we can still successfully deploy a Kubernetes cluster.
2. Cloudflare Integration
We have the following integration:
2.1 MinIO Integration.
We utilize Cloudflare’s Zero Trust mechanism to create a Cloudflare Tunnel on the MinIO machine and then proxy the MinIO file objects to Cloudflare’s CDN via our domain <**tenant_name+instance_id.megaease.net**
>.
By using this open-source and free CDN solution to replace the expensive AWS S3 + Cloudfront solution, the small and medium-sized business can save a significant amount of cost on cloud service infrastructure.
2.2 Easegress Integration.
We make use of Cloudflare’s ability to add useful information to HTTP headers (such as geolocation), enabling Easegress to implement more realistic gray releases.
At the same time, we developed a WASM module for Easegress and a Rust-written WASM library. The former is used to parse User-Agent to obtain the user’s device type and operating system, while the latter references the uap-core and user-agent-parser projects and can be used for both Easegress and Cloudflare. The following are the related documents: Canary Release Cookbook, and User-Agent Parsing Rules. Feel free to try it out!
In addition, Easegress’s Tracing feature has been deeply integrated with Cloudflare. If you are using Cloudflare, you can obtain edge network information without changing any configuration, allowing you to locate issues more quickly. For more information, please refer to this link: Tracing: Usage with Cloudflare.
3. Monitoring Metrics Collation and Optimization
MegaEase Cloud’s monitoring system mainly collects metrics and logs through Telegraf, with both metrics and logs stored in ElasticSearch and alerts implemented via Prometheus.
To help you understand the meaning of various metrics and quickly address the issues, we have compiled a document that comprehensively compares the differences in metrics between MegaEase Cloud, Datadog, Telegraf, and Prometheus. You can access this document at any time by clicking on the “MegaEase Cloud Operation Manual”
After comparison and collation, we have drawn the following conclusions:
- Metric Coverage: The platforms are comparable. Datadog has better support for metrics of older middleware versions, while open-source tools like Prometheus and Telegraf have better support for metrics of newer middleware versions.
- Software Type: Open-source tools such as Prometheus and Telegraf support more middleware types than Datadog.
- Predefined Charts: Datadog has better support for older middleware versions, Prometheus has better support for newer middleware versions, and MegaEase Cloud tends to support the latest versions.
- Metric Query: Both Prometheus and Datadog support custom query statements, offering higher flexibility. MegaEase Cloud has predefined query methods based on metric types, which are more fixed.
4. Continuous Integration & Deployment
You can achieve CI/CD capabilities through the following steps:
Enable the image repository. We have added a new Docker Registry service. You can click on the “Settings” icon in the navigation bar and enable this service in the “Image Repository” section.
Push the image. You can push images to this repository through Github Actions or custom automation build programs (such as Jenkins).
name: MegaEase Cloud CI Workflow on: push: branches: - main jobs: megaease_cloud_ci_job: runs-on: ubuntu-latest steps: ... ... ... ... - name: Login to the registry uses: docker/login-action@v2 with: registry: ${{ vars.megaease_registry_url }} username: ${{ vars.megaease_registry_username }} password: ${{ secrets.megaease_registry_password }} - name: Build and push image uses: docker/build-push-action@v3 with: context: . file: ${{ vars.megaease_ci_dockerfile_path}} push: true tags: ${{ steps.meta.outputs.tags }}
Continuous Deployment. When creating an application that uses this image, select the option to enable CI/CD. The system will automatically detect whether the image has been pushed to the repository. If the image has been pushed, deployment will begin immediately; if not, it will wait for the image to be uploaded. Whenever a new image is uploaded, the system will automatically trigger deployment.
5. Future Plans
As you can see, MegaEase Cloud’s main goal is not cross-cloud, but to reduce the technical barriers and costs of cloud computing. We enable users to easily build their own infrastructure and supporting facilities using open-source software, thus significantly reducing costs.
Currently, we can help you reduce costs significantly in the following ways:
- Use standard and non-customized open-source basic software.
- Free CDN traffic access and content distribution.
- Provide application DevOps and service governance capabilities.
In addition to reducing costs, you also gain corresponding independent technical capabilities. With this PaaS layer, we can cooperate with existing cloud vendors’ underlying IDC suppliers, bypass the cloud vendors, and avoid intermediaries making profits from price differences.
Therefore, the next plan is to integrate IDC computing resources. In terms of price, we will focus on GPU resources. We plan to launch GPU computing resources on MegaEase Cloud and ensure that the price is at least 50% cheaper than existing public cloud providers.
Stay tuned for these exciting updates, and thank you for choosing MegaEase Cloud!
If you have any feedback, please feel free to contact us: [email protected]