Unë kisha për detyrë jo vetëm të merrja Github Enterprise në AWS (Amazon Web Services), por gjithashtu kisha për detyrë ta automatizoja atë!

Ju ndoshta po pyesni veten (veçanërisht nëse jeni në industrinë time), a nuk është Github një faqe interneti që mund ta përdorni tashmë? Po! Por ata gjithashtu kanë një opsion instalimi në premisë.

Le të vazhdojmë me postimin apo jo? Kjo është pjesa 1 e asaj që mund të shndërrohet në një seri postimesh rreth këtij procesi pasi kam akoma më shumë punë për të bërë në skenar. Kjo ju jep një bazë të mirë për të filluar.

Këtu është diçka vërtet e mrekullueshme në lidhje me skriptin që kam shkruar, ju mund të nxirrni pjesë të caktuara të tij dhe thjesht t'i përdorni ato për të automatizuar instalimet e tjera të serverëve në AWS. Ju gjithashtu mund të hiqni gjërat specifike të AWS dhe ta bëni këtë në qendrën tuaj të të dhënave realisht.

Nëse po e ekzekutoni këtë në AWS, mund ta bëni këtë në disa mënyra të ndryshme, kështu që unë do ta lë në dorën tuaj se si dëshironi ta tërheqni këtë skenar.

Le të diskutojmë pjesën e parë të skriptit (ky është një skript bash për Ubuntu, por ju mund ta përshtatni atë për të ekzekutuar në një shpërndarje të bazuar në RedHat):

Kjo instalon të gjitha paketat e nevojshme për shpërndarjen tuaj, aktivizon dhe funksionon awscli, tërheq mjetet rezervë të github dhe gjeneron çelësin SSH që do t'ju nevojitet për instalimin e Github Enterprise.

Shumë e thjeshtë apo jo?

Kjo linjë në veçanti më dha disa probleme serioze (gjithashtu FYI këtu mund ta përdorni këtë për të krijuar serverët tuaj në AWS):

Pse? Ju duhet t'i vendosni gjërat në rendin e duhur dhe në vendin e duhur, përndryshe CLI do të shpërthejë dhe ju do të kaloni orë të tëra duke kërkuar për gabime si unë. Grupet e sigurisë mund të jenë gjithashtu një makth kur i kryeni ato përmes linjës së komandës. Pasi kuptova se ku po gaboja ishte torta.

Pjesa e fundit e skenarit. Vendosa rreth 5 milion kohë përgjumjeje në skenar. Kur instalova Github nga tastiera AWS, u deshën 3 minuta e 48 sekonda në një lloj shembulli r3.xlarge, kjo do të ndryshojë në varësi të llojit të shembullit që përdorni. Më pas tërheq PrivateIpAddress, por ju mund të vendosni PublicIpAddress në vend të kësaj nëse dëshironi.

Kaq për këtë postim. Do të shtoj disa gjëra të tjera në skenar dhe do të bëj një Pjesë 2 shumë shumë shpejt (ndoshta në javën e ardhshme ose më shumë). Faleminderit për akordimin!

Gjithashtu këtu është një lidhje me depon time! https://github.com/rifaavalon/GE-Mecha