Pitäisikö AWS VPN -tunnelin lokit ottaa käyttöön käytössä olevalla tunnelilla?
Tunnelin aktiviteettilokien käyttöönotto voi keskeyttää käytössä olevan tunnelin minuuteiksi. Päätä mikä tunneli, mikä lokityyppi ja mikä aikaikkuna ennen kuin muutat mitään.
Tunnelin aktiviteettilokien käyttöönotto sivustojen väliselle VPN:lle on pieni muutos, joka voi pudottaa tunnelin, jota se mittaa. AWS varoittaa, että lokituksen ottaminen käyttöön olemassa olevalla tunnelilla voi keskeyttää sen useiksi minuuteiksi, joten kiinnostava kysymys ei ole, miten lippu käännetään, vaan millä tunnelilla ja milloin. Järjestyksen ratkaisee kolme ehtoa: kuljettaako toinen tunneli todella reitit, tarvitsetko palvelutapahtumia vai BGP-tapahtumia, ja meneekö muutos konsolin vai tunnelin asetusten API:n kautta. Jos nämä menevät pieleen, päädyt joko katkokseen tai lokiryhmään, joka on täynnä ei mitään.
Järjestyksen ratkaisee kolme ehtoa
Aloita sen asian identiteetistä, jota muutat. Tarvitset VPN-yhteyden tunnuksen, alueen ja kyseisen tunnelin ulkoisen IP-osoitteen, koska jokainen tämän ominaisuuden lokiasetus on tunnelikohtainen eikä yhteyksikohtainen. Väärälle ulkoiselle osoitteelle tehty muutos on muutos tunnelilla, jota kukaan ei ollut virittämässä.
Kohde on samalla alueella oleva CloudWatch-lokiryhmä, jossa on säilytys- ja käyttöoikeuskäytäntö, jonka todella haluat. AWS suosittelee /aws/vendedlogs/-etuliitettä näille ryhmille, koska se välttää resurssikäytännön kokorajoitukset, joihin tavalliset nimet voivat törmätä. Nimi kuten /aws/vendedlogs/vpn/branch-a-activity on vain havainnollistava; tärkeää on, että ryhmä on olemassa, että toimitusrooli voi kirjoittaa siihen ja että molempia hallitsee se, jolle VPN:n kokoonpano kuuluu. Nimi ei myönnä käyttöoikeuksia, ja ilman toimituskäytäntöä luotu ryhmä tuottaa hiljaisuutta, ei virhettä.
Ensimmäinen ehto: redundantti tunneli, joka todella kuljettaa liikennettä
Tämän ehdon tiimit ohittavat. Kaksi määritettyä tunnelia ei ole todiste siitä, että sovelluksella on käyttökelpoinen vaihtoehtoinen reitti.
Ennen kuin kosket yhteen tunneliin, varmista, että toinen kuljettaa tärkeät reitit: tarkista reititystaulukko asiakasyhdyskäytävän puolella ja varmista, että sovellus voi todella vaihtaa. AWS:n keskeytysikkuna on minuutteja, ei sekunteja, ja vain paperilla oleva tunneli muuttaa diagnostiikkamuutoksen katkokseksi. Jos redundanttia polkua ei ole todistettu, ajoita muutos yhtä huolellisesti kuin mikä tahansa muu reititysmuutos sen sijaan, että pitäisit lokitusta passiivisena. Instrumentoi tunnelia, jonka käyttäytymistä yrität selittää, älä sitä, johon on helpompi päästä käsiksi.
Toinen ehto: aktiviteettiloki vai BGP-loki
Tämä ratkaisee, mitä voit todella lukea. Aktiviteettitietueet kattavat palvelutapahtumia, kuten IKE- ja IPsec-tilasiirtymiä ja DPD-viestejä, mitä haluat, kun tunneli ei nouse tai uusii jatkuvasti avaimia. BGP-tietueet ovat erillinen virta omine hallintoineen, ja ne vastaavat toiseen kysymykseen: vaihdettiinko reitit ja vedettiinkö ne takaisin odotetusti.
Aktiviteettilipun käyttöönotto ei ole pyyntö jokaiseen virtaan, jonka palvelu voi lähettää. Jos epäilys on reititys, ota käyttöön molemmat; jos epäilys on vaiheen 1 tai vaiheen 2 neuvottelu, aktiviteettivirta näyttää sen.
Kumpikaan virta ei ole pakettikaappaus, ja tämä ero ratkaisee enemmän tikettejä kuin sen pitäisi. Aktiviteetti- ja BGP-tietueet kertovat, mitä palvelu teki tunnelin ja istunnon kanssa, eivät mitä sovelluksesi lähetti sen läpi. Tunnelin lokien hakeminen sovelluksen aikakatkaisun virittämiseen on kategoriavirhe, ja se maksaa yleensä keskeytysikkunan ennen kuin kukaan huomaa. Valitse ensin kysymys, sitten virta, joka voi vastata siihen.
Kolmas ehto: konsolimuutos vai tunnelin asetusten API
Jos ihminen tekee kertaluonteisen muutoksen, konsolipolku on kunnossa: VPC console, Site-to-Site VPN connections, valitse yhteys, Actions, Modify VPN tunnel options, valitse ulkoinen IP, ota Tunnel activity log käyttöön, valitse ryhmä ja tulostusmuoto, tallenna ikkunan sisällä. Jos VPN:ää hallitaan koodina, sama napsautus on ajautumaa, jonka tasoitat myöhemmin.
Automatisointia varten tunnelin asetusten aktiviteettilokiosalla on kiinteä muoto: LogOptions sisältää CloudWatchLogOptions-osan, jossa on LogEnabled, LogGroupArn ja LogOutputFormat. Tämä lohko on fragmentti, ei pyyntö; modify-vpn-tunnel-options tarvitsee edelleen yhteyden tunnuksen ja tunnelin ulkoisen IP:n, ja loput tunnelin asetukset on säilytettävä mallin omistajan. BGP-lokitus käyttää omia avaimiaan BgpLogEnabled, BgpLogGroupArn ja BgpLogOutputFormat samassa rakenteessa. Lue muutos takaisin komennolla describe-vpn-connections sen sijaan, että luottaisit kutsun soveltumiseen.
Mitä tietueet voivat kertoa ja mitä eivät
Kun ensimmäinen tunneli on valmis ja aiottu polku käytettävissä, toista sama valvottu sarja toiselle tunnelille, jos tarvitset myös sen lokit. Yksi tunneli kerrallaan on koko pointti.
Tietueet saapuvat virtoina, jotka tunnistetaan yhteyden ja tunnelin ulkoisen osoitteen perusteella, joten korreloi tämän identiteetin kanssa sen sijaan, että odottaisit historian ilmestyvän takautuvasti. Mitään ennen muutosta ei ole olemassa, eikä mikään odotus täytä aukkoa. Jos tarvitset lähtötason, tallenna tunnelin nykyinen tila ja reititystaulukko ennen muutosta, jotta jotain on vertailtavaksi.
Pidä lokiryhmä, sen säilytys, sen toimitusoikeudet ja tunnelin asetuslohko samassa luettelossa kuin VPN itse, koska ne ovat yksi kokoonpano, joka on hajautettu neljään paikkaan. AWS:n lokien käyttöönotto-ohje dokumentoi tunnelikohtaisen työnkulun ja sen keskeytysvaroituksen, ja se kannattaa lukea ennen muutosta eikä sen jälkeen. Tarkista sitten järjestyksessä: tunneli palasi, tietueet näkyvät odotetussa virrassa ja tietueet vastaavat kysymykseen, jonka vuoksi avasit tiketin. Jos kolmas epäonnistuu, ongelma oli virran valinta, ei lokitus.