---
slideOptions:
# Display controls in the bottom right corner
controls: true
# Display a presentation progress bar
progress: true
# Set default timing of 2 minutes per slide
defaultTiming: 60
# Display the page number of the current slide
slideNumber: true
# Push each slide change to the browser history
history: false
# Enable keyboard shortcuts for navigation
keyboard: true
# Enable the slide overview mode
overview: true
# Vertical centering of slides
center: true
# Enables touch navigation on devices with touch input
touch: true
# Loop the presentation
loop: false
# Change the presentation direction to be RTL
rtl: false
# Randomizes the order of slides each time the presentation loads
1. shuffle: false
# Turns fragments on and off globally
fragments: true
# Flags if the presentation is running in an embedded mode,
# i.e. contained within a limited portion of the screen
embedded: false
# Flags if we should show a help overlay when the questionmark
# key is pressed
help: true
# Flags if speaker notes should be visible to all viewers
showNotes: true
# Global override for autolaying embedded media (video/audio/iframe)
# - null: Media will only autoplay if data-autoplay is present
# - true: All media will autoplay, regardless of individual setting
# - false: No media will autoplay, regardless of individual setting
autoPlayMedia: null
# Number of milliseconds between automatically proceeding to the
# next slide, disabled when set to 0, this value can be overwritten
# by using a data-autoslide attribute on your slides
autoSlide: 0
# Stop auto-sliding after user input
autoSlideStoppable: true
# Use this method for navigation when auto-sliding
autoSlideMethod: Reveal.navigateNext
# Enable slide navigation via mouse wheel
mouseWheel: false
# Hides the address bar on mobile devices
hideAddressBar: true
# Opens links in an iframe preview overlay
previewLinks: true
# Transition style
transition: 'convex'
# none/fade/slide/convex/concave/zoom
# Transition speed
transitionSpeed: 'default'
# default/fast/slow
# Transition style for full page slide backgrounds
backgroundTransition: 'fade'
# none/fade/slide/convex/concave/zoom
# Number of slides away from the current that are visible
viewDistance: 3
# Parallax background image
parallaxBackgroundImage: ''
# e.g. "'https://s3.amazonaws.com/hakim-static/reveal-js/reveal-parallax-1.jpg'"
# Parallax background size
parallaxBackgroundSize: ''
# CSS syntax, e.g. "2100px 900px"
# Number of pixels to move the parallax background per slide
# - Calculated automatically unless specified
# - Set to 0 to disable movement along an axis
parallaxBackgroundHorizontal: null
parallaxBackgroundVertical: null
# The display mode that will be used to show slides
display: 'block'
# Enable spotlight mode
spotlight:
enabled: false
# Enable timer (in minutes)
allottedMinutes: 60
---
#### Мы скоро начнем!
Пожалуйста <i class="fa fa-tv"></i> **будьте готовы** к <i class="fa fa-share-alt fa-18"></i> началу выступления.
:computer: :electric_plug: :headphones: :microphone: :coffee: :smiley:
---
<!-- .slide: data-background="https://i.imgur.com/xK6ulQM.jpg" data-background-color="#005" -->
<div style="color: #000;">
Аналитика и мониторинг инфраструктуры и приложений в ЦОД
</div>
##### Часть 4:
##### Service Discovering, Applications monitoring & API
##### :clock2: 00:60
----

----

----
<!-- .slide: data-background="#1A237E" -->
## 04. Service Discovering, Applications monitoring & API
#### :spiral_calendar_pad: Agenda
[TOC]
----
##### Что дальше?
Когда хочется больше...

----
* Интеграция с LogInsight
* Интеграция со средствами автоматизации vRO,vRA
* Расширение функциональности за счет BlueMedora TVS
* Интеграция c opensource-инструментами мониторинга
* Интеграция с сторонними DCIM/ServiceDesk/CMDB инструментами
---
##### Интеграция с Log Insight

По сути - добавляйте любые системы и типы данных – как структурированные логи так и нет, вывод скриптов (Powershell, PowerCLI etc)
:::info
:bulb:На События в LI можно создавать алерты отправляемые в vROps
:::
----
##### 1) Готовое
content-packs от VMware: (бесплатные)
* Active Directory
* Exchange
* SQL
* Windows, ...
----
И от партнеров: (платные)
https://marketplace.vmware.com/vsx
https://bluemedora.com/products/vmware-vrealize-log-insights-content-pack
Oracle Databases, NetApp - Data ONTAP, HPE Nimble Storage, HPE Servers, MongoDB, Nutanix, SolarWinds, Pivotal Cloud Foundry, Citrix NetScaler...
----
##### 2) Content-packs от комьюнити и свои (бесплатные)
https://code.vmware.com/web/loginsight
https://code.vmware.com/samples
(+Кастомные парсеры и дашбоарды)
---
А вот еще MP для Veeam
https://mycloudrevolution.com/de/projekte/vrealize-log-insight-veeam-content-pack/
https://github.com/vMarkusK/vLI-Veeam-CP
https://code.vmware.com/samples/1493/vRealize-Log-Insight-Content-Pack-for-Veeam#
---
##### Интеграция и API
vROPs предоставляет возможности расширения функционала и интеграции благодаря нескольким инструментам -PowerCli, REST API, адаптеры, кастомные утилиты

----
#### Путь 1: PowerCli (PowerShell)
https://code.vmware.com/web/tool/12.0.0/vmware-powercli
(by the way - это под тысячу cmd-летов по нашим продуктам сейчас)
:::info
:fire:VMware.VimAutomation.vROps module has been updated to support VMware vRealize Operations Manager 8.0 and work on Linux and macOS (да, MS сделала PowerShell мультиплатформенной)
:::
----

----

----

----
#### Хелпер для PowerShell для генерации отчетов
https://github.com/ryan-jan/vROps-Reports
This is a helper module which uses the vROps API and PowerCLI to generate and download vROps reports. Reports can be downloaded to a file (.csv or .pdf) or as a PowerShell object for further manipulation
----
#### Несколько примеров использования PowerCli
[https://code.vmware.com/docs/11860/powercli-12-0-0-user-s-guide](https://code.vmware.com/docs/11860/powercli-12-0-0-user-s-guide/GUID-7033BCF1-3DF5-43B2-9825-F764DE7E59F6.html)
* Connect to a vRealize Operations Manager Server
* Check Memory Waste Levels
* Get Remediation Recommendations
* Change Alert Ownership
* Create a Report for Problematic Hosts
---
#### Путь 2: vROps RestAPI
:::info
:green_book:https://docs.vmware.com/en/vRealize-Operations-Manager/8.1/com.vmware.vcom.api.doc/GUID-C27B4402-56DF-45D6-8813-EC2617D24407.html
:::
----
### Общая архитектура

----
### Запросы RESTAPI

----
### Ответы/ошибки

----
### Наиболее популярные клиенты для REST интеграции
* cURL. http://curl.haxx.se
* PowerShell - достаточно просто конвертировать примеры cURL в скрипты https://virtuallysober.com/2019/03/12/converting-curl-to-powershell-for-rest-apis/
* Postman application http://www.getpostman.com
----
### Схема/браузер по API:
https://vrops.stalwork.local/suite-api/
:::warning
:exploding_head:ссылка в оф.документации является заглушкой - подставляем имя своего сервера vrops. не промахнитесь :smiling_face_with_smiling_eyes_and_hand_covering_mouth:
:::
----
### How to use vROPs REST API
1. Получить учетные данные для доступа к вашему инстансу vRealize Operations Manager
2. Послать запрос к REST endpoint для аунтификации
```htmlmixed=
POST https://RESTendpoint.example.com/api/token/acquire
```
https://vrops.stalwork.local/suite-api/api/
----
:::danger
"У меня есть посылка но я вам ее не отдам" - у раздела API отключена по умолчанию Basic Auth.
:::
{%youtube bpkiiKCrMuY %}
----
Решение - использовать внешний Auth/SSO для vROps или все-таки включить Basic Auth -
[KB77271](https://kb.vmware.com/s/article/77271) & [KB60328](https://kb.vmware.com/s/article/60328)
----
3. В ответе endpoint возвратит token, expiry date, time.
4. Для последующих действий используйте Authorization header в формате :
Authorization: vRealizeOpsToken <vROps_token>
:::info
:bulb: Как вариант - использовать SSO, и Authorization header соответственно в формате:
```xml=
Authorization: SSO2Token <SSO_SAML_TOKEN>
```
:::
5. Закрыть токен до времени истечения - послав POST request на endpoint.
```htmlmixed=
POST https://RESTendpoint.example.com/api/token/release
```
----
#### Гайд по работе с API для vROPS8.1
{%pdf https://docs.vmware.com/en/vRealize-Operations-Manager/8.1/vrealize-operations-manager-81-api-guide.pdf %}
https://docs.vmware.com/en/vRealize-Operations-Manager/8.1/vrealize-operations-manager-81-api-guide.pdf
----
#### Postman
Примеры запросов и как тестировать Postman client collector samples
https://code.vmware.com/samples/4663/postman-client-collection-for-vrealize-operations-rest-apis
https://github.com/vmware-samples/vrops-restapi-samples
(аналогично для vRA https://github.com/vmware-samples/vra-api-samples-for-postman )
----

----

----
#### Python & JAVA
Native Bindings для
Java Client
Python Client
[https://{your-vrealize-host}/suite-api/](https://vrops.stalwork.local/suite-api/)
----
#### Другие языки - wэлкам
Если используете VROps REST API - то тут хоть C, хоть Ruby, хоть Haskell и Golang.
Ruby - хороший пример использования REST API в Ruby - от ребят из Bluemedora https://github.com/BlueMedoraPublic/vrops-api-example
(требуется Bundler https://bundler.io/)
----
#### В заключении для любителей ~~лютого кастома~~ программирования
Почитать
[https://blogs.vmware.com/management/...(1)](https://blogs.vmware.com/management/2019/02/extracting-data-from-vrealize-operations-with-the-rest-apis.html)
[https://blogs.vmware.com/management/...(2)](https://blogs.vmware.com/management/2016/02/straight-up-flying-with-the-vrealize-operations-rest-api.html)
Примеры скриптов
[https://code.vmware.com/samples](https://code.vmware.com/samples?categories=Sample&keywords=&tags=vRealize%20Operations%20Manager&groups=&filters=&sort=dateDesc&page=)
Вцелом для разработчика
https://developer.vmware.com/
---
##### Интеграция vROps c opensource-инструментами для мониторинга
Наиболее известное opensource-решение это конечно Prometheus. Если вы используете его, есть несколько вариантов интеграции с инфраструктурой VMware
1) VMware vCenter Exporter for Prometheus. https://pypi.org/project/vmware-exporter/ Latest release: may 2020, использует наш официальный Python SDK for the VMware vSphere API https://github.com/vmware/pyvmomi
Установка - PIP, Docker.
----
:+1: бесплатно, молодежно:
* vCenter and vSphere 6.0/6.5 have been tested.
* VM information, Snapshot, Host and Datastore basic information is exported.
* Get VMware vCenter information:
Basic VM and Host metrics
Current number of active snapshots
Datastore size and other stuff
Snapshot Unix timestamp creation date
----
:-1: очень малый набор данных (только очень базовый набор), нет поддержки 7-ки, долгий цикл разработки для изменений. Известные уязвимости - :link:https://snyk.io/test/github/rmontenegroo/vmware_exporter?targetFile=requirements.txt
----
#### 2.vROPS Exporters (git/opensource)
https://github.com/sapcc/vrops-exporter
https://github.com/rrs45/Prometheus_VRealize_VROPS_Exporter
---
### Интеграция с ServiceDesk/CMDB
----
#### Примеры интеграции с ServiceNow через PowerShell + RestAPI:
https://virtuallysober.com/2018/07/24/using-servicenow-rest-apis-and-powershell-to-automatically-create-incidents/
https://www.thinkahead.com/resources/how-to-integrate-servicenow-with-vrealize-orchestrator/
Пример работы с данными vCenter для ведения CMDB:
:link:https://virtuallysober.com/vspherecmdb/
----
##### vRealize Operations Export Tool (Flings)
Также в качестве инструмента интеграции с CMDB можно использовать
https://flings.vmware.com/vrops-export
https://github.com/vmware/vrops-export/releases

----
:::info
output formats supported include:
* CSV (comma separated files)
* generic SQL (through JDBC)
This export tool also supports advanced constructs such as, navigating through multi step relationships between objects as well as aliasing
:::
Синтаксис:
```shell=
./exporttool.sh -d ../samples/vmfields.yaml -u admin -p password -H https://my.vrops.host
```
----
#### vRealize Operations Email Template Manager
https://flings.vmware.com/vrealize-operations-email-template-manager
Управляет кастомными шаблонами нотификации по email
@JRE 1.8, перестало работать в 8.1

----
#### vRealize Operations REST Notifications Helper (Flings)
:link:https://flings.vmware.com/vrealize-operations-rest-notifications-helper
Java@Linux
vRealize Operations REST Notifications Helper helps vRealize Operations Manager users improve and customize the REST notifications of alerts. It collects the most useful information about an alert, creates a new payload by user configuration, and sends it to third parties.
----
#### Flowgate (Flings)

:link:https://flings.vmware.com/flowgate :link:https://github.com/vmware/flowgate
----
Built-in adapter for multiple DCIM and CMDB system integration:
* <span>Nlyte<!-- .element: class="fragment" data-fragment-index="1" --></span>
* <span>PowerIQ<!-- .element: class="fragment" data-fragment-index="2" --></span>
* <span>Infoblox<!-- .element: class="fragment" data-fragment-index="3" --></span>
* <span>Labsdb<!-- .element: class="fragment" data-fragment-index="4" --></span>
* <span>IBIS<!-- .element: class="fragment" data-fragment-index="5" --></span>
* <span>Pulse IoT Center<!-- .element: class="fragment" data-fragment-index="6" --></span>
* <span>Open for other facility system integration<!-- .element: class="fragment" data-fragment-index="7" --></span>
----
* UI based Integration process: One click integration.
* Role based access control: API level access control support.
* RESTFul API support: Provide unified facility information querying services. APIs for all operations and data query make it easy to integrate with other systems.
Built-in adapter for multiple IT stack systems:
* <span>vCenter Server<!-- .element: class="fragment" data-fragment-index="1" --></span>
* <span>vRealise Operation Manager<!-- .element: class="fragment" data-fragment-index="2" --></span>
* <span>Open for other IT stack integration<!-- .element: class="fragment" data-fragment-index="3" --></span>
* <span>More systems will coming soon... :calendar:<!-- .element: class="fragment" data-fragment-index="4" --></span>
----
### Логическая архитектура Flowgate

###### Installation guide::link:https://github.com/vmware/flowgate/blob/master/docs/installationguide.md*
----
### DEMO:

----
<!-- .slide: data-background-video="https://github.com/yixingjia/wormhole/releases/download/1.0/Flowgate_V1.0.mp4,https://s3.amazonaws.com/static.slid.es/site/homepage/v1/homepage-video-editor.webm" data-background-color="#000000" -->
---
#### Bluemedora TVS
В чем ценность -
* Visibility and insight into customers’ broad data center and hybrid cloud environments via dashboards
* Dynamic discovery of customers’ applications and infrastructure
* Metrics data that is mapped, analyzed and helps drives automation via a single, integrated view of customer environments.
----
:fire: Новости: True Visibility Suite is now part of VMWare, On July 7, 2020, VMware officially closed its acquisition of the True Visibility Suite team and products from Blue Medora :link:https://blogs.vmware.com/management/2020/07/vmware_truevisibilitysuite.html
----
#### Состав True Visibility Suite:

----

----

----
#### Кейсы использования

----
<!-- .slide: data-background="https://i.imgur.com/Xvraxpn.png" data-background-color="#005" -->
#### ***Now is show~~demo~~time!***
==https://demo-s8.bluemedora.com/ui/index.action#/home/quickStart==
----
#### Пока отдельный канал продаж

---
##### Что дальше? Выводы
Каждый выбирает свой путь ~~джидая~~

----
#### vROPS обладает важными качествами для Enterprise-ready зонтичного мониторинга
* SDDC-ready
* Расширяемая архитектура
* под нагрузку
* с возможностями HA
* за счет Management Packs - FullStack Visibility от железа через виртуализацию и до бизнес-приложений
* Расширяемые дашбоарды и отчеты
* What-if/capacity/cost analysis
----
* Наличие широкого API для интеграции
* с узкоспециализированными системами мониторинга
* с решениями ServiceDesk/CMDB
* Защита от "шумов"
* Средства для построения карты зависимостей сервисов и отслеживания KPI/OLA/SLA
* Ролевая модель доступа
* Инструменты для делегирования "дежурного мониторинга и восстановления" без root/admin-access.
---
#### В заключении для идущих ~~правильным~~ full supported путем.
Полезные инструменты и документация:
vROPs Sizer http://vropssizer.vmware.com/
How-to Install Apps Monitoring https://vrealize.vmware.com/t/application-aware-operations/video-install-and-configure-application-monitoring-1/
Лабораторные работы
https://labs.hol.vmware.com/
https://labs.hol.vmware.com/HOL/catalogs/catalog/873
---
# The End
<!-- .slide: data-background="https://i.imgur.com/xK6ulQM.jpg" data-background-color="#005" -->
<div style="color: #000;">
Service Discovering, Applications monitoring & API
</div>
Спасибо за внимание!
Вопросы?
:smile:
---
{"metaMigratedAt":"2023-06-15T11:25:31.720Z","metaMigratedFrom":"Content","title":"Display controls in the bottom right corner","breaks":true,"contributors":"[{\"id\":\"2684ea2c-8f88-431c-bb74-72970d20e5dd\",\"add\":21715,\"del\":3644}]","description":"slideOptions:"}