Octeth Training Center
Octeth Training Center
Architecture

Architecture

Getting started

What’s NewWhat’s NewRoadmapRoadmapOcteth Training ProgramOcteth Training Program

Installation & Setup

RequirementsRequirementsArchitectureArchitectureServer SetupServer SetupOempro InstallationOempro InstallationCommunity Edition InstallCommunity Edition InstallSSL CertificatesSSL CertificatesVersion UpgradeVersion UpgradeTroubleshootingTroubleshooting

Video Tutorials

Video TutorialsVideo Tutorials

Administration

Quick WalkthroughQuick WalkthroughSecuritySecuritySub Admin AccountsSub Admin AccountsSettingsSettingsDelivery ServersDelivery ServersGlobal SegmentsGlobal SegmentsGlobal Custom FieldsGlobal Custom FieldsBounce ProcessingBounce ProcessingSpam ComplaintsSpam ComplaintsSuppression ListSuppression ListPlug-InsPlug-InsDelivery ReportDelivery ReportUser ManagementUser ManagementMaintenanceMaintenance

Audience Management

IntroductionIntroductionSubscriber ListsSubscriber ListsCustom FieldsCustom FieldsSegmentsSegmentsSubscribersSubscribersWebhooksWebhooksWebsite Event TrackingWebsite Event Tracking

Email Marketing

IntroductionIntroductionAuto RespondersAuto RespondersEmail CampaignsEmail CampaignsSender Domain Man.Sender Domain Man.Journeys (Automation)Journeys (Automation)Bounce ProcessingBounce ProcessingEmail PersonalizationEmail PersonalizationFBL ProcessingFBL ProcessingEmail Builder IntegrationsEmail Builder IntegrationsEmail DeliverabilityEmail DeliverabilitySender Domain ManagementSender Domain Management

Plug-Ins & Add-Ons

AI Plug-InAI Plug-InRSS Plug-InRSS Plug-InBounce Catcher Add-OnBounce Catcher Add-OnLink Proxy Add-OnLink Proxy Add-On

Developers

IntroductionIntroductionSingle Sign OnSingle Sign OnAPIAPIPlug-In DevelopmentPlug-In DevelopmentDatabaseDatabase

Advanced

Reverse ProxyReverse ProxyCookbookCookbook

Help

TroubleshootingTroubleshootingContact UsContact Us

Architecture

Infrastructure Overview

In this article, we will provide an overview of the infrastructure used in Octeth. This includes details about each container, its purpose, and port allocations. Our infrastructure is designed to be robust, scalable, and easy to manage using Docker Compose.

Containers and Their Roles

image

Our Docker infrastructure consists of several containers, each serving a specific role. Below is a detailed description of each container:

  1. HAProxy (oempro_haproxy)
    • IP Address: 192.168.99.100
    • Ports: 80, 81, 443, 25, 587, 5601, 11111, 8025, 15672
    • Description: HAProxy is used for load balancing and proxying requests to the appropriate services within the infrastructure.
  2. Application (oempro_app)
    • IP Address: 192.168.99.101
    • Description: This container runs the main application, handling user requests and core business logic.
  3. MailHog (oempro_mailhog)
    • IP Address: 192.168.99.102
    • Description: MailHog is used for email testing by capturing emails sent by the application.
  4. RabbitMQ (oempro_rmq)
    • IP Address: 192.168.99.103
    • Description: RabbitMQ is a message broker used for managing and routing messages between different services.
  5. System (oempro_system)
    • IP Address: 192.168.99.105
    • Description: This container manages system-level tasks and dependencies.
  6. Elasticsearch (oempro_elasticsearch)
    • IP Address: 192.168.99.106
    • Description: Elasticsearch is used for indexing and searching application data.
  7. Redis (oempro_redis)
    • IP Address: 192.168.99.107
    • Description: Redis is used for caching and fast data retrieval.
  8. MySQL (oempro_mysql)
    • IP Address: 192.168.99.108
    • Ports: 3306
    • Description: MySQL is the primary relational database for the application.
  9. Email Gateway Inbound SMTP (oempro_emailgateway_inbound_smtp)
    • IP Address: 192.168.99.109
    • Description: This container handles inbound SMTP traffic for the email gateway.
  10. Kibana (oempro_kibana)
    • IP Address: 192.168.99.110
    • Description: Kibana is used for visualizing data stored in Elasticsearch.
  11. Cron (oempro_cron)
    • IP Address: 192.168.99.111
    • Description: This container runs scheduled tasks and cron jobs.
  12. Supervisor (oempro_supervisor)
    • IP Address: 192.168.99.112
    • Description: Supervisor is used for managing processes within the infrastructure.
  13. Vector (oempro_vector)
    • IP Address: 192.168.99.113
    • Ports: 8888
    • Description: Vector is used for collecting and processing logs.
  14. ClickHouse (oempro_clickhouse)
    • IP Address: 192.168.99.114
    • Ports: 8123
    • Description: ClickHouse is used for analytics and fast data processing.

Network Configuration

All containers are connected to a single network named public_net, which ensures that they can communicate with each other seamlessly. The public_net network is configured with the following settings:

  • Subnet: 192.168.99.0/24
  • Driver: bridge

Port Allocation

The ports used by each container are carefully allocated to avoid conflicts and ensure smooth operation. Below is a summary of the port allocations:

  • HAProxy (oempro_haproxy):
    • Public Ports: 80, 81, 443, 25, 587, 5601, 11111, 8025, 15672
  • MySQL (oempro_mysql):
    • Port: 3306
  • ClickHouse (oempro_clickhouse):
    • Port: 8123
  • Vector (oempro_vector):
    • Port: 8888

Dependencies

Some containers depend on others to function correctly. For example, oempro_system depends on rabbitmq, redis, elasticsearch, mysql, and clickhouse. Similarly, oempro_app depends on multiple services, including rabbitmq, redis, elasticsearch, mysql, clickhouse, and oempro_system.

Conclusion

This infrastructure setup ensures high availability, scalability, and efficient resource management. Each container plays a vital role in the overall system, and careful port allocation and network configuration help maintain seamless operation.

If you have any questions or need further assistance, please feel free to contact our support team.

On this page

  • Architecture
  • Infrastructure Overview
  • Containers and Their Roles
  • Network Configuration
  • Port Allocation
  • Dependencies
  • Conclusion
💠
image

Homepage Customer Area Community Portal Contact Us

Footer Social Icons

©Copyright Octeth, Inc. All rights reserved.