AWS vs Cloud Cloud Platform. Што лепш для DevOps у воблаку?

Першапачаткова я падзяліўся гэтым матэрыялам у блогу Syndicode.

Некалькі месяцаў таму я апублікаваў артыкул пра плюсы і мінусы DevOps як службы. Там я згадаў AWS і Google Cloud Platform як асноўныя платформы, якія часта выкарыстоўваюцца DevOps. Чаму нельга зрабіць для іх невялікае параўнанне? Вядома, сярод гігантаў ёсць і Microsoft Azure. Але я паспрабую вярнуцца да гэтага пазней. Такім чынам, сёння я збіраюся зрабіць асноўнае параўнанне для AWS супраць Google Cloud Platform з пункту гледжання выкарыстання гэтых пастаўшчыкоў хмарных вылічэнняў для DevOps.

Вы ўжо ведаеце, што DevOps як сэрвіс (DaaS) - гэта мадэль дастаўкі для набору інструментаў, якія палягчаюць супрацоўніцтва паміж камандай па распрацоўцы праграмнага забеспячэння і аперацыйнай камандай. У гэтай мадэлі пастаўшчык DaaS збірае розныя інструменты, якія ахопліваюць розныя аспекты агульнага працэсу і звязваюць іх для сумеснай працы як адзінае цэлае.

У наш час многія арганізацыі адаптуюць DevOps і пераносяць свае прыкладанні ў воблака. У асноўным гэта міграцыя вашых інструментаў і працэсаў для пастаяннай дастаўкі на размешчаную віртуальную платформу. Як выбраць лепшага пастаўшчыка хмарных вылічэнняў?

AWS vs Cloud Cloud Platform

Пачнем з вэб-службаў Amazon (AWS). AWS ужо стварыў магутную глабальную сетку, каб забяспечыць віртуальны хост для некаторых з самых складаных ІТ-асяроддзяў свету. Яго цэнтры апрацоўкі даных звязаны з валакном і размешчаны ва ўсім свеце. У AWS выплаты запланаваны ў залежнасці ад паслуг, якія вы выкарыстоўваеце да мілісекунды часу вылічэння. У двух словах, AWS - хуткі і адносна просты спосаб перанесці свой DevOps у воблака.

Праблему DevOps Google Cloud Platform (GCP) варта таксама сур'ёзна падумаць. Пастаянна расце спіс магчымасцей гэтай глабальнай сеткі ўжо ўключае падтрымку такіх платформаў, як Visual Studio, Android Studio, Eclipse, Powershell і шмат іншых.

AWS

Не трэба называць галоўныя перавагі AWS, такія як "аўтаматызацыя", "бяспека", "праграмаванасць", "аплата" і г.д.

У сэрвісе AWS ёсць тры канкрэтныя службы, якія з'яўляюцца асновай бесперапыннай дастаўкі хмар:

  1. AWS CodeBuild Гэта пашыраная, цалкам кіраваная служба зборкі, якая забяспечвае пастаяннае маштабаванне разам з CI і CD. CodeBuild прапануе аўтаматычнае маштабаванне і расце па патрабаванні з вашымі патрэбамі, напрыклад, адначасовае разгортванне двух розных версій зборкі, што дазваляе правесці параўнанне тэставання ў вытворчых умовах. Асабліва важная для многіх арганізацый эканамічная эфектыўнасць CodeBuild, паколькі вам вылічваецца хвіліна за вылічаныя рэсурсы.
  2. AWS CodePipeline Ён будуе, тэстуе і разгортвае свой код кожны раз, калі адбываецца змена кода на аснове мадэляў працэсу рэлізу, які вы вызначаеце. Гэта дазваляе хутка і надзейна дастаўляць функцыі і абнаўленні. Вы можаце лёгка стварыць канчатковае рашэнне, выкарыстоўваючы загадзя ўбудаваныя убудовы для такіх папулярных службаў, як GitHub, альбо інтэграваць уласныя карыстацкія убудовы на любым этапе працэсу выпуску. З дапамогай гэтага CodePipeline вы плаціце за тое, што вы выкарыстоўваеце - без авансавых плацяжоў і доўгатэрміновых абавязацельстваў.
  3. AWS CodeDeploy CodeDeploy забяспечвае працу працоўным пакетам для кожнага асобніка, які абазначыў вашы загадзя наладжаныя параметры. AWS CodeDeploy аўтаматызуе разгортванне кода ў любым асобніку, уключаючы Amazon EC2in вещества і мясцовыя серверы. AWS CodeDeploy палягчае хуткае вызваленне новых функцый, дапамагае пазбегнуць прастою падчас разгортвання прыкладанняў і вырашае складанасць абнаўлення прыкладанняў. Гэта код-агностик і лёгка ўтрымлівае агульны спадчынны код.

Акрамя родных інструментаў AWS DevOps, ёсць некаторыя варыянты трэціх бакоў, такія як Шэф, Марыянетка, Джэнкінс і г.д.

Даведайцеся падрабязнасці пра AWS для DevOps. Некалькі карысных парад можна знайсці на блогу AWS DevOps.

Платформа Google Cloud

Платформа Google Cloud складаецца з мноства розных сэрвісаў і рашэнняў па выкарыстанні той жа праграмнай і апаратнай інфраструктуры, якую Google выкарыстоўвае для сваіх прадуктаў (напрыклад, YouTube і Gmail).

Некаторыя асноўныя перавагі GCP у тым, што гэта адна з найбуйнейшых і самых сучасных камп'ютэрных сетак, і яна дае вам доступ да шматлікіх інструментаў, якія дапамогуць вам засяродзіцца на стварэнні прыкладання. Маніторынг Stackdriver, адладчык Stackdriver, рэгістрацыя Stackdriver, служба сканавання бяспекі (App Engine) і многае іншае. Вы можаце выкарыстоўваць іх усё неадкладна як частка жыццёвага цыкла вашага дадатку.

Народныя інструменты кіравання для асяроддзя Google Cloud ўключаюць наступныя модулі:

  • Google Compute Engine Google Compute Engine дазваляе карыстальнікам запускаць віртуальныя машыны па патрабаванні. Гэта адна з асноўных паслуг поўнай ізаляцыі і аўтаматычнага маштабавання ад асобных асобнікаў да глабальных. Імклівыя машыны вылічальнай машыны Compute Engine хутка загружаюцца, пастаўляюцца з пастаянным дыскам і забяспечваюць стабільную прадукцыйнасць. Яго віртуальныя серверы даступныя ў многіх канфігурацыях, у тым ліку загадзя вызначаных памераў або магчымасці стварэння тыпаў карыстацкіх машын, аптымізаваных пад пэўныя патрэбы. Звярніце ўвагу, калі параўноўваць, Amazon EC2 па сутнасці тое ж самае, што і Google Compute Engine.
  • GCP Deployment Manager Google Cloud Deployment Manager дазваляе ўказваць усе рэсурсы, неабходныя для вашага прыкладання ў дэкларатыўным фармаце, выкарыстоўваючы yaml (альбо Python, альбо Jinja2). Гэта азначае, што, а не карпатліва пералічваючы кожны крок, які будзе неабходны для разгортвання, каманды DevOps могуць паведаміць дыспетчару разгортвання, як павінен выглядаць канчатковы разгортвальнік, і GCP будзе выкарыстоўваць неабходныя інструменты і працэсы для вас. Калі распрацавана ідэальная працэдура разгортвання, яна захоўваецца для паўтарэння і маштабавання па патрабаванні. З дапамогай Google Cloud Deployment Manager вы можаце разгарнуць адначасова мноства рэсурсаў, паралельна перадаваць зменныя ў шаблоны і вяртаць выходныя значэнні назад, праглядаць разгортвання ў воблачнай кансолі Google у іерархічным рэжыме і шмат іншага ...
  • Воблачная кансоль GCP Cloud Console дае падрабязны выгляд кожнай дэталі вашага DevOps у воблаку. Вэб-прыкладанні, аналіз дадзеных, віртуальныя машыны, крама дадзеных, базы дадзеных, сеткі, паслугі распрацоўшчыкаў ... Google Cloud Console дапаможа вам разгарнуць, маштабаваць і дыягнаставаць праблемы вытворчасці ў простым вэб-інтэрфейсе. Ад віртуальных машын да кіравання выпуском і адкатам, майстар, маніторынг і кіраванне ўсімі рэчамі GCP з працоўнага стала або на хаду. З дапамогай хмарнай кансолі GCP для DevOps вы зможаце лёгка ўзяць на сябе адказнасць за хмарны пастаянны цыкл дастаўкі.

Даведайцеся больш пра платформу Google для DevOps тут. Таксама там можна прачытаць некаторыя карысныя парады, прыведзеныя ў даведніках па DevOps, якія звязаны з той жа старонкай, якую я толькі што згадаў. Дакументацыю можна знайсці тут.

Табліца параўнання Google Cloud Platform і AWS

Вылічыць

Вы можаце абсталяваць экзэмпляры AWS EC2 да 128 VCPU і 3 904 ГБ аператыўнай памяці.

супраць

Вы можаце абсталяваць экзэмпляры Google Compute Engine да 96 vCPU і 624 ГБ аператыўнай памяці

Захоўванне / дыск

AWS

Агульны з памерамі гучнасці ад 1 ГБ да 16 ТБ і прадугледжаны IOPS SSD ад 4 ГБ да 16 ТБ

супраць

GCP

SSD, памеры аб'ёму ад 1 ГБ да 64 ТБ

Сетка

AWS

Экземпляры Amazon EC2 маюць максімальную прапускную здольнасць 25 Гбіт / с, аднак гэта толькі на самых вялікіх памерах асобнікаў. Стандартныя экзэмпляры максымальныя пры 10 Гбіт / с.

супраць

GCP

Кожнае ядро ​​падпадае 2 Гбіт / секунду (Gbps), каб дасягнуць максімальнай прадукцыйнасці. Кожнае дадатковае ядро ​​павялічвае сеткавы каўпак да тэарэтычнага максімуму да 16 Гбіт / с для кожнай віртуальнай машыны.

Выстаўленне рахункаў і кошты

AWS просты штомесячны калькулятар

супраць

Калькулятар цэнаў на платформу Google Cloud

(Я мэтанакіравана не згадваў кошты - вам трэба ўвесці неабходныя параметры, каб убачыць цэны).

Падтрымка

Дакументацыя AWS

AWS ForumsGoogle

супраць

Воблачныя форумы

Google Cloud Documentation

Бяспека

Мадэль бяспекі платформы AWS ўключае:

  • Усе дадзеныя, якія захоўваюцца ў асобніках EC2, шыфруюцца пад 256-бітным AES, і кожны ключ шыфравання таксама шыфруецца наборам рэгулярна змененых галоўных клавіш.
  • Сеткавыя брандмауэры, убудаваныя ў Amazon VPC, і магчымасці брандмаўэра вэб-прыкладанняў у AWS WAF дазваляюць ствараць прыватныя сеткі і кантраляваць доступ да асобнікаў і прыкладанняў.
  • AWS ідэнтычнасць і кіраванне доступам (IAM), шматфакторная аўтэнтыфікацыя AWS і паслугі каталогаў AWS дазваляюць вызначаць, прымяняць і кіраваць палітыкамі доступу карыстальнікаў.
  • AWS мае зручныя для аўдыторыі паслугі для PCI, ISO, HIPAA, SOC і іншых стандартаў адпаведнасці.

Мадэль бяспекі Google Cloud ўключае:

  • Усе дадзеныя захоўваюцца на пастаянных дысках і шыфруюцца пад 256-бітным AES, і кожны ключ шыфравання таксама шыфруецца наборам рэгулярна змененых галоўных клавіш. Па змаўчанні.
  • Абавязацельства па сертыфікацыі бяспекі прадпрыемства (SSAE16, ISO 27017, ISO 27018, PCI і HIPAA).
  • Патрабуюцца толькі аўтэнтыфікаваныя і аўтарызаваныя запыты ад іншых кампанентаў, якія прыходзяць у стэк захоўвання Google.
  • Google Cloud Identity and Access Access (Cloud IAM) быў запушчаны ў верасні 2017 года, каб забяспечыць загадзя вызначаныя ролі, якія даюць дэталёвы доступ да пэўных рэсурсаў Google Cloud Platform і прадухіляюць непажаданы доступ да іншых рэсурсаў.

Найважнейшая інфармацыя пра тэлеметрыю для DevOps

Калі вы абралі свайго правайдэра, жыццёва неабходна сачыць за статыстыкай, якая павінна ўключаць наступныя параметры:

  • Здароўе і статыстыка здароўя сервера і ВМ
  • Прымяненне здароўя
  • Аўтаматызаваныя вынікі тэставання
  • Аб'ём сеткі
  • Актыўнасць спісу бяспекі і кантролю доступу
  • Аперацыі з базай дадзеных

Выснова

У цяперашні час хмарныя вылічэнні сталі больш эканамічнымі, надзейнымі і бяспечнымі. Усе асноўныя пастаўшчыкі зараз укладваюць сродкі ў абсталяванне, праграмнае забеспячэнне і глабальную сеткавую інфраструктуру, каб атрымаць большую долю рынку. Дзякуючы канкурэнцыі паміж імі, каманды DevOps атрымалі вельмі складаныя, простыя ў інтэграцыі, хуткія і высокія рашэнні. Паколькі якасць застаецца практычна роўнай, розніца паміж асноўнымі пастаўшчыкамі хмарных вылічэнняў заключаецца ў асноўным у кошце і колькасці варыянтаў.

Што можа таксама змяніць гэта аперацыйныя зоны. AWS кіруе 49 зонамі даступнасці на працягу 18 геаграфічных рэгіёнаў, абвясціўшы аб планах на яшчэ 12 зон даступнасці і яшчэ чатыры рэгіёны ў Бахрэйн, SAR Ганконга, Швецыя і другі рэгіён AWS GovCloud у ЗША. У той час як Google Cloud Platform мае 13 рэгіёнаў, 39 зон, больш за 100 кропак прысутнасці і глабальную сетку з 100000s міль валаконна-аптычнага кабеля.

З улікам долі рынку AWS лідзіруе. Google добра прагрэсуе, але яшчэ шмат працы трэба зрабіць, каб праявіць сябе жыццяздольным варыянтам для прадпрыемства.

AWS лідзіруе па колькасці пакупнікоў і прадуктаў. З іншага боку, GCP ужо забяспечвае ўсе неабходныя функцыянальныя магчымасці і прапануе добрыя цэны разам з мадэлямі канфігурацыі, падмацаванымі сур'ёзнымі мерамі прыватнасці і бяспекі руху.

Такім чынам, што лепш для DevOps у воблаку? Я не маю адказу, але я паказаў вам альтэрнатывы для выбару. Цяпер, калі ў вас ёсць усе дадзеныя, вы маеце ўладу самастойна прымаць рашэнне для сваёй каманды DevOps!

p.s. Не забывайце пра Microsoft Azure! Я таксама разглежу гэта хутка!

Дадатковае чытанне:

  1. Рэсурсы для траплення ў DevOps
  2. Кіраваныя паслугі DevOps і ландшафт хмарных службаў
  3. Google Cloud vs AWS (падрабязнае параўнанне параметраў), там вы знойдзеце нават тэст затрымкі для абодвух!

Параўнанне AWS з Heroku таксама можа быць карысным!

Дзякуй за чытанне!