Deploy finale dell’applicazione su OpenShift

banner

Adesso che abbiamo configurato le due risorse mancanti, il broker AMQP e MongoDB, è possibile procedere con il deploy finale dell’applicazione Quarkus su OpenShift. Per fare ciò, è necessario eseguire il comando mvn clean package -Dquarkus.openshift.deploy=true o quarkus build -Dquarkus.openshift.deploy=true che effettuerà la build dell’applicazione Quarkus e il deploy su OpenShift.

A meno di “catastrofi”, l’operazione di build e deploy dovrebbe andare a buon fine e l’applicazione Quarkus dovrebbe essere pronta per ricevere il traffico. Potete fare un veloce controllo utilizzando il comando oc get pods che adesso dovrebbe restituire l’output mostrato a seguire.

Da notare che l’applicazione è pronta per ricevere il traffico, come indicato dallo stato Running del pod dell’applicazione eventbus-logging-filter-jaxrs-7f8b5cd8b7-4z4ms.

Output del comando oc get pods per verificare che l’applicazione sia pronta

    NAME                                             READY   STATUS    RESTARTS   AGE
    activemq-artemis-f9584d88c-pgf68                 1/1     Running   0          144m
    eventbus-logging-filter-jaxrs-7f8b5cd8b7-4z4ms   1/1     Running   0          7m26s
    mongo-dc76d7f8d-p7dv7                            1/1     Running   0          58m

Adesso, è quindi possibile chiamare l’API del servizio di echo e aspettarci una risposta positiva.

Output del comando cURL per chiamare l’API del servizio di echo

    # Chiamata all'API del servizio di echo tramite cURL
    curl -v -H "Content-Type: application/json" \
        -d '{"message": "Test di tracking richiesta JAX-RS su Dev Sandbox OpenShift"}' \
        http://eventbus-logging-filter-jaxrs-antonio-musarra-dev.apps.sandbox-m2.ll9k.p1.openshiftapps.com/api/rest/echo

    = Output del comando cURL

    * Trying 18.220.238.101:80...
    * Connected to eventbus-logging-filter-jaxrs-antonio-musarra-dev.apps.sandbox-m2.ll9k.p1.openshiftapps.com (18.220.238.101) port 80
    > POST /api/rest/echo HTTP/1.1
    > Host: eventbus-logging-filter-jaxrs-antonio-musarra-dev.apps.sandbox-m2.ll9k.p1.openshiftapps.com
    > User-Agent: curl/8.4.0
    > Accept: */*
    > Content-Type: application/json
    > Content-Length: 73
    >
    < HTTP/1.1 200 OK
    < content-type: application/json;charset=UTF-8
    < content-length: 73
    < set-cookie: user_tracking_id=9319d019-fc84-4077-b9c4-005c896e8fcb;Version=1;Comment="Cookie di tracciamento dell'utente";Path=/;Max-Age=2592000
    < x-correlation-id: cefda5e4-346f-46f6-8494-a621e634b1bc
    < set-cookie: 7eb8860bc15109552408e7020c87e397=a31130c8ef37120c72b3115bf77a7334; path=/; HttpOnly
    < Date: Sun, 14 Apr 2024 18:32:09 GMT
    < Connection: keep-alive
    <
    * Connection #0 to host eventbus-logging-filter-jaxrs-antonio-musarra-dev.apps.sandbox-m2.ll9k.p1.openshiftapps.com left intact
    {"message": "Test di tracking richiesta JAX-RS su Dev Sandbox OpenShift"}

Ottimo! Il servizio di echo ha risposto correttamente alla richiesta HTTP e come aspettato. Questo significa che l’applicazione Quarkus è pronta per ricevere il traffico; tramite il comando oc logs <nome-del-pod> possiamo verificare che il sistema di tracciamento delle richieste e delle risposte HTTP funzioni correttamente.

Dall’estratto dai log del pod dell’applicazione a seguire, possiamo vedere che il sistema di tracciamento delle richieste verso il broker AMQP e il database NoSQL MongoDB sta funzionando correttamete.

Estratto dai log del pod dell’applicazione Quarkus per verificare il funzionamento del sistema di tracciamento

    2024-04-14 18:32:09,370 DEBUG [it.don.eve.con.eve.han.Dispatcher] (vert.x-eventloop-thread-0) Received response from target virtual address: nosql-trace with result: Documents inserted successfully with Id BsonObjectId{value=661c21291140b32ae7b43ea9}
    2024-04-14 18:32:09,371 DEBUG [it.don.eve.con.eve.han.Dispatcher] (vert.x-eventloop-thread-0) Received response from target virtual address: nosql-trace with result: Documents inserted successfully with Id BsonObjectId{value=661c21291140b32ae7b43eaa}
    2024-04-14 18:32:09,377 DEBUG [it.don.eve.con.eve.han.Dispatcher] (vert.x-eventloop-thread-0) Received response from target virtual address: queue-trace with result: Message sent to AMQP queue successfully!
    2024-04-14 18:32:09,378 DEBUG [it.don.eve.con.eve.han.Dispatcher] (vert.x-eventloop-thread-0) Received response from target virtual address: queue-trace with result: Message sent to AMQP queue successfully!

Lascio a voi il divertimento di fare le verifiche su MongoDB e AMQP per vedere se i dati sono stati effettivamente inseriti e se i messaggi sono correttamente in coda.

Lavoro finito; l’applicazione che abbiamo sviluppato è cloud native!

Post correlati

Partners

Community, aziende e persone che supportano attivamente il blog

Logo di Codemotion
Logo di GrUSP
Logo di Python Milano
Logo di Schrodinger Hat
Logo di Python Biella Group
Logo di Fuzzy Brains
Logo di Django Girls
Logo di Improove
Logo del libro open source
Logo di NgRome
Logo de La Locanda del Tech
Logo di Tomorrow Devs
Logo di UseCaseConf

Non perderti gli ultimi aggiornamenti, iscriviti a TheRedCode Digest!

La tecnologia corre, e tu devi correre più veloce per rimanere sempre sul pezzo! 🚀

Riceverai una volta al mese (o anche meno) con codici sconto per partecipare agli eventi del settore, quiz per vincere dei gadget e i recap degli articoli più interessanti pubblicati sul blog

Ci sto!

#TheRedComics

Edizione di Agosto

A cura di Sophie Aiello, copy di Chiara Romano

Fumetto di agosto di Sophie Aiello

Vuoi diventare #tech content writer? 🖊️

Se vuoi raccontare la tua sul mondo #tech con dei post a tema o vuoi condividere la tua esperienza con la community, sei nel posto giusto! 😉

Manda una mail a collaborazioni[at]theredcode.it con la tua proposta e diventa la prossima penna del blog!

Ma sì, facciamolo!