From 286e6626b84b8337d721330e84ff41bf684c1c37 Mon Sep 17 00:00:00 2001 From: Simeon Simeonov Date: Thu, 14 Dec 2017 09:42:47 +0100 Subject: mqprod presentation --- reveal.js/images/mqprod/flow01.png | Bin 0 -> 40772 bytes reveal.js/mqprod.html | 260 +++++++++++++++++++++++++++++++++++++ 2 files changed, 260 insertions(+) create mode 100644 reveal.js/images/mqprod/flow01.png create mode 100644 reveal.js/mqprod.html (limited to 'reveal.js') diff --git a/reveal.js/images/mqprod/flow01.png b/reveal.js/images/mqprod/flow01.png new file mode 100644 index 0000000..28547fb Binary files /dev/null and b/reveal.js/images/mqprod/flow01.png differ diff --git a/reveal.js/mqprod.html b/reveal.js/mqprod.html new file mode 100644 index 0000000..212e636 --- /dev/null +++ b/reveal.js/mqprod.html @@ -0,0 +1,260 @@ + + + + + Meldingskø ved INT + + + + + + + + + + + +
+ + +
+
+

Meldingskø ved INT

+

Utviklerforum 14.12.2017

+
+

+ Kai Vaade (KIA), Simeon Simeonov (INT) +

+
+ +
+

Agenda

+
+
    +
  • Administrasjon
  • +
  • Roller og entiteter
  • +
  • Flyt
  • +
  • Rettigheter
  • +
  • Q & A
  • +
+
+ +
+

Generelt

+
+

Vi bruker RabbitMQ med AMQP 0.9.1 til å utveksle / behandle meldinger (JSON, SCIM)

+

Bruk av message-broker startet i 2015. I produksjon siden høsten 2017.

+

Driftes av KIA.

+
+ +
+

Administrasjon

+

Cerebrum har brukt MQ et års tid på egen server satt opp av Seksjon for integrasjon og elektroniske identiteter (USITINT).

+

Nå er driften av tjenesten flyttet fra prosjektet og inn i linja, Gruppe for drift av katalog-, integrasjon- og autentiseringstjenester (KIA).

+
+ +
+

Administrasjon (forts...)

+

Vi har softlaunchet meldingskø-tjenesten i høst. Tjenesten er ikke "offisielt" lansert, kjører kun våre egne ting (Cerebrum/SAP) foreløpig.

+

Antakelig gjør vi tjenesten kjent samtidig som et annet delprosjekt (API Manager) i UiO INTARK lanseres i nær fremtid.

+
+ +
+

Administrasjon (forts...)

+

Foreløpig så har vi ikke så veldig mye erfaring med tjenesten i linja.

+

Vi vet heller ikke så mye om behovet; dvs hvor mange som kommer til å bruke tjenesten.

+
+ +
+

Administrasjon (forts...)

+

Hvordan kontakte oss:

+

https://www.usit.uio.no/om/organisasjon/iti/td/kia/dokumentasjon/meldingsko/

+

Tilgang til grensesnittet: https://mq.uio.no

+
+ +
+

Roller og entiteter

+
    +

    Roller:

    +
  • Administrator / Manager
  • +
  • Consumer / Konsument
  • +
  • Publisher / Publisist :)
  • +

    Entiteter:

    +
  • vhost
  • +
  • Exchange (direct, fanout, topic, headers)
  • +
  • Kø (transient, durable)
  • +
  • Binding
  • +
+
+ +
+

Flyt

+
+ +
+ +
+

Rettigheter

+

RabbitMQ implementerer 2 rettighetsnivåer: per vhost og per entitet

+

RabbitMQ (AMQP) definerer 3 typer operasjoner:

+
    +
  • configure - opprette / slette entiteter eller endre deres oppførsel

  • +
  • write - skrive melding til en entitet

  • +
  • read - lese melding fra entitet

  • +
+
+ +
+

Rettigheter og brukere

+

RabbitMQ bruker regular expressions til å definere rettigheter

+
    +
  • rabbitmqctl add_user cerebrum <passord>

  • +
  • rabbitmqctl add_user uio_ad_microservice <passord>

  • +
  • rabbitmqctl set_permissions -p /no/uio/integration cerebrum "^$" "^ex_.*" "^$"

  • +
  • rabbitmqctl set_permissions -p /no/uio/integration uio_ad_microservice "^q_ad_ms_.*" "^q_ad_ms_.*" "^(ex_messages|q_ad_ms_.*)$"

  • +
+
+ +
+

Routing keys i topic exchange

+

Routing key settes av sender som en del av meldingen og blir inspisert av brokeren dersom meldingen sendes til en topic exchange.

+

Strukturen til en topic / message routing key er:

+

<kilde>.<type>.<objekt>.<hendelse>

+

F.eks.:

+

cerebrum.event.person.delete

+
+ +
+

Protokoller og porter

+

"AMQP 0.9.1 prioritert siden det er protokollen som mapper best mot RabbitMQs funksjonalitet. Vi har også noe erfaring med bruk av denne."

+

RabbitMQ lytter for AMQP0.9.1 på SSL port 5671.

+
+

Andre protokoller og tjenester for RabbitMQ:

+
    +
  • RabbitMQ Management (webgrensesnitt) - 15671 (SSL)
  • +
+
+ +
+

Dokumentasjon og lenker

+

+ RabbitMQ: +

+ +
+ +
+

Dokumentasjon og lenker

+

+ UiO: +

+ +

+ Bøker: +

+
    +
  • +

    + + RabbitMQ in action - Alvaro Videla / Jason J.W. Williams - 2012 - Manning + +

  • +
  • +

    + + Mastering RabbitMQ - Ayanoglu / Aytas / Nahum - 2015 - PACKT Publishing + +

  • +
+ +
+

Q & A

+
+ +
+
+ + + + + + + -- cgit v1.3