Skip to main content

License management

ยท 3 min read
Creator of Spider

Spider now requires a license to run!

Storyโ€‹

Part of moving to a company is about protecting its assets and Floocus then needs to manage licenses of On Premises deployments.

The design is quite simple, with 3 new microservices:

  • Users mgt service - To connect to a UI to see licenses and usage.
  • Organisations mgt service - To register customers, distributors etc.
  • Licenses mgt service - To register licenses and usage.
    • Since Spider is billed on usage.

I then had 2 options:

  • Reuse existing framework and build those services while reusing current patterns: API gateway, monitoring, etc. and deploying under Kubernetes or Swarm using Saas or IaaS...
  • Or go something new and use FaaS and DBaaS as the anticipated usage of those services would be so low that provisioning CPU h24 for them would be useless and a ecological & economical nonsense.

I asked my wife. And she wisely told me: 'learn something new'.
So did I.

And I anticipated it to be long, that it would take me weeks to build the first service in the quality I wanted:

  • High Availability,
  • Logs gathering,
  • Security,
  • Scaling,
  • many deployments (dev, test, prod)...

And how surprised I got!

The ecosystem is really mature !

In less than 2 weeks, thanks to serverless framework, I had my 3 services up and running, tested locally and on 'test' environment, and finally deployed to 'production' with complete IaC, security and all that is required nowadays!

And the best? It will basically cost me nothing =) As my load will be less than AWS free tier!

Integration in Spiderโ€‹

  1. When registering a license, a private key is generated and associated to the license for Spider to connect to Floocus system. Much like Whisperer's own security.
    1. You must keep it safe as it is not kept in Floocus system!
  2. Spider setup.yml now asks for both license key and associated private key.
  3. Spider regularly connects to Floocus system to check the license and fetch its details.
  4. When the license is not valid or absent, Spider runs, but all parsing features are stopped, and Whisperers stop and cannot start.

Also, for better information, the UI shows the license details in the help details panel.

How to know if license is valid?โ€‹

When the license is invalid, Spider still runs, you may open the UI, and access your data as read only.

When trying to access the parsing APIs (upload or streaming), you will get an error mentioning the license issue, and the UI will show you:

  1. A sticky informative tooltip
  2. 'No license' information in the help details

The license might be expired, not correct... or not paid :-/
Fixing the issue will reactivate Spider in no time, no worry ! ;-)

UIโ€‹

License informationโ€‹

License information

When invalid licenseโ€‹

License not found

Sticky popinโ€‹

Sticky PopIn