Foto di Maruful Hari da Shutterstock
Nel mondo in continua evoluzione del DevOps, comunicare in modo efficiente e accedere rapidamente alle informazioni è fondamentale. Con team che spostano sempre più spesso operazioni e flussi di lavoro sulle applicazioni di chat, la necessità di strumenti che semplifichino queste attività è ormai evidente.
È qui che entra in gioco AWS Chatbot, uno strumento potente pensato per portare AWS direttamente nei suoi canali Slack.
AWS Chatbot è un agente interattivo che si integra con i canali Slack e con le chat room di Amazon Chime, consentendole di monitorare e interagire con le risorse AWS direttamente dalla piattaforma di chat.
Il vero punto di forza di AWS Chatbot è la capacità di ridurre il context switching tra applicazioni, migliorando così produttività e tempi di risposta.
In questa guida la accompagnerò passo dopo passo nell'integrazione di AWS Chatbot con Slack. L'obiettivo è configurare un sistema che la avvisi ogni volta che viene creato un nuovo bucket S3 nel suo account AWS, così da tenere sotto controllo le risorse e reagire ai cambiamenti in modo più efficiente.
Riepilogo dei passaggi
- Creare un topic Amazon Simple Notification Service (SNS)
- Configurare il client Slack
- Configurare il client AWS Chatbot
- Configurare una regola Amazon EventBridge
- Testare le notifiche
**Configurare il topic SNS**
Per utilizzare AWS Chatbot occorre avere già configurato dei topic Amazon SNS.
Apra la console di Amazon SNS e assegni un nome al topic.

Passaggio 1. Creare il topic SNS
Nella sezione Details selezioni Standard e scorra fino a Create Topic.

Passaggio 1.1. Assegnare un nome al topic SNS
Crei poi una sottoscrizione al topic. Nella scheda Subscriptions selezioni Create subscription. Come Protocol selezioni Email e inserisca un indirizzo email in grado di ricevere notifiche.
Controlli la casella di posta e scelga Confirm subscription nell'email inviata da AWS Notifications. Il mittente è in genere "[email protected]". Faccia clic sul link Confirm Subscription contenuto nell'email.

Email di conferma della sottoscrizione al topic SNS (ID account AWS oscurato)
Configurare il client Slack
Perché AWS Chatbot possa inviare notifiche o eseguire comandi, è necessario configurarlo con Slack.
Apra il workspace Slack e nel pannello di navigazione a sinistra scelga Automations. Se non vede Automations, scelga More e poi Automations. Cerchi AWS Chatbot nella directory delle App.

Passaggio 2. Aggiungere l'app AWS Chatbot a Slack
Configurare il client AWS Chatbot
Apra la console di AWS Chatbot. In Configure a chat client scelga Slack e poi Configure. Verrà reindirizzato alla pagina di autorizzazione di Slack per concedere ad AWS Chatbot l'accesso alle sue informazioni.

Passaggio 2.2 Configurare il client AWS Chatbot
Dal menu a tendina in alto a destra selezioni il workspace Slack che desidera utilizzare con AWS Chatbot. Per questa dimostrazione utilizzo il mio workspace Ciara-Cloud. Faccia clic sul pulsante Allow.

Passaggio 2.3 Concedere i permessi al plugin.
Configurare il canale Slack
Configuri AWS Chatbot con un canale Slack per poter ricevere le notifiche. Nel canale Slack digiti invite @aws e scelga Invite Them.

Passaggio 3. Invitare l'app AWS Chatbot nel canale Slack

Passaggio 3.1 Faccia clic sul pulsante Invite them per aggiungere l'app
Torni al client AWS Chatbot e scelga Configure new channel.

Passaggio 3.2 Configurare il client AWS Chatbot
In Configuration details inserisca un nome per la configurazione. Da Slack ottenga l'ID o l'URL del canale facendo clic con il tasto destro sul nome del canale nel pannello a sinistra e scegliendo Copy Link.

Passaggio 3.3 Dettagli di configurazione del client AWS Chatbot
Definisca poi i permessi degli utenti. AWS Chatbot richiede un ruolo IAM per eseguire le azioni. In Role Setting selezioni Channel role, che assegna gli stessi permessi a tutti i membri del canale.

Passaggio 3.4 Definire i permessi utente per il client AWS Chatbot
Scorra fino a Notifications: in SNS topics selezioni la regione AWS in cui ha creato il topic SNS e scelga il nome del topic. Faccia clic su Configure.

Passaggio 3.5 Selezionare il topic SNS per il client AWS Chatbot
Configurare la regola Amazon EventBridge
Useremo Amazon EventBridge per innescare la notifica, che verrà inviata sia al canale Slack sia all'indirizzo email registrato nel topic SNS. Apra la console di Amazon EventBridge, selezioni EventBridge Rule e faccia clic su Create rule.

Passaggio 4. Creare la regola EventBridge
Inserisca nome e descrizione della regola. Per Event bus selezioni default e per Rule type scelga Rule with an event pattern.

Passaggio 4.1 Definire i dettagli della regola EventBridge
In Event source scelga AWS events or EventBridge partner events.
Scorra fino a Creation method e scelga Use pattern form.
In Event pattern utilizzi le impostazioni seguenti:
Per Event source selezioni AWS services dal menu a tendina.
Per AWS service selezioni S3 dal menu a tendina.
Per Event type scelga Bucket-Level API Call via CloudTrail.
Scelga Specific events(s) e selezioni CreateBucket. Faccia clic su Next.

Passaggio 4.3 Definire l'event pattern
Per Target types selezioni AWS service e scelga SNS topic come target. In Topic scelga il topic SNS creato in precedenza. Faccia clic su Next e poi su Create rule.

Passaggio 4.4 Definire il target dell'evento
Abbiamo creato la regola EventBridge che si attiverà alla creazione di un bucket S3.

Regola EventBridge abilitata
Testare la regola EventBridge per l'invio delle notifiche
Apra la console S3 e crei un nuovo bucket. Verifichi quindi sul canale Slack e nella casella email l'arrivo della notifica.

Passaggio 5. Creare un bucket S3 per testare la notifica
Non appena il bucket S3 è stato creato, Slack mi ha avvisato nel canale specificato.

Notifica Slack (ID account AWS oscurato)
Ho ricevuto anche una notifica via email dell'evento.

Notifica email (ID account AWS oscurato)
In conclusione, abbiamo portato a termine con successo l'integrazione di AWS Chatbot con Slack, ottenendo uno strumento potente che ci consente di ricevere notifiche in tempo reale degli eventi AWS direttamente nei nostri canali di chat.
Questa integrazione non solo snellisce le operazioni, ma riduce anche i tempi di risposta a eventuali problemi, garantendo prestazioni e uptime ottimali per i nostri servizi.
In DoiT International sappiamo che ogni organizzazione ha esigenze e sfide uniche. Se ha bisogno di assistenza con i suoi account AWS o nella configurazione dei servizi, non esiti a contattarci.
Il nostro team di esperti è specializzato in Amazon Web Services, Google Cloud, Microsoft Azure e OpenAI ed è pronto ad aiutarla a orientarsi nella complessità dei servizi cloud per raggiungere i suoi obiettivi di business.
Il cloud non deve essere per forza complicato: con il partner giusto può sfruttarne tutto il potenziale per alimentare innovazione e crescita. Ci contatti oggi stesso e iniziamo a parlare di come possiamo supportare il suo percorso nel cloud.