Плюсы и
минусы облаков.
Облачные вычисления (англ. cloud computing) — технология распределенной
обработки данных, в которой компьютерные ресурсы и мощности предоставляются
пользователю как Интернет-сервис. Предоставление пользователю услуг как
Интернет-сервис является ключевым. Однако под Интернет-сервисом не стоит
понимать доступ к сервису только через Интернет, он может осуществляться также и
через обычную локальную сеть с использованием веб-технологий.
Плюсы:
● доступность – облака доступны всем, из любой точки, где есть Интернет, с
любого компьютера, где есть браузер. Это позволяет пользователям
(предприятиям) экономить на закупке высокопроизводительных, дорогостоящих
компьютеров. Также сотрудники компаний становятся более мобильными так,
как могут получить доступ к своему рабочему месту из любой точки земного
шара, используя ноутбук, нетбук, планшетник или смартфон. Нет
необходимости в покупки лицензионного ПО, его настройки и обновлении, вы
просто заходите на сервис и пользуетесь его услугами заплатив за фактическое
использование.
● низкая стоимость – основные факторы снизившие стоимость использования
облаков следующие:
○ снижение расходов на обслуживания виртуальной инфраструктуры,
вызванное развитием технологий виртуализации, за счет чего требуется
меньший штат для обслуживания всей ИТ инфраструктуры предприятия;
○ оплата фактического использования ресурсов, пользователь облака
платит за фактическое использование вычислительных мощностей
облака, что позволяет ему эффективно распределять свои денежные
средства. Это позволяет пользователям (предприятиям) экономить на
покупке лицензий к ПО;
○ использование облака на правах аренды позволяет пользователям
снизить расходы на закупку дорогостоящего оборудования, и сделать
акцент на вложение денежных средств на наладку бизнес процессов
предприятия, что в свою очередь позволяет легко начать бизнес;
○ развитие аппаратной части вычислительных систем, в связи с чем
снижение стоимости оборудования.
● гибкость — неограниченность вычислительных ресурсов (память, процессор,
диски), за счет использования систем виртуализации, процесс
масштабирования и администрирования «облаков» становиться достаточно
легкой задачей, так как «облако» самостоятельно может предоставить вам
ресурсы, которые вам необходимы, а вы платите только за фактическое их
использование.
● надежность – надежность «облаков», особенно находящихся в специально
оборудованных ЦОД, очень высокая так, как такие ЦОД имеют резервные
источники питания, охрану, профессиональных работников, регулярное
резервирование данных, высокую пропускную способность Интернет канала,
высокая устойчивость к DDOS атакам.
● безопасность – «облачные» сервисы имеют достаточно высокую безопасность
при должном ее обеспечении, однако при халатном отношении эффект может
быть полностью противоположным.
● большие вычислительные мощности – вы как пользователь «облачной»
системы можете использовать все ее вычислительные способности, заплатив
только за фактическое время использования. Предприятия могут использовать
данную возможность для анализа больших объемов данных.
Минусы:
● постоянное соединение с сетью – для получения доступа к услугам «облака»
необходимо постоянное соединение с сетью Интернет. Однако в наше время
это не такой и большой недостаток особенно с приходом технологий сотовой
связи 3G и 4G.
● программное обеспечение и его кастомизация – есть ограничения по ПО
которое можно разворачивать на «облаках» и предоставлять его пользователю.
Пользователь ПО имеет ограничения в используемом ПО и иногда не имеет
возможности настроить его под свои собственные цели.
● конфиденциальность – конфиденциальность данных хранимых на публичных
«облаках» в настоящее вызывает много споров, но в большинстве случаев
эксперты сходятся в том, что не рекомендуется хранить наиболее ценные для
компании документы на публичном “облаке”, так как в настоящее время нет
технологии которая бы гарантировала 100% конфиденциальность хранимых
данных.
● надежность – что касается надежности хранимой информации, то с
уверенностью можно сказать что если вы потеряли информацию хранимую в
“облаке”, то вы ее потеряли навсегда.
● безопасность – “облако” само по себе является достаточно надежной системой,
однако при проникновении на него злоумышленник получает доступ к
огромному хранилищу данных. Еще один минус это использование систем
виртуализации, в которых в качестве гипервизора используются ядра
стандартные ОС такие, как Linux, Windows и др., что позволяет использовать
вирусы.
● дороговизна оборудования – для построения собственного облака компании
необходимо выделить значительные материальные ресурсы, что не выгодно
только что созданным и малым компаниям.
использования.
Виртуальная машина – это точная копия обычного компьютера или сервера, с любой
желаемой ОС и набором установленных программ. Ее действительно нельзя
потрогать, но зато вполне реально ощутить. С ВМ (так сокращенно называют
виртуальную машину) можно работать также, как с физическим сервером или
стационарным компьютером. Для этого достаточно выполнить подключение, причем
для доступа к ВМ используются специальные службы, либо консоль, которую
предоставляет провайдер облачных услуг. Главное, иметь выход в сеть и учетную
запись с соответствующими полномочиями.
С другой стороны, виртуальная машина – это программа, которая эмулирует реально
существующий компьютер или сервер, и запускается в отдельном окне. Она состоит
из виртуального жесткого диска, процессора, памяти, сетевой и видеокарты,
контроллеров устройств и прочих элементов. Прелесть виртуализированного подхода
заключается в возможности контролировать ресурсы машины самостоятельно: вы
можете увеличивать или уменьшать используемые ресурсы по требованию, причем
делать это за считанные секунды.
Как и любая другая программа, виртуальная машина состоит из набора файлов,
которые хранятся на дисках физического сервера, внутри файловой системы
гипервизора. На сегодняшний день существует несколько вариантов гипервизоров,
представленных различными игроками рынка (VMware, Microsoft, Citrix и пр.). Поэтому
у каждого продукта набор и формат файлов отличаются друг от друга. Например,
виртуальная машина может быть представлена в виде файла с расширением .vmdk
или .vhdx. и хранить в себе ОС, драйвера, связанные данные.
Если проиллюстрировать разницу между обычным сервером и виртуальной машиной,
она будет выглядеть так, как показано на картинке. В первом случае, когда мы говорим
о физическом сервере, ОС инсталлируется на железо, используя предустановленные
физические компоненты, во втором случае на сервере установлен гипервизор –
специальная технология, которая создает соответствующую среду для развертывания
в ней виртуальных машин. Обратите внимание, что на одном таком сервере может
быть развернуто множество виртуальных машин, изолированных и независимых друг
от друга. Каждая такая ВМ потребляет столько виртуальных ресурсов (RAM, CPU,
процессор), сколько было задано при ее создании или последующей конфигурации.
Преимущества виртуальных машин:
● Быстрый запуск — Одно из преимуществ виртуальных машин заключается в
высокой скорости развертывания. В отличие от привычного оборудования,
которое еще нужно купить и доставить до места назначения, ВМ позволяет
отойти от этих проблем и больше сконцентрироваться на решении конкретной
задачи.
● Гибкость переноса данных — Если вам нужно перенести данные или
приложения, лучший способ сделать это – воспользоваться виртуальной
машиной. Достаточно мигрировать ВМ с одной локации на другую и вместе с
ней перенесется все содержимое.
● Установка различных ОС — На виртуальную машину можно устанавливать
практически любые ОС, что особенно актуально для разработчиков ПО.
● Мобильность рабочих нагрузок — Поскольку вычислительные ресурсы ВМ не
зависят от базового оборудования, это позволяет перемещать виртуальные
машины между физическими системами. Единственным требованием к
миграции являются совместимый гипервизор и достаточное количество
вычислительных ресурсов на конечном сервере.
● Легкость дублирования — Поскольку содержимое виртуальной машины
инкапсулируется в файл на диске, его можно с легкостью дублировать. Это
позволяет в короткие сроки развернуть нужное количество ВМ с идентичными
характеристиками.
Примеры использования виртуальных машин
По статистике, виртуальные машины часто используются для тестирования. Допустим
разработчику нужно узнать корректно и безопасно ли работает приложение в другой
ОС, например, в разных версиях Windows. Покупать или арендовать для этого
несколько физических серверов, устанавливать разные ОС, чтобы выполнить
проверку – не самый лучший способ. Гораздо проще создать несколько виртуальных
машин и выполнить аналогичные действия за гораздо меньшее время.
Еще один частый пример с использованием ВМ – тестирование и анализ вредоносных
программ. Делать аналогичную проверку на рабочем компьютере крайне небезопасно,
а в изолированной среде, которая гарантирует виртуальная машина, вполне
возможно.
Веб-хостинг.
Веб хостинг (англ. web hosting) — услуга по предоставлению ресурсов для
размещения информации на сервере, постоянно находящемся в сети (обычно
Интернет).
Обычно хостинг входит в пакет по обслуживанию сайта и подразумевает как минимум
услугу размещения файлов сайта на сервере, на котором запущено ПО, необходимое
для обработки запросов к этим файлам (веб-сервер). Как правило, в обслуживание
уже входит предоставление места для почтовой корреспонденции, баз данных, DNS,
файлового хранилища на специально выделенном файл-сервере и т. п., а также
поддержка функционирования соответствующих сервисов. (Wiki.)
На одном сервере может быть достаточно много сайтов — их количество зависит от
количества свободного дискового пространства. Кроме того, важны вычислительные
мощности и пропускные способности интернет-каналов..
Одной из наиболее распространенных хостинговых услуг является так называемый
виртуальный хостинг (англ. shared hosting), при котором множество веб-сайтов
располагаются на одном сервере. Обычно каждый сайт занимает отдельную папку на
сервере, но при этом для управления всем множеством сайтов используется единое
ПО (веб-сервер, сервер баз данных и т.п.)
Веб-хостинг и облачный веб-хостинг.
Сравнение возможностей.
Хостинг – это своеобразная аренда пространства на сервере, где будут храниться
данные и файлы для функционирования сайта. Хостинги призваны решать различные
задачи пользователей, поэтому выделяют несколько их видов. Чем больше сайт, тем
больше ему понадобится пространства для размещения.
На рынке хостинг-услуг пользователям доступны пять основных видов хостинга:
● виртуальный хостинг (Shared) — это сервер, на котором расположено
множество сайтов. Они используют одинаковое программное обеспечение и
имеют равные возможности. На одном сервере может находиться около тысячи
сайтов. Как правило, на таком хостинге располагают небольшие веб-ресурсы,
не требующие больших мощностей и дискового пространства. Благодаря своей
низкой стоимости и отсутствию необходимости в администрировании сервера,
виртуальный хостинг — самый распространенный выбор среди пользователей.
● виртуальный выделенный сервер (VPS-сервер). VPS отличается от
виртуального хостинга тем, что владелец такого сервера может устанавливать
и настраивать любое программное обеспечение. По сути, управление VPS-
сервером не отличается от управления физическим сервером. Сайту на VPS
выделены определенные ресурсы в соответствии с тарифом. Это не всегда
возможно при использовании Shared-хостинга, где ресурсы сервера
равномерно распределяются между всеми сайтами.
● выделенный физический сервер (Dedicated). Пользователю дается отдельный
сервер в дата-центре под самостоятельное управление с возможностью
устанавливать любую операционную систему, менять программное
обеспечение под свои нужды. Такой хостинг используется для масштабных
ресурсоемких проектов с высокими требованиями и хорошо подойдет для
крупных интернет-магазинов с высокой посещаемостью или, например, онлайн-
игр.
● облачный хостинг (Cloud hosting) — объединённая система серверов, на
которых располагаются клиентские сайты. Таким образом, выделяемые для
клиента мощности не ограничиваются одним сервером, а распределяются
сразу между несколькими серверами. Это обеспечивает бесперебойную
работу ресурса вне зависимости от выхода из строя какого-то одного сервера.
Кроме повышенной производительности, облачный хостинг привлекает
клиентов и другими преимуществами. Во-первых, пользователь платит только
за те ресурсы, которые использовал — цена услуги зависит от объемов
потребления мощностей. Во-вторых, на облачном хостинге при изменении
нагрузки выделенные ресурсы увеличиваются или уменьшаются
автоматически. Благодаря такому распределению мощностей клиенту не нужно
рассчитывать возможные объемы потребления ресурсов для правильного
выбора тарифа.
● colocation (размещение оборудования клиента в дата-центре провайдера).
Colocation буквально переводится как «соразмещение», что точно описывает
этот вид хостинг-услуг. Ваш сервер располагается на технологической
площадке провайдера (дата-центре), который обеспечивает его
высокоскоростным интернет-каналом и заботится о прочих необходимых
условиях содержания. По сравнению с остальными видами хостинга Colocation
даёт своему владельцу наибольшую свободу для воплощения идей, но для
работы с ним требуются соответствующие технические знания. Таким образом,
развитие веб-проекта ограничивается лишь вашей фантазией и навыками —
любые необходимые технические параметры, такие как объем дискового
пространства или новое ПО, можно будет добавить по мере необходимости.
Для сайтов с небольшим количеством контента и небольшой аудиторией подойдет
виртуальный хостинг. Альтернатива — облачный хостинг, потому что вы платите
только за те ресурсы, которые использовали.
Если же вы управляете специфичным сайтом, для которого требуются определенные
настройки сервера, закажите услугу VPS-хостинга. А для серьезных ресурсоемких веб-
проектов лучше взять в аренду физический сервер или colocation.
Облачный хостинг обеспечивает доступ к приложениям и веб-сайтам через
облачные ресурсы. В отличие от обычного хостинга решения не развертываются на
одном сервере. Вместо этого приложение или сайт размещается в сети связанных
виртуальных и физических облачных серверов, что гарантирует гибкость и
масштабируемость.
Основные возможности:
● Приложения и решения развертываются в облачной сети, а не на отдельном
локальном сервере.
● Ресурсы масштабируются в зависимости от нужд пользователя.
● Организации платят только за используемые ресурсы.
● Есть поддержка баз данных SQL (включая MySQL) и NoSQL.
● Решения автоматизированы и управляются через API, веб-порталы и
мобильные приложения.
Уровни протоколов
Сетевой протокол - это набор правил, позволяющий осуществлять соединение и
обмен данными между двумя и более включенными в сеть компьютерами.Фактически
разные протоколы зачастую описывают лишь разные стороны одного типа связи;
взятые вместе, они образуют так называемый стек протоколов. Названия "протокол" и
"стек протоколов" также указывают и на программное обеспечение, которым
реализуется протокол.
Уровни протоколов
Наиболее распространённой системой классификации сетевых протоколов является
так называемая модель OSI. В соответствии с ней протоколы делятся на 7 уровней по
своему назначению - от физического (формирование и распознавание электрических
или других сигналов) до прикладного (API для передачи информации приложениями):
● Прикладной уровень, Application layer - Верхний (7-й) уровень модели,
обеспечивает взаимодействие сети и пользователя. Уровень разрешает
приложениям пользователя доступ к сетевым службам, таким как обработчик
запросов к базам данных, доступ к файлам, пересылке электронной почты.
Также отвечает за передачу служебной информации, предоставляет
приложениям информацию об ошибках и формирует запросы к уровню
представления. Пример: HTTP, POP3, SMTP.
● Уровень представления, Presentation layer - 6-й уровень отвечает за
преобразование протоколов и кодирование/декодирование данных. Запросы
приложений, полученные с уровня приложений, он преобразует в формат для
передачи по сети, а полученные из сети данные преобразует в формат,
понятный приложениям. На уровне представления может осуществляться
сжатие/распаковка или кодирование/декодирование данных, а также
перенаправление запросов другому сетевому ресурсу, если они не могут быть
обработаны локально.
● Сеансовый уровень, Session layer - 5-й уровень модели отвечает за
поддержание сеанса связи, что позволяет приложениям взаимодействовать
между собой длительное время. Сеансовый уровень управляет
созданием/завершением сеанса, обменом информацией, синхронизацией
задач, определением права на передачу данных и поддержанием сеанса в
периоды неактивности приложений. Синхронизация передачи обеспечивается
помещением в поток данных контрольных точек, начиная с которых
возобновляется процесс при нарушении взаимодействия.
● Транспортный уровень, Transport layer - 4-й уровень модели, предназначен для
доставки данных без ошибок, потерь и дублирования в той
последовательности, как они были переданы. При этом неважно, какие данные
передаются, откуда и куда, то есть он предоставляет сам механизм передачи.
Блоки данных он разделяет на фрагменты, размер которых зависит от
протокола, короткие объединяет в один, а длинные разбивает. Протоколы этого
уровня предназначены для взаимодействия типа точка-точка. Пример: TCP,
UDP.
● Сетевой уровень, Network layer - 3-й уровень сетевой модели OSI,
предназначен для определения пути передачи данных. Отвечает за
трансляцию логических адресов и имён в физические, определение кратчайших
маршрутов, коммутацию и маршрутизацию, отслеживание неполадок и заторов
в сети. На этом уровне работает такое сетевое устройство, как маршрутизатор.
● Канальный уровень, Data Link layer - этот уровень предназначен для
обеспечения взаимодействия сетей на физическом уровне и контроля за
ошибками, которые могут возникнуть. Данные, полученные с физического
уровня, он упаковывает во фреймы, проверяет на целостность, если нужно
исправляет ошибки и отправляет на сетевой уровень. Канальный уровень
может взаимодействовать с одним или несколькими физическими уровнями,
контролируя и управляя этим взаимодействием. Спецификация IEEE 802
разделяет этот уровень на 2 подуровня - MAC (Media Access Control)
регулирует доступ к разделяемой физической среде, LLC (Logical Link Control)
обеспечивает обслуживание сетевого уровня. На этом уровне работают
коммутаторы, мосты. В программировании этот уровень представляет драйвер
сетевой платы, в операционных системах имеется программный интерфейс
взаимодействия канального и сетевого уровней между собой, это не новый
уровень, а просто реализация модели для конкретной ОС. Примеры таких
интерфейсов: ODI, NDIS.
● Физический уровень, Physical layer - самый нижний уровень модели,
предназначен непосредственно для передачи потока данных. Осуществляет
передачу электрических или оптических сигналов в кабель или в радиоэфир и
соответственно их приём и преобразование в биты данных в соответствии с
методами кодирования цифровых сигналов. Другими словами, осуществляет
интерфейс между сетевым носителем и сетевым устройством. На этом уровне
работают концентраторы (хабы), повторители (ретрансляторы) сигнала и
медиаконвертеры. Функции физического уровня реализуются на всех
устройствах, подключенных к сети. Со стороны компьютера функции
физического уровня выполняются сетевым адаптером или последовательным
портом.
В основном используются протокол TCP/IP
Определение:
Transmission Control Protocol/Internet Protocol, TCP/IP (Протокол управления
передачей/Протокол Интернета)
Большинство операционных систем сетевых серверов и рабочих станций
поддерживает TCP/IP, в том числе серверы NetWare, все системы Windows, UNIX,
последние версии Mac OS, системы OpenMVS и z/OS компании IBM, а также
OpenVMS компании DEC. Кроме того, производители сетевого оборудования
создают собственное системное программное обеспечение для TCP/IP, включая
средства повышения производительности устройств. Стек TCP/IP изначально
применялся на UNIX-системах, а затем быстро распространился на многие другие
типы сетей.
Протоколы локальных сетей
● IPX/SPX;
● NetBEUI;
● AppleTalk;
● TCP/IP;
● SNA;
● DLC;
● DNA;
Свойства протоколов локальной сети
В основном протоколы локальных сетей имеют такие же свойства, как и Другие
коммуникационные протоколы, однако некоторые из них были разработаны давно, при
создании первых сетей, которые работали медленно, были ненадежными и более
подверженными электромагнитным и радиопомехам. Поэтому для современных
коммуникаций некоторые протоколы не вполне пригодны. К недостаткам таких
протоколов относится слабая защита от ошибок или избыточный сетевой трафик.
Кроме того, определенные протоколы были созданы для небольших локальных сетей
и задолго до появления современных корпоративных сетей с развитыми средствами
маршрутизации.
Протоколы локальных сетей должны иметь следующие основные характеристики:
● обеспечивать надежность сетевых каналов;
● обладать высоким быстродействием;
● обрабатывать исходные и целевые адреса узлов;
● соответствовать сетевым стандартам, в особенности - стандарту IEEE 802.
Понятие протокола Интернет
Очевидно, что рано или поздно компьютеры, расположенные в разных точках земного
шара, по мере увеличения своего количества должны были обрести некие средства
общения. Такими средствами стали компьютерные сети. Сети бывают локальными и
глобальными. Локальная сеть - это сеть, объединяющая компьютеры, географически
расположенные на небольшом расстоянии друг от друга - например, в одном здании.
Глобальные сети служат для соединения сетей и компьютеров, которых разделяют
большие расстояния - в сотни и тысячи километров. Интернет относится к классу
глобальных сетей.
Простое подключение одного компьютера к другому - шаг, необходимый для создания
сети, но не достаточный. Чтобы начать передавать информацию, нужно убедиться,
что компьютеры "понимают" друг друга. Как же компьютеры "общаются" по сети?
Чтобы обеспечить эту возможность, были разработаны специальные средства,
получившие название "протоколы". Протокол - это совокупность правил, в
соответствии с которыми происходит передача информации через сеть. Понятие
протокола применимо не только к компьютерной индустрии. Даже те, кто никогда не
имел дела с Интернетом, скорее всего работали в повседневной жизни с какими-либо
устройствами, функционирование которых основано на использовании протоколов.
Так, обычная телефонная сеть общего пользования тоже имеет свой протокол,
который позволяет аппаратам, например, устанавливать факт снятия трубки на другом
конце линии или распознавать сигнал о разъединении и даже номер звонящего.
Исходя из этой естественной необходимости, миру компьютеров потребовался единый
язык (то есть протокол), который был бы понятен каждому из них.
Основные протоколы Интернет:
● TCP/IP
● POP3
● SMTP
● FTP
● HTTP
● IMAP4
● WAIS
● Gorpher
● WAP