Presenting the La Toolkit - AtlasOfLivingAustralia/documentation GitHub Wiki


marp: true theme: gaia _class: lead paginate: true html: true backgroundColor: #fff backgroundImage: url('https://raw.githubusercontent.com/living-atlases/artwork/master/hero-background.svg')

Presenting the Living Atlases Toolkit

<style> section { background-image: linear-gradient(rgb(120, 181, 120), rgb(113, 177, 113)); background-size: 50px 100%; background-repeat: no-repeat; background-color: #FFF; color: #4e565f; } a {color:#4ba2ce;text-decoration:none;} a:focus,a:hover{color:#2c79a1;text-decoration:underline;} </style>

bg left:35% 100%

Jun-2021

Vicente J. Ruiz Jurado LA Technical Coordinator also taking care of GBIF.es infra


Atlas of Living Australia

Free/Libre and Open-Source Software for the aggregation and delivery of biodiversity data

w:400


bg 60%


ALA Install

  • The official software to automatic deploy and maintain Living Atlases (LA) portals
  • In other words: this code installs automatically the ALA software
  • ala-install has 112,000 lines of code
  • this is ≈ 10,000 admin tasks to deploy a small LA portal
  • we avoid manual installation tasks
  • In summary: let the machines do the work

https://github.com/atlasoflivingaustralia/ala-install


Ansible

ala-install uses ansible to automatize their deployments.

Using a metaphor:

  • ansible is like a "kitchen robot",
  • and ala-install is like our "recipes book" that describes with code how to install and maintain each LA Portal services automatically.

Some advantages

  • You can deploy your LA portal with the same deployment code that ALA and other LA portals use
  • ... and this is independent of the size of your LA portal

But "recipes" needs "ingredients"

Each ansible "recipe" (in fact they are called ansible playbooks), needs your local "ingredients" (these are the ansible inventories).

There are some text files that describes your LA portal with info like:

  • domain, organization name, contact email,
  • the servers you want to use for each service, and how your services urls will look like,
  • passwords and security info

Ansible inventories

In other words, with that inventories you define how ala-install will install your LA portal (or upgrade it in the future).

So each LA portal needs their custom ansible inventories, and with so many configuration options is not an easy task.


We developed other tools

From the LA community we have developed previously other tools to help with these customizations like:

among other tools...


But this was not enough

  • The deployment is still difficult for newcomers
  • It requires some GNU/Linux deployment environment with all the tools (like ansible) well configured
  • There are many options
  • It requires some sysadmin knowledge
  • It's not so clear how to maintain or upgrade a LA portal

Introducing the

bg w:80% bg


This toolkit facilitates the installation, maintenance and monitor of Living Atlases portals


How?

With an user friendly interface we put all these parts together in an up-to-date environment to perform the common installation & maintenance tasks of a LA portal.


This LA toolkit is like a big assistant of the different phases and tasks of the deployment and maintenance of a LA portal

w:90%

For new and existing LA portals

Lets see it in action...


bg left

Basic Portal Creation Demo

  • Name, domain & other urls
  • Your servers & services definition

✔️ easy configuration ✔️ contextual help


Your browser does not support the video type.


Defining better your LA portal

bg right

  • Tips, advices and common errors
  • Connectivity (IP address, etc)
  • Shared web terminals

✔️ easy SSH configuration


Your browser does not support the video type.


Deployment

bg left

  • ansible & ala-install based
  • deploy stats, history, repeat previous deployment commands
  • ≈ 1 hour to deploy a basic LA portal

✔️ periodic upgrade checks & related recommendations


Your browser does not support the video type.


Your browser does not support the video type.


Use other LA portals as inspiration

bg right


Your browser does not support the video type.


Monitor your portal

bg left

  • Status of your portal (health and errors)
  • Access easily to different services and admin areas

✔️ Detect problems with one click


Your browser does not support the video type.


We use it in GBIF Spain too

bg right


Your browser does not support the video type.


Other Goals

  • Self documentation: it's full of contextual help and informative tip panels
  • Education and training: The toolkit tries not to occult the internals of a LA portal management, so people interested can tweak and do the same tasks manually from the command line
  • manage several portals with one tool (useful for testing and production environments)

Roadmap

Developed since Jan-2021, we want to continue:

  • finishing some functionality, like branding deploy and other post-deploy tasks (in progress)
  • LA Hubs support (in progress)
  • Service redundancy support (in progress)
  • SSL support via letsencrypt (in progress)
  • adding support to the new LA pipelines (GBIF/ALA data processing) and other common production tasks

Links

Demo: http://toolkit-demo.l-a.site/ Try it: https://github.com/living-atlases/la-toolkit/

LA Community: https://living-atlases.gbif.org/


Thanks indeed

[email protected] [email protected] https://github.com/vjrj

⚠️ **GitHub.com Fallback** ⚠️