По вашему запросу ничего не найдено :(
Убедитесь, что запрос написан правильно, или посмотрите другие наши статьи:
img
Использование REST API является полезной функцией для реализации ваших сценариев. Вы можете получить доступ к новым функциям, а также расширить возможности создания новых, более продвинутых сценариев. Опыт многих пользователей показывает, что, когда начинаешь использовать REST API в скриптах, то чувствуешь себя довольно неуклюже и непривычно. В этой заметке мы обсудим: Что такое REST API Как читать документацию Как использовать API REST с PowerShell Некоторые советы и подсказки, как облегчить и улучшить практику Что такое "REST"? REST, или RESTful API, это API, который использует HTTP запросы для получения, добавления, удаления или манипулирования данными в различных сервисах. Как правило, то, что нужно сделать с данными, решается тем, какой HTTP-метод вы используете. Вот краткий список методов HTTP и их применение в REST API: GET-Read POST-Create PATCH-Partial update/modify PUT-Update/replace DELETE-Remove Данные, которые возвращает API REST, обычно представляются в формате JSON. Теперь давайте начнём с нашего первого API запроса! Что такое API Работа с документацией Для использования различных API REST необходимо научиться читать и интерпретировать документацию. К счастью, если вы знаете, как читать один тип документации, вы сможете быстро научиться читать другие. В этой статье мы используем petstore.swagger.io, так как он использует популярный фреймворк Swagger, который довольно часто используется в разработке. На предыдущем рисунке показана наиболее важная информация о конечных точках REST API: HTTP-метод-GET/POST/DELETE и т.д. URL-адрес, связанный с конечной точкой REST API (Базовый URL, как правило, представлен в верхней части страницы документации) Краткое описание Подробности Первая страница документации просто замечательная, и, как правило, с помощью этой информации можно выполнить большинство запросов, требующих использования метода HTTP GET. Но такие методы, как POST и SET, обычно требуют, чтобы вы щелкнули и развернули строку, чтобы получить больше информации. Если вы нажмете на одну из строк, то получите информацию, которая выглядит так: Здесь мы представили конечную точку REST, которая может создать новый объект pet. Здесь указывается, как должен выглядеть JSON, предоставленный в теле POST, и какой тип контента он принимает. Другие конечные точки REST указывают, что это за параметры, каким типом данных они должны быть и т.д. Это основы для чтения документации. Теперь, когда общие принцип более-менее ясны, пора начать использовать REST API с PowerShell. Получение первых данных (GET) Используя REST API с PowerShell обычно довольно просто, используется встроенные командлеты, таким образом, нет необходимости в дополнительных модулях. Мы собираемся извлечь данные с помощью метода GET в конечной точке /pet/{ petId}. Если развернуть конечную точку /pet/{ petId} в документации, можно увидеть, что {petId} на самом деле является параметром, который принимает целое число. Это делает URL-адрес для выборки объекта pet с идентификатором 1: https://petstore.swagger.io/v2/pet/1 В документации SWAGGER REST API обычно отображается базовый URL-адрес в верхней части страницы. Теперь начнем с PowerShell. Откройте окно терминала и введите: PS51 > Invoke-RestMethod -Method GET -ContentType "application/json" -Uri "https://petstore.swagger.io/v2/pet/1" id : 1 category : @{id=0; name=string} name : doggie photoUrls : {string} tags : {@{id=0; name=string}} status : available Поскольку в ответе от сервера возвращается тип содержимого "application/json" используется метод Invoke-RestMethod, который автоматически преобразует возвращаемый JSON в объект. Ошибка 404 Not found, как правило, означает, что объект не найден или URL-адрес введен неправильно. Итак, мы выполнили первый вызов REST API. Но возможности метода GET для получения данных довольно ограничены, так что давайте создадим что-нибудь с помощью метода POST. Создание объекта методом POST Метод POST чаще всего используется для создания, например, пользователей или записей и т.д. Запрос POST отправляет BODY, содержащий информацию, конечной точке REST, обычно в формате JSON, но он также может быть в виде формы с кодировкой URL. Вы узнаете, как создать объект JSON, который можно отправить в конечную точку/pet. Можно увидеть, как должен выглядеть JSON, если развернуть строку POST/pet в документации. Начнем с создания хэштаблицы, который можно преобразовать в объект JSON. Raw JSON следует избегать в скриптах PowerShell, поскольку он ограничивает его возможности. $Body = @{ id = 19 category = @{ id = 45 name = "Whatever" } name = "Dawg" photoUrls = @( "string" ) tags = @( @{ id = 0 name = "string" } ) status = "available" } Если вам трудно создать хештаблицу, который преобразуется в нужный JSON, установите модуль PsdKit и используйте команду $ JsonString | ThreadTo-Psd Теперь имеется хэш-таблица, которую можно преобразовать в строку JSON и POST в конечную точку/pet: $JsonBody = $Body | ConvertTo-Json $Uri = "https://petstore.swagger.io/v2/pet" Invoke-RestMethod -ContentType "application/json" -Uri $Uri -Method Post -Body $JsonBody id : 19 category : @{id=45; name=Whatever} name : Dawg photoUrls : {string} tags : {@{id=0; name=string}} status : available При создании объекта он обычно получает созданный для подтверждения объект. Использование DELETE. Метод DELETE используется для удаления данных, а применение очень схоже с методом GET. PS51 > Invoke-RestMethod -Method DELETE -ContentType "application/json" -Uri "https://petstore.swagger.io/v2/pet/1" Только убедитесь, что не удалите ничего важного Использование PUT Метод PUT используется для обновления данных. Это делается аналогично методу POST путем представления полного или частичного объекта JSON: PS51> $Body = [PSCustomObject]@{ id = 19 name = "Dawg with a new name" } PS51> $JsonBody = $Body | ConvertTo-Json PS51> $Uri = "https://petstore.swagger.io/v2/pet" PS51> Invoke-RestMethod -ContentType "application/json" -Uri $Uri -Method PUT -Body $JsonBody id name photoUrls tags -- ---- --------- ---- 19 Dawg with a new name {} {} Обычно API REST возвращает объект JSON с использованными и/или обновленными данными. Можно увидеть, что объект был обновлен с помощью метода GET: PS 51> Invoke-RestMethod -ContentType "application/json" -Uri "https://petstore.swagger.io/v2/pet/19" id : 19 category : @{id=45; name=Whatever} name : Dawg with a new name photoUrls : {string} tags : {@{id=0; name=string}} status : available Создание функций Писать эти команды каждый раз вручную может стать довольно утомительным и на самом деле не масштабируемым. Если мы вызываем конечную точку несколько раз, то лучше создать для нее функцию. Это довольно просто и нужно написать всего несколько строк: Function Get-PetstorePet { [cmdletbinding()] param( # Id of the pet [Parameter(Mandatory,ValueFromPipeline)] [int]$Id ) Begin{} Process{ $RestMethodParams = @{ Uri = "https://petstore.swagger.io/v2/pet/$Id" ContentType = "application/json" Method = "GET" } Invoke-RestMethod @RestMethodParams } End{} } После создания функции ее можно вызвать в сценарии: PS51> Get-PetstorePet -Id 1 id name photoUrls tags -- ---- --------- ---- 1 Doggie {http://picture.url} {} Это можно сделать и для метода POST для создания нового объекта pet в Petstore: Function Add-PetstorePet { [cmdletbinding()] param( # Id of the pet [Parameter(Mandatory,ValueFromPipelineByPropertyName)] [int]$Id, # Name of the pet [Parameter(Mandatory,ValueFromPipelineByPropertyName)] [string]$Name, # Status of the pet (available, sold etc) [Parameter(Mandatory,ValueFromPipelineByPropertyName)] [string]$Status, # Id of the pet category [Parameter(Mandatory,ValueFromPipelineByPropertyName)] [int]$CategoryId, # Name of the pet category [Parameter(Mandatory,ValueFromPipelineByPropertyName)] [string]$CategoryName, # URLs to photos of the pet [Parameter(Mandatory,ValueFromPipelineByPropertyName)] [string[]]$PhotoUrls, # Tags of the pets as hashtable array: @{Id=1;Name="Dog"} [Parameter(Mandatory,ValueFromPipelineByPropertyName)] [Hashtable[]]$Tags ) Begin{} Process{ $Body = @{ id = $Id category = @{ id = $CategoryId name = $CategoryName } name = $Name photoUrls = $PhotoUrls tags = $Tags status = $Status } $BodyJson = $Body | ConvertTo-Json $RestMethodParams = @{ Uri = "https://petstore.swagger.io/v2/pet/" ContentType = "application/json" Method = "Post" Body = $BodyJson } Invoke-RestMethod @RestMethodParams } End{} } И вызов этой функции PowerShell намного упрощает задачу: PS51> $AddPetStorePetsParams = @{ Id = 44 Name = "Birdie" Status = "available" CategoryId = 50 CategoryName = "Hawks" PhotoUrls = "https://images.contoso.com/hawk.jpg" Tags = @( @{ Id=10 Name="Not eagles" } ) } PS51> Add-PetStorePet @AddPetStorePetsParams id : 44 category : @{id=50; name=Hawks} name : Birdie photoUrls : {https://images.domain.com/hawk.jpg} tags : {@{id=0}} status : available Возможно, что многие модули, которые вы ежедневно используете, состоят из функций, который за кулисами используют REST API. Заключение Обучение работы с REST API, главным образом основано на чтении документации. Мы использовали документацию на основе SWAGGER в этом посте, так как она представляет, как могут выглядеть другие стили документации. Кроме того, преобразование вызовов API в функцию может сэкономить много времени, упростить работу и очистить сценарии.
img
В каждом успешном бизнесе наступает время, когда необходимо обновить свои ресурсы, и хостинг - одним из первых. Чтобы справиться с количеством пользователей, по мере того как ваш бизнес становится всё более и более популярным, возникает серьёзная необходимость в обновлении ваших хостинг-серверов с "Shared" на VPS. Я уверен, что вы знаете, какое влияние оказывает для вашего бизнеса чрезмерное использование ресурсов сервера. Если нет, то вам лучше не знать, потому что это удручает. Переход от "Shared" к VPS является лучшим выбором, поскольку VPS находится между “Shared” и “Cloud”. В то время как "Shared" не будет отвечать вашим потребностям, “Cloud” может оказаться совершенно излишним, учитывая, что вы всё это время использовали "Shared". Прежде чем перейти к списку лучших управляемых хостинга VPS, вот некоторые основные преимущества его использования. Основные преимущества Даёт вам полный контроль над сервером Когда вы выбираете VPS-хостинг, вы получаете полный корневой доступ к серверу. Это помогает вам быть у руля вашего сервера и иметь возможность настроить его любым удобным для вас способом. Например, вы можете установить любое пользовательское программное обеспечение, не дожидаясь, пока хостинг-провайдер его поддержит. Повышает надежность веб-сайта "Shared" хостинг буквально похож на выражение: "Если ты умрёшь, я умру с тобой." Это означает, что есть вероятность того, что вы подвергнете данные своего сайта риску, если что-то пойдет не так с чьим-то сайтом на том же сервере, потому что он общий. С другой стороны, сервер хостинга VPS специально предназначен только для вашего сайта. Вы не должны беспокоиться о том, что происходит на других веб-сайтах, потому что их просто не будет на вашем сервере, вы будете единственным. Позволяет легко масштабировать Хостинг VPS дает вам свободу масштабировать свои ресурсы плавно по мере роста. Это очень важно, когда вы собираетесь превысить ограничения сервера, так что вы можете легко увеличить его масштаб без каких-либо простоев или технических проблем. Теперь давайте посмотрим на список. A2 Hosting Благодаря простой в использовании панели управления и мощному изолированному серверу, управляемый VPS хостинг A2 Hosting может тонко настраиваться под тяжелую работу. Он имеет 99,9% показатель безотказной работы, а также интеллектуальную службу поддержки, которая будет готова прийти на помощь, когда бы вы к ним не обратились. Цены начинаются с 25 долларов в месяц, а сам хостинг начального уровня имеет потрясающие возможности: 4 ГБ оперативной памяти 75 ГБ памяти Бесплатный SSL и SSD Выберите один из четырех центров обработки данных - в Аризоне, Мичигане, Амстердаме или Сингапуре. Во всех планах вы получаете опцию под названием «Turbo Server», которая дает вам в 20 раз большую скорость, что довольно привлекательно. Не говоря уже о том, что A2 Hosting также уделяет большое внимание их безопасности. Liquid Web С Liquid Web вы получаете мощь выделенного сервера и гибкость облачного хостинга. Их VPS-хостинг оснащен несколькими надежными функциями безопасности и является достаточно быстрым. С любым тарифным планом вы получаете преимущества Cloudflare CDN, ServerSecure и защиту от DDoS атак. Самое замечательное в использовании VPS-хостинга Liquid Web - это серверные кластеры, которые создаются на заказ и предназначены для популярных приложений, таких как WordPress, WooCommerce и др. Их команда поддержки также поможет вам управлять всем, так чтобы вам не пришлось от отчаяния вырывать волосы из головы. Цены на услуги Liquid Web начинаются от $59 в месяц. HostGator HostGator предлагает все необходимые настройки и набор функций безопасности, таких как конфигурация дисков RAID 10 и центр обработки данных блоков HVAC. Вы можете легко начать с малого и быстро масштабироваться одним нажатием кнопки. Кроме того, вам доступны следующие пункты: Размещение неограниченных доменов и субдоменов Добавление неограниченное количество адресов электронной почты Создание баз данных Удобное добавление частных имён серверов Создание учётных записей FTP HostGator работает с такими лидерами индустрии, как Intel и AMD, постоянно анализирует и обеспечивает стабильную производительность на своих серверах. Кроме того, их служба поддержки доступна 24/7 через чат, телефон и электронную почту. Стоимость начального тарифного плана VPS хостинга HostGator составляет всего $19.95 в месяц. DreamHost Начиная всего с 10 долларов в месяц, DreamHost можно легко настроить и управлять. Он оснащен необходимыми функциями производительности и безопасности. Вы можете наслаждаться неограниченной пропускной способностью и трафиком, а также получить бесплатные SSD, SSL, TLS, электронную почту и безлимитные домены. Кроме того, данный хостинг-провайдер гарантирует 100% гарантию бесперебойной работы и неограниченную круглосуточную поддержку, которая мгновенно ответит на все ваши запросы. Неограниченные базы данных MySQL также включены в каждый план, потому что это «workhouse» в мире веб баз данных. Необходимо также отметить, что вы также получаете автоматическое обновление программного обеспечения и возможность увеличения вашей оперативной памяти и хранилища всего за 10 секунд. OVHcloud OVHcloud довольно прост, но при этом обеспечивает отличную производительность, позволяет действительно легко масштабировать и настраивать ваш сервер VPS хостинга. Вы можете использовать все ваши «hardware» ресурсы для вашего сайта (сайтов), а также получить полный админ доступ к вашему виртуальному серверу. Данный сервер VPS-хостинга может обрабатывать неограниченный трафик с максимальной пропускной способностью 2GB/s. Это много для практически любого веб-сайта. Кроме того, вы получаете несколько вариантов резервного копирования и впечатляющий коэффициент работоспособности. Тарифные планы OVHcloud начинаются всего с $5.52 в месяц при ежегодной оплате. Цена довольно низкая, в сравнении с тем, что они предлагают. Так что, если цена является вашим основным сдерживающим фактором, этот хостинг-провайдер может быть именно тем, что вы ищете. Bluehost Построенный с нуля с использованием всех SSD-накопителей, Bluehost является известной компанией в мире хостинг пространств. Пройдя регистрацию, вы сможете наслаждаться такими преимуществами: Простота настройки и мгновенный переход к работе Бесплатное доменное имя на один год Экстремальная производительность, благодаря технологии с открытым исходным кодом Гарантированные ресурсы с помощью KVM - гипервизора Полнофункциональная панель управления с расширенными функциями Кроме того, вы получаете помощь экспертов 24 часа в сутки, 7 дней в неделю, через различные средства массовой коммуникации. Если вы почувствуете, что Bluehost отличный для вас вариант, то можете начать с их стартового тарифного плана по цене 15 долларов в месяц. Fasthosts Как следует из названия, Fasthosts очень быстрый, но в то же время вполне доступный. Вы можете начать выбирать с VPS - пакета, а затем настроить его, добавив хранилище, оперативную память и процессоры в соответствии с вашими требованиями. Вот некоторые основные особенности данного хостинг-провайдера: Неограниченный трафик 99% гарантия бесперебойной работы Сертифицированные британские дата-центры, которые являются безопасными и защищёнными Полный корневой (root) доступ Бесплатный SSL-сертификат Специальные ресурсы, гарантирующие стабильность и надёжность Круглосуточная поддержка Вы можете запустить VPS хостинг всего за 55 секунд. Это звучит как безумие, но именно и определяет само название - быть быстрым. Заключение Вышеперечисленные услуги VPS-хостинга помогут вам справиться с растущим количеством пользователей и дадут вам гораздо больший контроль над вашими ресурсами.
img
Телефонная станция Cisco Unified Communications Manager (далее CUCM) является системой обработки вызовов на базе программного обеспечения, разработанного компанией Cisco Systems. Первая версия CUCM была анонсирована в 1997 году, под названием CallManager 1.0. На момент написания статьи последняя и самая актуальная версия - CUCM 10.5. CUCM работает с такими элементами сетей передачи голоса поверх протокола IP (VoIP) как: шлюзы, телефонные аппараты, мосты для конференцсвязи, голосовая почта, видеоконференцсвязью и многими другими. Чаще всего, для работы с оконечными устройствами CUCM использует собственный протокол сигнализации, разработанный компанией Cisco Systems под названием Skinny Client Control Protocol (SCCP). Помимо собственных разработок, CUCM поддерживает и открытые стандарты, такие как H.323, Media Gateway Control Protocol (MGCP) или Session Initiation Protocol (SIP). Схема работы CUCM приведена рисунке ниже: На рисунке схематично обозначена схема работы CUCM в рамках корпоративной сети. Пунктирными линиями обозначены Real-time Transport Protocol (RTP) потоки, которые переносят в поле информационной (полезной) нагрузки медиа – данные разговора. Особое внимание следует обратить на расположение линий направления RTP – они проходят напрямую от телефонного аппарата до телефонного аппарата. Телефонная станция CUCM контролирует телефонную сигнализацию, на данном примере, по протоколам SIP/SCCP. Это означает, что если во время разговора CUCM перестанет работать, разговор между абонентами будет продолжен, но такие функции как удержание, трансфер, отбой вызова и другие функции управления вызовом будут не доступны. Цифровая телефонная станция CUCM выполнена на базе операционной системы Linux с закрытыми правами администратора и с предустановленной базой данных IBM Informix. В совокупности, такой вид операционной системы носит название VOS (voice operating system). Продукт устанавливается пакетом, сначала VOS, а затем само программное обеспечение. Интерфейс управления цифровой телефонной станцией CUCM выполнен как WEB – приложение, доступное через протокол HyperText Transfer Protocol (HTTP). Интерфейс имеет удобную навигацию по вкладкам, пять разных Graphical user interface (GUI) для сегментации функций администрирования и возможность предоставлять уровни доступа администраторам. Основной интерфейс проиллюстрирован на рисунке: Как было сказано ранее, CUCM имеет пять различных панелей администрирования: Cisco Unified CM Administration Cisco Unified Reporting Disaster Recovery System Cisco Unified Serviceability Cisco Unified OS Administration Интерфейс Cisco Unified CM Administration – основной интерфейс администратора. Здесь можно настраивать системные настройки, параметры маршрутизации вызовов, настройка медиа – ресурсов, таких как Music On Hold (MOH), параметров интеграции с другими продуктами компании Cisco Systems, конфигурацию телефонных аппаратов, шлюзов, «привратников» (gatekeepers), администрирование групп пользователей и многие другие настройки. Интерфейс Cisco Unified Reporting обеспечивает доступ к отчетам о работе телефонной станции. Данная консоль отчетности собирает данные с различных системных журналов и предоставляет эту информацию в просто для администратора виде. Интерфейс Disaster Recovery System (DRS) создан для резервирования конфигурации, или как принято говорить «бэкапа» телефонной станции CUCM. Бэкап может происходить как локально на сервер, так и на удаленные площадки по протоколу SSH File Transfer Protocol (SFTP). Графический интерфейс Cisco Unified Serviceability предоставляет наблюдение и контроль работоспособности телефонной станции, включая в себя такие настройки как конфигурацию опций оповещения о проблемах в работе CUCM, систему трассировки для обнаружения причин проблем, богатое меню инструментов, в котором можно смотреть отчеты Call Detail Record (CDR). Данный интерфейс позволяет настроить параметры Simple Network Management Protocol (SNMP), созданного для управления и контроля. Последним в списке интерфейсов значится Cisco Unified OS Administration. Он предназначен для мониторинга аппаратной платформы и различных системных статистических данных, таких как: загруженность центрального процессора, свободного пространства жестких дисков, мониторинга системного времени, информации об IP – адресах, работы в рамках протокола Internet Control Message Protocol (ICMP). Еще один немаловажный интерфейс, это Command Line Interface (CLI) – консоль. Он удобен для перезагрузки сервиса, например, при недоступности основного графического интерфейса через порт 8080. Cisco UCM - решение для крупного бизнеса или государственного учреждения Телефонная станция CUCM это гибкое и масштабируемое решение. Одним из важных преимуществ является возможность кластеризации серверов, или другими словами объединения. В общем случае, в одном кластере может работать до 20 серверов. Среди них только 8 серверов занимаются обработкой вызовов, остальные, это дополнительные сервера предназначенные для расширения функционала кластера (сервисы музыка на удержании, Trivial File Transfer Protocol (TFTP) сервер и многие другие). Работая в кластере, сервера CUCM могут работать с 30 000 абонентами. При работе в кластере различают два типа серверов – «паблишер» (публикатор) и «сабскрайбер» (подписчики). В данной модели один сервер, который является «паблишером» дублирует базу данных на все остальные сервера, которые являются «сабскрайберами. Схема работы кластера показана на рисунке: Большое преимущество IP PBX CUCM – это возможность развернуть сервер в виртуальной среде. Системы виртуализации появились после того, как соотношение эффективности использования одного аппаратного сервера к стоимости данного сервера, с каждым днем стремилось к меньшему и меньшему значению. Виртуализация позволяет делить аппаратные ресурсы сервера между различными приложениями. Например, предприятие покупает аппаратный сервер, для конкретной цели. Системный администратор данной организации устанавливает на него операционную систему на базе Windows, а затем, приложение, для которого был куплен этот сервер. Спустя некоторое время, у организации появилось требование для внедрения в корпоративный контур бизнес – приложений, которые работают на базе Linux. За неимением систем виртуализации, компания сталкивается с новой проблемой – покупкой нового сервера, по причине того, что разнородные операционные системы не смогут существовать на одном и том же аппаратном ресурсе. При наличии системы виртуализации, компания может установить специальное программное обеспечение «гипервизор» на имеющийся Windows сервер. Гипервизор позволит изолировать друг от друга различные операционные системы на одном и том же сервере, обеспечит безопасность, защиту, целостность данных, предоставит централизованное и удобное управление виртуальным серверным ресурсом компании, а так же множество встроенных средств и инструментов автоматизации, предназначенных для автоматического резервирования данных и конфигурации серверов. Предприятия решит поставленную задачу, оптимизировав расходы на аппаратные сервера. Преимущества Выделим основные конкурентные преимущества систем виртуализации Экономия расходов предприятия на покупке дополнительного сервера. Экономия места в телекоммуникационной стойке. Снижение тепловыделения и электропотребления. «Бесшовное» обновление операционной системы сервера, позволяющее не производить перезагрузку и не останавливать работу приложения. Централизация управления и администрирования серверов. Гибкая настройка конфигурации, автоматического резервирования. Создание отказоустойчивости внутренними средствами программного обеспечения гипервизора. Общий принцип работы систем виртуализации проиллюстрирован на рисунке: Виртуализация CUCM Ведущие производители систем виртуализации, это такие компании как VMware, Hyper-V, Xen и Citrix Systems.
ВЕСЕННИЕ СКИДКИ
40%
50%
60%
До конца акции: 30 дней 24 : 59 : 59