Ansible for AWS - lengva valdyti debesį



Šiame tinklaraštyje „Ansible for AWS“ kalbama apie pranašumą naudojant „Ansibe“ su AWS, demonstruojant EC2 egzemplioriaus kūrimo ir aprūpinimo automatizavimą.

Siekdamos pagerinti savo veiklą, įmonės investavo daug laiko ir pinigų kurdami ir diegdami programinę įrangą. Įvadas į debesų kompiuteriją pasiūlė jų verslui naudotis programine įranga internete kaip paslauga, kuri pasirodė esanti efektyvesnė ir saugesnė. Integruojant IT automatizavimo įrankį, pvz., „Ansible“, kuris lengvai sudarys ir valdys jūsų debesų infrastruktūrą, pvz., AWS, panašu, kad pateksite į pagrindinį prizą. Apie tai ir kalbėsime šiame „Ansible for AWS“ tinklaraštyje.

Dienoraštis:





Jei norite įsisavinti „DevOps“, ' kursas būtų jūsų pasirinkimas.

Kodėl įmonės pereina į debesį?

Kaip minėta anksčiau, „Could Computing“ leidžia įmonėms internetu pasiekti tokius serverius kaip programinė įranga. Kad būtų aišku, „Debesų kompiuterija“ yra tarsi prijungimas prie centrinio elektros tinklo, užuot generavus savo jėgas. Debesis tapo nauju įprastu dalyku, ir tai sutaupo daug laiko ir pinigų. Pažvelkime į keletą privalumų, kodėl įmonės pereina į debesis.



1. Lankstumas:

Verslo augimas niekada nėra statiškas. Debesimis pagrįstos paslaugos yra tinkamos augantiems ir kintantiems verslo poreikiams. Funkcija, skirta išplėsti ir sumažinti jūsų diegimą pagal reikalavimus, daro ją labai lanksčią.

2. Nelaimės atkūrimas:

Kiekvienas verslas turėjo investuoti į atkūrimą. Kiekviena likimo įmonė baigia daug lėšų investuoti į atkūrimą. Startuoliams ir mažo biudžeto įmonėms trūksta pinigų ir tam reikalingų įgūdžių ir jie negali turėti tinkamo funkcinio atkūrimo po nelaimės bruožo. „Cloud“ teikia klientams atkūrimo po nelaimių sprendimus, kad galėtų parengti patikimus ir ekonomiškai efektyvius planus.

3. Automatiniai programinės įrangos atnaujinimai:

Kaip jau žinote, debesys yra interneto teikiama paslauga, todėl visi serveriai yra jūsų nepasiekiami arba jums labiau neskauda. Tiekėjai rūpinasi jomis, įskaitant atnaujinimą, kai reikia, ir reguliarias saugumo patikras. Tai vėlgi sutaupo daug laiko ir pinigų.



4. Sumažintos išlaidos:

Duomenų centro įkūrimas nuo nulio gali brangti. Bėgimas ir išlaikymas prideda išlaidas. Jums reikia tinkamos technologijos, tinkamos techninės įrangos, tinkamo personalo, turinčio reikiamų žinių ir patirties, o tai man atrodo tik didelis darbas. Be to, nėra daug žadanti, yra milijonas būdų, kaip tai gali suklysti. Perkėlimas į debesį suteikia jums šį pliusą.

5. Mastelis:

Tradicinis netikėtos plėtros planavimo būdas yra papildomų serverių, saugyklos ir licencijų įsigijimas ir išlaikymas. Gali praeiti metai, kol juos iš tikrųjų naudosite. Debesų platformos leidžia jums išplėsti šiuos išteklius, kaip prireikus. Šis dinamiškas mastelis puikiai tinka nenuspėjamam augimui.

6. Duomenų sauga:

Dažniausiai duomenis geriau laikyti debesyje, o ne laikyti fiziniame įrenginyje, pavyzdžiui, nešiojamuose kompiuteriuose ar standžiuose diskuose. Yra didelė tikimybė, kad šie fiziniai įrenginiai bus pavogti ar sugadinti. „Cloud“ leidžia nuotoliniu būdu pašalinti duomenis arba perkelti juos į kitą serverį, užtikrinant, kad duomenys išliktų nepažeisti ir saugūs.

7. Padidėjęs bendradarbiavimas:

Naudodamiesi debesų platformomis, komanda gali bet kada ir bet kur pasiekti, redaguoti ir dalytis dokumentais. Jie sugeba dirbti kartu, todėl padidina efektyvumą. Tai taip pat teikia realaus laiko ir skaidrius atnaujinimus.

Galimos savybės

„Ansible“ turi keletą unikalių funkcijų ir, kai tokios funkcijos bendradarbiauja su „Amazon Web Services“, palieka pėdsaką. Pažvelkime į šias neįtikėtinas savybes:

  1. „Ansible“ yra pagrįsta agentų neturinčia architektūra, skirtingai nei virėja ir lėlė
  2. „Ansible“ pasiekia savo pagrindinį kompiuterį per SSH, o tai reiškia, kad ryšys tarp serverių ir pagrindinių kompiuterių jaučiasi kaip greitas
  3. Nereikia jokios individualios saugumo infrastruktūros
  4. Konfigūruoti grojaraščius ir modulius yra labai paprasta, nes tai atitinka YAML formatą
  5. Savo klientams turi platų modulių asortimentą
  6. Leidžia visiškai valdyti konfigūraciją, tvarkyti ir diegti
  7. „Ansible Vault“ saugo paslaptis

Kodėl verta naudoti AWS?

Dabar, kai patyrėme „Cloud Platform“, pvz., AWS, pranašumus ir unikalias „Ansible“ funkcijas, pažvelkime į magiją, sukurtą integruojant šias dvi legendas.

1. Debesis kaip paslaugų grupė

Debesis yra ne tik serverių grupė kažkieno duomenų centre, bet ir daug daugiau. Suprasite, kad įdiegę jame savo paslaugas. Yra daugybė prieinamų paslaugų, leidžiančių greitai įdiegti ir išplėsti savo programas. Neįmanoma automatizavimas padeda valdyti AWS aplinką kaip paslaugų grupę, o ne naudoti jas kaip serverių grupę.

2. AWS palaikantys galimi moduliai

„Ansible“ naudojama apibrėžti, diegti ir valdyti įvairiausias paslaugas. Sudėtingiausias AWS aplinkas galima lengvai sukurti naudojant grojaraštį. Geriausia yra tai, kad sukuriate serverio ir pagrindinio kompiuterio ryšį, tada paleidžiate grojaraštį tik vienoje sistemoje ir pateikiate kelias kitas sistemas su galimybe didinti ir mažinti, kaip reikalaujama.

„Ansible“ turi šimtus modulių, palaikančių AWS, ir kai kurie iš jų apima:

  • Autoskalės grupės
  • „CloudFormation“
  • „CloudTrail“
  • „CloudWatch“
  • „DynamoDB“
  • „ElastiCache“
  • Elastinis debesų skaičiavimas (EC2)
  • „Identity Access Manager“ (IAM)
  • Lambda
  • Reliacinių duomenų bazių tarnyba (RDS)
  • 53 maršrutas
  • Apsaugos grupės
  • Paprasta saugojimo paslauga (S3)
  • Virtualus privatus debesis (VPC)
  • Ir daug daugiau

3. Dinaminis inventorius

Kūrimo aplinkoje šeimininkai nuolat sukasi ir užsidaro įvairiems verslo reikalavimams. Tokiu atveju gali nepakakti naudoti statinį inventorių. Tokiose situacijose reikia naudoti „Dynamic Inventory“. Tai leidžia jums priskirti pagrindinius kompiuterius pagal atsargų scenarijų pateiktas grupes, skirtingai nei įprastas inventorius, kuris verčia rankiniu būdu susieti pagrindinius kompiuterius, o tai yra labai nuobodu.

4. Saugi automatika

Tarkime, kad turite 5 žmonių komandą ir kiekvienas iš jų turi du pavaldinius, kurie nėra visiškai kvalifikuoti. Nenorite jiems suteikti visiškos prieigos prie viso diegimo proceso. Tuomet supranti, kad reikia apriboti leidimą.

„Ansible Tower“ teikia šią funkciją, kad apribotų prieigos teises. Taigi iš esmės jūs pasirinkote, kas ką gali, o tai palengvina moderavimą.Be to, „Ansible Tower“ šifruoja kredencialus ir kitus neskelbtinus duomenis, o jūs pavaldiniams suteikiate prieigą tik prie atitinkamų išteklių, apribodami jų prieigą prie nereikšmingų.

Demonstracija: automatizuokite EC2 egzemplioriaus teikimą naudodami „Ansible“

Šiame demonstraciniame skyriuje aš pademonstruosiu, kaip „Ansible“ palaiko AWS, parodydamas, kaip automatizuoti EC2 egzemplioriaus paleidimą ir atidavimą. Pradėkime.

1 žingsnis :

Įdiekite „Ansible“ savo serverio mazge ir užmegzkite SSH ryšį tarp savo serverio ir AWS kliento mazgų. Šiuo atveju aš sukūriau du EC2 egzempliorius, vieną serverį, kuriame įdiegta „Ansible“, o kitą - klientą.

2 žingsnis:

Dabar įsitikinkite, kad turite visus reikalavimus. Remiantis dokumentais, tai yra šie reikalavimai:

  • „Python“> = 2.6
  • balsas

Įdiekite python naudodami šią komandą:

$ sudo apt įdiekite python

Įdiekite „boto“ naudodami šią komandą:

$ sudo apt įdiekite python-pip
$ pip įdiegti boto

„Boto“ yra „python“ sąsaja, skirta naudoti „Amazon“ interneto paslaugas. Turėsite jį importuoti naudodami šią komandą:

$ python
$ importavimo mygtukas
$ exit ()

balsavimas - Ansible For AWS - Edureka

3 žingsnis:

Turite sukonfigūruoti savo AWS. Tam pačiam naudokite šią komandą:

konfigūruoti $ aws

Ir pridėkite savo AWS prieigos rakto ID, slaptąjį raktą ir numatytąjį regioną (kuris neprivalomas).

4 žingsnis:

Parašykite grojaraštį, kad galėtumėte paleisti EC2 egzempliorių.

$ sudo vi /etc/ansible/launch.yml

--- - vardas: sukurkite „EC2“ egzempliorių prieglobas: žiniatinklio rinkimo_faktai: klaidingi varsai: regionas: us-east-1 egzemplioriaus tipas: t2.micro ami: ami-05ea7729e394412c8 raktų poros: priyajdm užduotys: - vardas: sukurkite „EC2“ egzempliorių ec2: aws_access_key : '********************' aws_secret_key: '************************ **************** 'key_name:' {{keypair}} 'group: launch-wizard-26 instance_type:' {{instance_type}} 'image:' {{ami}} 'wait: true region:' {{region}} 'count: 1 vpc_subnet_id: subnet-02f498e16fd56c277 assign_public_ip: yes register: ec2

Gera praktika žinoti, ką veikia kodas, prieš jį faktiškai vykdant. Leiskite man paaiškinti šią pjesę, kad geriau suprasčiau.

Vardas: Tai gali būti tiesiogine to žodžio prasme. Gera praktika yra išsaugoti pavadinimą, kuris apibūdina atliktą užduotį.

Priimančioji: Nurodo pagrindinio kompiuterio sąrašo, pagal kurį reikia paleisti pjesę, pavadinimą. Mano atveju taip Žiniatinklis .

surinkti_faktus: Šis parametras nurodo „Ansible“ surinkti visus susijusius faktus, kintamuosius ir kitus duomenis, kad juos būtų galima naudoti ateityje. Mūsų atveju mes nustatėme tai klaidingai, nes nenaudojame faktų rinkimo (IP adresas, pagrindinio kompiuterio pavadinimas ir kt.).

kurio: Šiame skyriuje apibrėžiami ir inicializuojami visi kintamieji, kuriuos naudosime šioje pjesėje. Čia yra keturi kintamieji:

  • regione apibrėžia regioną, kuriame turi atsirasti EC2 pavyzdys
  • egzemplioriaus tipas apibrėžia pavyzdį, kurį bandome iškelti. Mūsų atveju mes naudojame t2.micro
  • kuri apibrėžia pavyzdžio, kurį bandome iškelti, AMI

  • raktų pora apibrėžia raktų porą, kurią naudosime egzemplioriui iškelti

ec2: Tai yra „Ansible“ pateiktas modulis, naudojamas EC2 egzemplioriui paleisti ar nutraukti.

Šis modulis turi tam tikrus parametrus, kuriuos naudosime nurodydami kitus EC2 egzemplioriaus, kurį bandome pradėti, funkcijas.

skaičiaus pakėlimas į galią java
  • Pirmiausia paminėdami AWS prieigos rakto ID ir slaptąjį raktą, naudodami parametrus aws_access_key ir aws-secret_key .
  • rakto_vardas: perduoti kintamąjį, apibrėžiantį čia naudojamą raktų porą
  • grupė: paminėti apsaugos grupės pavadinimą. Tai apibrėžia EC2 egzemplioriaus, kurį bandome iškelti, saugumo taisykles
  • egzemplioriaus tipas: perduoti kintamąjį, apibrėžiantį čia naudojamo egzemplioriaus tipą
  • vaizdas: perduoti kintamąjį, apibrėžiantį vaizdo, kurį bandome pradėti, AMI
  • laukti: Tai turi tikrąją arba klaidingą loginę vertę. Jei tai tiesa, prieš grįždama ji laukia, kol egzempliorius pasieks norimą būseną
  • regionas: perduoti kintamąjį, apibrėžiantį regioną, kuriame reikia sukurti EC2 egzempliorių.
  • skaičius: Šis parametras nurodo, kokių egzempliorių reikia sukurti. Šiuo atveju aš paminėjau tik vieną, bet tai priklauso nuo jūsų reikalavimų.
  • vpc_subnet_id: perduoti potinklio ID, kuriame norite sukurti egzempliorių
  • priskirti_public_ip: Šis parametras turi loginę vertę. Jei teisinga, kaip ir mūsų atveju, viešasis IP bus priskirtas egzemplioriui, kai jis bus pateiktas VPC.

5 žingsnis:

Dabar, kai supratote visas pjesės eilutes, eikime į priekį ir vykdykime ją. Naudokite šią komandą:

$ ansible-playbook /etc/ansible/launch.yml


Vykdę grojaraštį pamatysite kuriamą egzempliorių.


Ir TADA! Jūs sėkmingai automatizavote EC2 egzemplioriaus teikimą. Taip pat galite parašyti pjesę, kad sustabdytumėte EC2 egzempliorių.

Tai priveda prie „Ansible For AWS“ tinklaraščio pabaigos. Jei jums atrodo, kad šis straipsnis yra naudingas, patikrinkite ' pasiūlė Edureka. Ji apima visas priemones, kurios padėjo IT pramonei efektyviai veikti.