Ansible Trekker Client (Share Nothing)

Manages components used specifically by a tenants. This deployment layer is being activated by management portal whenever user create a new client


Share Nothing Image

Core Components

CouchDB (exclusive)

  • Storage for registering user of gps device
  • Deploy specific container for a client with container name cdb_[client name].

Traccar (exclusive)

  • Provides real-time GPS data for tenants.
  • Configures tenant-specific integrations and endpoints.
  • Enables geolocation tracking and reporting.

Snapmanhour (exclusive, deprecated)

  • Generate ManhourSnapshot records from HeadcountSnapshot every 6 hours
  • Written in Java

MariaDB

  • Raw storage of gps position record
  • Database schema per client.
  • Schema naming convention traccar_[client name].

Keycloak

  • Manages authentication and authorization for tenants.
  • Single Sign-On (SSO) client isolation.
  • Ensures secure access with token-based authentication.

Automation Script

  • Automates tenant setup.
  • Creates tenant-specific configurations automatically.
  • Streamlines deployment for new clients.
  • Reduces manual intervention with predefined templates.

Conclusion

The Trekker Not Shared Infrastructure manage tenant-specific services. Its combination of Ansible playbooks, roles, and automation scripts ensures consistent deployments and efficient operations across multiple clients.