CNCF Cloud-Native Open Source Ecosystem

πŸ’‘ CNCF Cloud-Native Open Source Ecosystem β€” Executive Summary

Technical architectural analysis, practical configuration manifests, and deployment instructions for CNCF Cloud-Native Open Source Ecosystem.

Collaboration tools
Issue Tracking
  1. Jira
    – Features: Jira is a project management and issue tracking tool from Atlassian that helps software development teams leverage agile and other project management methodologies.
    – Advantages: Powerful customization capabilities, numerous plugins and integrations available, detailed reports and dashboards.
    – Disadvantages: Requires complex setup and user training, high cost.
    – Provides installable software: Jira Software Data Center
    – License: Commercial software
    – Website: Jira
  2. Redmine
    – Features: Flexible project management and issue tracking tool, providing Gantt chart and calendar functions.
    – Advantages: Easy to customize, and functionality can be expanded through various plugins.
    – Cons: User interface is not modern, default settings can be somewhat limiting.
    – Provision of installable software: Provided as open source and installable.
    – License: GNU General Public License v2 (GPLv2)
    – Website: Redmine
  3. OpenProject
    – Features: A tool that includes various functions such as project management, time tracking, bug tracking, wiki, etc.
    – Advantages: Multi-project support and powerful community plugins.
    – Disadvantages: Initial setup can be complicated, some advanced features are only available on paid plans.
    – Provision of installable software: Provided as open source and installable.
    – License: GNU General Public License v3 (GPLv3)
    – Website: OpenProject
  4. Taiga
    – Features: A tool for agile project management, supporting Scrum and Kanban boards.
    – Advantages: User-friendly interface and backlog management features.
    – Disadvantages: May have limited functionality, scalability issues when used in large teams.
    – Provision of installable software: Provided as open source and installable.
    – License: GNU Affero General Public License (AGPLv3)
    – Website: Taiga
  5. Phabricator
    – Features: Comprehensive tools for code review, repository hosting, project management, and bug tracking.
    – Benefits: Powerful code review and collaboration features.
    – Disadvantages: Can be complex to set up and maintain, has limited community support due to few users.
    – Provision of installable software: Provided as open source and installable.
    – License: Apache License 2.0
    – Website: Phabricator
Markdown Wiki
  1. DokuWiki
    – Markdown support: By default, DokuWiki uses its own syntax, but you can support Markdown by installing the Markdown plugin.
    – Features: Easy to install and operates based on files, so no database is required. You can manage document access with ACL (Access Control List).
    – Advantages: Simple installation and maintenance, lightweight system and fast operation.
    – Disadvantage: Basic functions may be limited, and plugin installation is required for expandability.
    – Provision of installable software: Provided as open source and installable.
    – License: GNU General Public License v2 (GPLv2)
    – Website: DokuWiki
  2. BookStack
    – Markdown support: BookStack uses a WYSIWYG editor by default, but provides a Markdown editing mode.
    – Features: An open source documentation platform based on Laravel, allowing you to organize documents in the form of books, chapters, and pages. Provides an easy-to-use and intuitive interface.
    – Advantages: Intuitive interface, easy document management, and powerful search functions.
    – Disadvantage: Advanced features or customization may be limited.
    – Provision of installable software: Provided as open source and installable.
    – License: MIT License
    – Website: BookStack

Kubernetes Options
Container Runtime
  1. Containerd
    – Features: CNCF project, container runtime separated from Docker.
    – Advantages: Lightweight, excellent performance, and smooth integration with Kubernetes.
    – Disadvantage: Limited built-in tools.
    – License: Apache License 2.0
    – Website: Containerd
  2. CRI-O
    – Features: Open source container runtime optimized for Kubernetes.
    – Advantages: Tightly integrated with Kubernetes, lightweight and enhanced security.
    – Disadvantage: Initial setup can be somewhat complicated.
    – License: Apache License 2.0
    – Website: CRI-O
CNI (Container Network Interface)
  1. Istio-CNI
    – Features: Network plugin integrated with Istio service mesh.
    – Advantage: Network policy and security functions of Istio service mesh can be directly utilized.
    – Disadvantage: Dependent on Istio.
    – License: Apache License 2.0
    – Website: Istio-CNI
  2. Calico
    – Features: High-performance networking and network security solution.
    – Advantages: Network policy management is powerful and provides a high-performance data plane.
    – Disadvantage: Setup can be complicated.
    – License: Apache License 2.0
    – Website: Calico
  3. Cilium
    – Features: High-performance network plugin based on eBPF.
    – Advantages: Provides excellent performance and security features, Kubernetes native integration.
    – Disadvantage: Initial setup and maintenance are somewhat complicated.
    – License: Apache License 2.0
    – Website: Cilium
Ingress Controller
  1. Istio-ingressgateway
    – Features: Ingress controller provided as part of the Istio service mesh.
    – Advantage: All service mesh features of Istio can be utilized.
    – Disadvantage: Setup and management can be complicated.
    – License: Apache License 2.0
    – Website: Istio-ingressgateway
  2. Nginx-ingress
    – Features: Kubernetes Ingress Controller using NGINX.
    – Advantages: Excellent performance and relatively simple setup.
    – Disadvantage: Settings can be complicated when using advanced features.
    – License: Apache License 2.0
    – Website: Nginx-ingress
  3. Kong-ingress
    – Features: Ingress controller using Kong API gateway.
    – Advantage: API management function is powerful and highly scalable.
    – Disadvantage: Setup can be complicated and management difficult.
    – License: Apache License 2.0
    – Website: Kong-ingress
Service Mesh
  1. Istio (Envoy-Proxy)
    – Features: Service mesh using Envoy proxy.
    – Advantages: Provides various functions and powerful performance, excellent traffic management and security features.
    – Disadvantage: Complex setup and maintenance.
    – License: Apache License 2.0
    – Website: Istio
  2. Linkerd
    – Features: Lightweight service mesh solution.
    – Advantages: Simple installation and setup, excellent performance.
    – Disadvantage: Functionality may be limited.
    – License: Apache License 2.0
    – Website: Linkerd
Traffic visualization tool
  1. Kiali (based on prometheus metrics)
    – Features: Dashboard that visually displays the status of the service mesh.
    – Advantages: Seamless integration with Istio, easy to identify traffic flow and performance issues.
    – Disadvantage: Dependent on Istio.
    – License: Apache License 2.0
    – Website: Kiali
Traffic tracking tools
  1. Jaeger (based on prometheus metrics)
    – Features: Open source tool for distributed tracing.
    – Advantage: Useful for performance monitoring and troubleshooting.
    – Disadvantage: Can be complicated to set up and maintain.
    – License: Apache License 2.0
    – Website: Jaeger
Monitoring
Collector
  1. Prometheus
    – Features: Open source system monitoring and alerting toolkit.
    – Advantage: Powerful metrics collection and query capabilities.
    – Disadvantage: Scaling and high availability setup can be complicated.
    – License: Apache License 2.0
    – Website: Prometheus
Dashboard
  1. Grafana
    – Features: Dashboard tool for metrics visualization.
    – Advantages: Supports various data sources, allows creation of custom dashboards.
    – Disadvantage: Settings can be complicated when using advanced features.
    – License: AGPLv3
    – Website: Grafana
CI/CD
Repository
  1. Chart Repository (Helm/GitOps)
    – GitLab
    • Features: Platform that integrates source code management and CI/CD.
    • Advantages: Powerful CI/CD pipeline, various integration features.
    • Disadvantage: Advanced features can be expensive.
    • License: MIT License
    • Website: GitLab
    • NexusRepository
    • Features: Provides dependency management and artifact storage functions.
    • Advantages: Supports various formats, suitable for large-scale storage management.
    • Disadvantage: Can be complicated to set up and maintain.
    • License: Commercial Software
    • Website: NexusRepository
    • ChartMuseum
    • Features: Storage dedicated to Helm charts.
    • Advantages: Easy to install and use, lightweight system.
    • Disadvantage: Functionality may be limited.
    • License: Apache License 2.0
    • Website: ChartMuseum
Image Registry
  1. Harbor
    – Features: Open source container image registry.
    – Advantages: Security functions are strengthened and various image management functions are provided.
    – Disadvantage: Can be somewhat complicated to set up and maintain.
    – License: Apache License 2.0
    – Website: Harbor
  2. NexusRepository
    – Features: Provides dependency management and artifact storage functions.

Repository) Chart repository (Helm/GitOps): GitLab, NexusRepository, ChartMuseum
Repository) Image registry: Harbor, NexusRepository
Dev/Build) Source code configuration management tool: GitLab
Dev/Build) Source code static analysis tool: SonarQube
Dev/Build) Dependency management tool: NexusRepository
deploy) Application build/deployment management: jenkins, go-cd, argo-workflow
deploy) Infrastructure deployment management (Helm/GitOps): argo-cd

Dev/Build Dependency Management Tool
  1. Nexus Repository
    – Features: Open source artifact repository manager.
    – Advantages: Supports various package formats (Maven, npm, Docker, etc.), suitable for large-scale repository management.
    – Disadvantage: Can be complicated to set up and maintain.
    – License: Commercial software
    – Website: Nexus Repository
Application build/deployment management
  • Jenkins
  • Features: Open source automation server, capable of building build and deployment pipelines.
  • Advantage: Rich plugin ecosystem allows expansion of various functions.
  • Disadvantage: Can be complicated to set up and difficult to maintain.
  • License: MIT License
  • Website: Jenkins
  • GoCD
  • Features: Open source build tool for CI/CD.
  • Advantages: Visually configurable pipeline, powerful tracking capabilities.
  • Disadvantages: Setup can be complicated and the learning curve can be steep.
  • License: Apache License 2.0
  • Website: GoCD
  • Argo Workflow
  • Features: Kubernetes native workflow engine.
  • Advantages: Ideal for defining and executing complex workflows.
  • Disadvantage: Setup can be complicated.
  • License: Apache License 2.0
  • Website: Argo Workflow
Infrastructure deployment management (Helm/GitOps)
  • Argo CD
  • Features: Kubernetes native CD tool with GitOps approach.
  • Advantages: Declarative application management and deployment, strong integration with Git.
  • Disadvantage: Can be complicated to set up and manage.
  • License: Apache License 2.0
  • Website: Argo CD
Logging
Repository
  1. OpenSearch (ELK stack alternative)
    – Features: Open source fork of Elasticsearch and Kibana.
    – Advantage: Provides integrated search, analysis, and visualization tools.
    – Disadvantage: Can be complicated to set up and maintain.
    – License: Apache License 2.0
    – Website: OpenSearch
Collector
  1. Fluentd
    – Features: Open source tool for collecting and transmitting log data.
    – Advantage: Supports various input and output plugins.
    – Disadvantage: Setup can be complicated.
    – License: Apache License 2.0
    – Website: Fluentd
  2. Airflow
    – Features: Platform for defining and managing data pipelines.
    – Advantage: Suitable for defining complex data workflows.
    – Disadvantage: Can be complicated to set up and maintain.
    – License: Apache License 2.0
    – Website: Airflow
Dashboard and query tools
  1. OpenSearch Dashboard
    – Features: OpenSearch’s data visualization tool.
    – Advantage: Provides powerful visualization and dashboard functions.
    – Disadvantage: Setup can be complicated.
    – License: Apache License 2.0
    – Website: OpenSearch Dashboard
Check/Backup
k8s cluster resources, PV backup
  1. Velero
    – Features: Open source tool for backup and recovery of Kubernetes clusters.
    – Advantage: Perform easy backup and recovery operations.
    – Disadvantage: Setup can be complicated.
    – License: Apache License 2.0
    – Website: Velero
Other
Cloud Native API Gateway
  • Kong
  • Features: Extensible open source API management tool.
  • Advantages: Various plugins and flexible expandability.
  • Disadvantage: Can be complicated to set up and maintain.
  • License: Apache License 2.0
  • Website: Kong
  • Istio
  • Features: Service mesh using Envoy proxy.
  • Advantage: Provides traffic management and security features.
  • Disadvantage: Setup can be complicated.
  • License: Apache License 2.0
  • Website: Istio
  • Tyk
  • Features: Open source API gateway.
  • Advantages: Provides various authentication and analysis functions.
  • Disadvantage: Setup can be complicated.
  • License: MPL 2.0
  • Website: Tyk
Cloud Native Runtime Security Tools
  1. Falco
    – Features: Real-time security monitoring and threat detection tools.
    – Advantages: Integration with Kubernetes is seamless and real-time security monitoring is possible.
    – Disadvantage: Setup can be complicated.
    – License: Apache License 2.0
    – Website: Falco
Batch Management Tool
  1. K8s-cronjob
    – Features: Kubernetes native cron task scheduler.
    – Advantage: Easy time-based task scheduling.
    – Disadvantage: Limited support for complex workflows.
    – License: Apache License 2.0
    – Website: K8s-cronjob
  2. Argo Workflow
    – Features: Kubernetes native workflow engine.
    – Advantage: Define and execute complex workflows.
    – Disadvantage: Setup can be complicated.
    – License: Apache License 2.0
    – Website: Argo Workflow
  3. Tekton
    – Features: Kubernetes native CI/CD pipeline tool.
    – Advantage: Define and execute pipeline as code.
    – Disadvantage: Setup can be complicated.
    – License: Apache License 2.0
    – Website: Tekton
  4. Airflow
    – Features: Data pipeline definition and management platform.
    – Advantage: Defining complex data workflows.
    – Disadvantage: Complex setup and maintenance.
    – License: Apache License 2.0
    – Website: Airflow
  5. kubeflow
Secret Management Tool
  1. infisical
Authentication token management tool
  1. keycloak
TLS Management Tool
  1. cert-manager
Message queue
  1. rabbitmq
  2. kafka
  3. activemq
Volume Virtualization (Ceph)
  1. rook-ceph

Comments

Leave a Reply

Your email address will not be published. Required fields are marked *