Еластичен изчислителен облак (EC2), обяснен с прости думи

Някога изчислителната мощност беше работа на локалната хардуерна инфраструктура. Сега – ако вашето софтуерно решение се намира в облака – то се превръща в работа на уеб услугата Elastic Compute Cloud (EC2).

EC2 предоставя променлив размер изчислителен капацитет в облака. Потребителите могат да наемат виртуални компютри с инстанции, на които стартират своите приложения. Екземплярите могат да имат различни конфигурации, различни операционни системи, изчислителна мощност и капацитет за съхранение.

EC2 е основен компонент на Amazon Web Services (AWS). Като такъв, той се използва широко за почти всяко възможно внедряване на проекти в облака. Очевидно, освен ако не търсите безсървърна архитектура, в който случай EC2 е, напротив, извън масата.

Съдържание

Ключови компоненти на EC2

източник: docs.aws.amazon.com

Всеки AWS EC2, който решите да използвате за вашия проект, трябва да се състои от други AWS компоненти. Те определят точните параметри на вашата конфигурация.

#1. Инстанции

Екземплярът на EC2 е основно облачна интерпретация на виртуална машина. Екземплярът можете да подготвите и стартирате в различни конфигурации. Трябва също така да дефинирате конкретна операционна система за екземпляра, както и колко силен трябва да бъде екземплярът (количество CPU, RAM и т.н.).

И накрая, можете да посочите размера на капацитета за съхранение, който трябва да бъде постоянно прикрепен към екземпляра EC2.

#2. Amazon Machine Images (AMI)

AMI е предварително конфигуриран шаблон, съдържащ цялата необходима информация за успешно стартиране на екземпляра. Тук всъщност определяте на коя операционна система искате да стартирате приложенията, как ще изглежда сървърът на приложения и кои точно приложения да бъдат инсталирани.

#3. Магазин за еластични блокове (EBS)

Това е услуга за съхранение, която ви дава постоянни обеми за съхранение, които да използвате с екземпляра EC2. Това е мястото, където ще се намират всички данни за приложенията, както и данните за клиентите, след като приложенията на екземплярите EC2 се използват.

#4. Групи за сигурност

За всеки екземпляр на EC2 ще изисквате контролиран защитен достъп. Това важи за комуникация от външния свят в екземпляра EC2 (изходящ трафик), както и между AWS услугите във вашата облачна инфраструктура (входящ трафик).

#5. Двойки ключове

За повишена сигурност трябва да генерирате двойки публичен и частен ключ, които да използвате за сигурно свързване към екземпляри на EC2.

#6. Еластични IP адреси

За да можете да получите достъп до новия си екземпляр на EC2 от външния интернет или дори да се обърнете към тях в рамките на вашата инфраструктура в облака, трябва да зададете статичен IP адрес на екземплярите на EC2. От този момент нататък виртуалната машина с екземпляр EC2 е достъпна.

#7. Групи за разположение

С помощта на тях можете да създадете логически групи от екземпляри. Те са предназначени да осигурят мрежови връзки с ниска латентност и висока честотна лента. Това служи както за организационни, така и за производителни причини.

#8. Автоматично мащабиране

Това е услуга – доста уникална сред различните доставчици на облачни услуги – която автоматично настройва броя на EC2 екземплярите в група въз основа на вашите нужди от работно натоварване. Това означава, че след като активирате автоматичното мащабиране, вашите екземпляри на EC2 могат да бъдат умножени или хардуерно увеличени, за да отговорят на повишеното търсене.

Като алтернатива можете да намалите или намалите, ако търсенето е значително по-ниско от обикновено. Основната причина за това е да не бъдете бавни по време на пиково натоварване. Но също и за спестяване на пари, когато няма какво много да се прави.

#9. Балансери на натоварването

Казано на високо ниво и просто, това е услуга, която разпределя входящия трафик между множество екземпляри на EC2 и с това подобрява наличността и скалируемостта.

  7 PaaS за изграждане и хостване на вашите модерни приложения

#10. Виртуален частен облак (VPC)

VPC е логически разделена виртуална мрежа, която осигурява сигурна и изолирана среда за EC2 екземпляри. Можете да организирате различни екземпляри на EC2 в едни и същи или различни VPC и след това да дефинирате правила за входящ и изходящ трафик между VPC и по този начин също между различните екземпляри на EC2 във вашата облачна инфраструктура.

Обикновено искате да запазите някои екземпляри на EC2 частни и достъпни само от кода на вашето приложение. В същото време други EC2, които искате да запазите достъпни в интернет. VPC е идеалното решение.

Основни характеристики на EC2

източник: aws.amazon.com

EC2 екземплярите предоставят мащабируем изчислителен капацитет в AWS облака. Бизнесът може бързо да стартира виртуални машини с необходимата изчислителна мощност и капацитет за съхранение, без да инвестира във физически хардуер. Това е истинската полза от облачната инфраструктура и EC2 играе важна роля.

Обичайната цел на екземплярите на EC2 е да хостват различни приложения или уебсайтове в облака. Можете да ги използвате, за да задоволите натоварванията си, независимо дали са от пакетен характер, изисквания за обработка в реално време, уеб или мобилни приложения.

Естеството на работата, за която използвате EC2, е практически безкрайно. Може да се нуждаете от сериозна мощност за обработка на данни, машинно обучение или игри. Може да имате нужда от допълнителна среда за разработка или тестване за вашата инфраструктура. След това определено можете да се възползвате от всички предимства на екземплярите на EC2.

Най-хубавото е, че можете да ги унищожите и пресъздадете, когато имате нужда. В този случай вие спестявате пари за вашата инфраструктура за разработка и тестване за времето, когато нямате нужда от нея. Прекратяването и възстановяването при поискване имат, разбира се, много други приложения за бизнеса.

Основи на облачните изчисления

Тъй като вече говорихме за EC2, може би една малка крачка назад би била полезна, за да обясним малко какво точно представлява облачното изчисление.

Можете да го разглеждате като модел за доставяне на изчислителни ресурси по интернет, който е при поискване и е изграден като услуга. Това е механизмът за достъп до изчислителната мощност с цялата й инфраструктура и приложения, без да се налага да инвестирате във физически хардуер или инфраструктура. Облачните изчисления се основават на набор от фундаментални принципи, включително:

  • Потребителите разполагат със самообслужване при поискване по всяко време. Сървърите и хранилището са налични, без да се налага да преминавате през дълъг процес на доставка.
  • tabletsCloud ресурсите могат да бъдат достъпни отвсякъде и от всичко (напр. лаптопи, настолни компютри, таблети, мобилни устройства).
  • Компютърните ресурси или цялата инфраструктура могат да бъдат споделени и динамично разпределени, за да отговорят на променящите се среди и изисквания.
  • Можете бързо да увеличите или намалите всички ресурси въз основа на вашето текущо търсене.
  • Облачните изчисления в реално време по същество означават модел на ценообразуване на плащане в движение, при който потребителите плащат само за ресурсите, които действително използват. Освен това изразходваното използване можете да проследявате в реално време.

Сервизни модели на облачни изчисления

Облачните изчисления могат да имат три основни модела на обслужване:

  • Инфраструктура като услуга (IaaS), която ви предоставя виртуализирани изчислителни ресурси, като сървъри, съхранение и работа в мрежа, като услуга. Създаването на работещо решение над това зависи единствено от вас.
  • Платформата като услуга (PaaS) е една стъпка напред. Ще получите цяла платформа за разработване, внедряване и управление на приложения като услуга. Не е нужно да се притеснявате за детайлите на инфраструктурата по никакъв начин.
  • Софтуерът като услуга (SaaS) е най-високият клас, при който получавате цялостни софтуерни приложения, като имейл, CRM или инструменти за производителност, като услуга. В този случай просто използвате това, което вече е налично за вас.
  • Модели за внедряване на облачни изчисления

    Облачните изчисления също се различават по начина, по който внедрявате и осъществявате достъп до ресурсите:

  • Публичен облак означава, че облачните ресурси се предоставят от доставчик трета страна, като AWS, Microsoft Azure или Google Cloud, и са достъпни през интернет.
  • Частен облак е, ако една организация изгради свой собствен център за данни и инфраструктурата е достъпна само в мрежата на организацията.
  • Хибридният облак е комбинация от публични и частни облачни ресурси, които са интегрирани, за да осигурят една обща взаимосвързана инфраструктура.
  • Multi-cloud е стратегия, когато една организация използва множество доставчици на облак, за да отговори на специфични бизнес нужди. Например, можете да комбинирате Amazon Cloud и SAP Datawarehouse Cloud, за да изградите решение, състоящо се от регулирани транзакционни данни в SAP с езеро от данни, изградено в AWS.
  •   Как да резервирате Uber в Google Maps

    Еластичност на EC2

    източник: aws.amazon.com

    Еластичността е ключова характеристика на облачните изчисления. Отнася се до способността на облачната инфраструктура динамично да разпределя и отменя изчислителни ресурси в отговор на вашите постоянно променящи се нужди. Използвайки еластичността, можете да мащабирате инфраструктурата нагоре или надолу според нуждите. Всичко това, без да се налага да инвестирате във физически хардуер или инфраструктура.

    Ръка за ръка с това идва друго свойство на облака, което е мащабируемостта. Това е способността на системата да обработва нарастващи количества натоварвания или трафик, без да страда от намаляване на производителността.

    Например, ако вашата начална страница претърпява необичайно висок внезапен трафик поради пускането на нов, дългоочакван продукт. Това е моментът, когато скалируемостта ще скочи и ще увеличи всичките ви ресурси и мощност, за да се чувствате комфортно с това високо натоварване.

    Мащабируемостта се постига чрез използването на еластични ресурси, като виртуални машини, съхранение и мрежи, които могат бързо и лесно да бъдат мащабирани нагоре или надолу.

    След това автоматичното мащабиране е основна функция, която използва възможността за мащабиране и я автоматизира въз основа на предварително дефинирани очаквания за натоварване. Той автоматично ще коригира броя на изчислителните ресурси, които да се използват въз основа на търсенето. Това също означава, че не е необходимо да наблюдавате и ръчно коригирате ресурсите. Мащабирането на ресурсите нагоре или надолу може да се основава на различни показатели, като използване на процесора, мрежов трафик или време за реакция на приложението.

    И накрая, ресурсите се разпределят динамично и в реално време. Това ви дава възможност да оптимизирате използването на вашата инфраструктура. Разпределяйте ресурсите си само когато имате нужда от тях и ги освобождавайте, когато вече не са ви необходими.

    Динамичното разпределение на ресурсите е ключова характеристика на облачните изчисления, тъй като позволява постигане на високи нива на използване и ефективност, като в същото време минимизира разходите.

    Предимства на EC2

    Някои от основните предимства на EC2 вече са очевидни. Но само за да го поставим в ясен контекст, следните са най-важните за отбелязване:

    Гъвкавост

    Използвайте EC2 за лесно мащабиране на изчислителните ресурси нагоре или надолу, за да посрещнете текущите нива на натоварване. Стартирайте или унищожете екземпляри, както искате точно сега. Поставете на пауза и рестартирайте инстанции, когато ви е най-удобно. Бъдете уверени, че винаги имате резервно копие, в случай че нещата се объркат.

    Ефективност на разходите

    Пряк резултат от гъвкавостта е повишената възможност за спестяване на пари за осигуряване на инфраструктура. Ако са настроени правилно, вашите екземпляри на EC2 ще се стартират и прекратят в точното време. Като следствие ще избегнете разходите, свързани с неоправдани разходи за предоставяне на ресурси.

    Висока наличност

    С EC2 получавате високодостъпна инфраструктура, целяща да сведе до минимум времето за престой и да гарантира, че приложенията и услугите са винаги достъпни.

    Надеждност

    EC2 осигурява надеждна инфраструктура, чието намерение е да работи практически без прекъсване и гарантира, че приложенията и услугите са винаги налични и производителни.

    Достъпност

    Можете да имате достъп отвсякъде, като използвате настолни компютри, лаптопи, таблети или смартфони. По същия начин имате пълната свобода да прилагате всякакви ограничения на достъпа, който ви е необходим.

    Глобален обхват

    EC2 се предлага в множество региони по света, така че можете да внедрите приложенията и услугите по-близо до клиентите си и да спазвате местните разпоредби за поверителност на данните.

    Ловкост

    Разполагате с наистина гъвкава инфраструктура, която ви дава възможности да реагирате бързо на променящите се пазарни условия и да въвеждате по-бързо иновации.

    Сигурност на данните

    EC2 ви дава сигурна инфраструктура, която по проект е създадена да защитава данните и приложенията от неоторизиран достъп и кибер заплахи.

    Съответствие

    EC2 е съвместим с широк набор от индустриални стандарти и разпоредби, включително HIPAA, PCI DSS и GDPR.

    Сътрудничество

    EC2 предоставя среда за сътрудничество, която позволява на екипите да работят заедно по проекти и да споделят ресурси и данни.

    Предизвикателства с EC2

    Със сигурност има и някои предизвикателства, с които трябва да сте наясно, когато използвате EC2.

      12 най-добри Drupal хостинг за малки до големи сайтове

    #1. Управление на разходите

    Основното естество на целия модел на разходите на AWS е да го направи възможно най-сложен и ценообразуването на EC2 не е изключение от това. Трябва внимателно да управлявате използването си, за да избегнете неочаквани разходи и да имате готови някои надеждни инструменти, за да го наблюдавате непрекъснато. Можете да използвате някои инструменти за оптимизиране на разходите, например AWS Cost Explorer или AWS Trusted Advisor.

    #2. Сигурност

    Въпреки че EC2 ви предоставя сигурна инфраструктура, вие все пак носите отговорност за защитата на собствените си приложения и данни. Трябва да приложите най-добрите практики за сигурност, като например използване на силни пароли, криптиране на данни и прилагане на контроли за достъп.

    #3. Съответствие

    С EC2 трябва да гарантирате, че използването е в съответствие с индустриалните стандарти и разпоредби. Ето защо е важно редовно да преглеждате документацията за съответствие на AWS и да работите с експерти по съответствие на AWS, за да сте сигурни, че отговаряте на изискванията за съответствие, изисквани от вашите клиенти.

    #4. производителност

    Можете да повлияете на производителността на EC2 чрез различни фактори, като например мрежова латентност, I/O на диска или използване на процесора. Наблюдавайте систематично производителността на вашата инфраструктура и използвайте инструменти за оптимизиране на производителността, като AWS CloudWatch и AWS X-Ray, за идентифициране и разрешаване на проблеми с производителността.

    #5. Наличност

    Вярно е, че EC2 предоставя високо достъпна инфраструктура, но все пак трябва да сте сигурни, че приложенията и услугите, които осигурявате, също са проектирани за висока достъпност. Използвайте за това AWS услуги като еластично балансиране на натоварването или автоматично мащабиране, за да сте сигурни, че приложенията и услугите са винаги налични.

    #6. Прехвърляне на данни

    Имайте предвид разходите за пренос на данни, когато използвате EC2, тъй като прехвърлянето на данни между екземпляри на EC2 и други услуги на AWS може да доведе до допълнителни такси. Това означава, че не става въпрос само за обмен на данни между вашата инфраструктура и интернет. Използвайте Amazon S3 и Amazon CloudFront, за да минимизирате разходите за пренос на данни.

    #7. Заключване на доставчика

    Осъзнаването на потенциала за блокиране на доставчика при използване на EC2 трябва да бъде във вашия списък с приоритети. Проектирайте приложенията и услугите така, че да бъдат преносими между облачните доставчици и да използват отворени стандарти и API, за да гарантират оперативна съвместимост. Ето как вашето решение ще стане агностик на облака, превръщайки се в допълнителен слой гъвкавост, който все още е значително пазарно предимство.

    източник: aws.amazon.com

    Любопитни ли сте за бъдещите тенденции и иновации, които можете да очаквате да оформят бъдещето на EC2? Ето ги и тях.

    Без сървър

    Безсървърното изчисление все още е нова парадигма в облачните изчисления, дори ако вече е внедрено от няколко години от някои от най-прогресивните екипи за разработка. Разработчиците изпълняват кода, без да се налага да управляват сървъри или инфраструктура. Функцията AWS Lambda или AWS Step е пример за компютърна услуга без сървър, която можете да изградите върху EC2.

    Машинно обучение

    EC2 е перфектна инфраструктура за управление на модели за машинно обучение, прогнози и работни натоварвания. Можете буквално да генерирате впечатляващо големи езера от данни от прогнози за моделни данни за минути. Освен това AWS обслужва набор от готови за използване услуги за машинно обучение, като Amazon SageMaker и Amazon Rekognition, които са изградени върху EC2.

    Edge Computing

    Edge computing е нова парадигма в облачните изчисления и става дума за обработка на данни по-близо до източника, а не в централизиран център за данни. Това означава, че извършвате всички обширни зареждания на данни в областта, където генерирате данните. След това, с помощта на различни услуги за кеширане, вие прехвърляте данните в централно хранилище на данни, което вече не засяга обработката на операциите на потребителя. AWS предлага набор от периферни компютърни услуги, като AWS Greengrass и AWS IoT, които можете да внедрите върху EC2.

    Контейнеризация

    Контейнеризацията е стратегия за опаковане на приложения и услуги в контейнери, които могат лесно да бъдат внедрени и управлявани. Получавате гаранция за съвместимост, когато се изисква транспортиране на услуги между инстанции или инфраструктури. AWS предлага набор от услуги за контейнеризация, като Amazon ECS и Amazon EKS, които са изградени върху EC2.

    Квантово изчисление

    Квантовото изчисление отново е доста нова парадигма, която включва използването на квантово-механични явления, като суперпозиция и заплитане, за извършване на изчисления. AWS обслужва набор от квантови компютърни услуги, като Amazon Braket, и можете да ги имате върху EC2.

    Заключителни думи

    EC2 е основната част от всяка сериозна облачна инфраструктура и това няма да изчезне скоро. Обикновено вероятно ще го видите в топ 3 услуги с най-високо генериране на разходи, но всичко това има причина.

    EC2 е гръбнакът на облачната инфраструктура, която улавя всички други услуги на нейната повърхност. Следователно разбирането на EC2 е от решаващо значение, ако целта ви е да бъдете успешни в света на облачните изчисления.

    След това вижте най-добрите практики за сигурност на AWS EC2.