Successfully reported this slideshow.
Your SlideShare is downloading. ×

.NET Fest 2018. Андрей Тарарака. Как порулить грузовиком в Австралии, находясь в Киеве. Реальная история успеха одного около-IoT проекта

Ad
Ad
Ad
Ad
Ad
Ad
Ad
Ad
Ad
Ad

Check these out next

1 of 17 Ad

.NET Fest 2018. Андрей Тарарака. Как порулить грузовиком в Австралии, находясь в Киеве. Реальная история успеха одного около-IoT проекта

Я расскажу вам реальную историю о том, как один небольшой около-IoT проект с большими амбициями отошел от старого технологического стека к современному кросс-платформенному подмножеству .Net-стека. Как развертывание было перенесено из полностью ручного в полностью автоматизированное с помощью Docker, VSTS и Azure в многоплатформенном «кластере». И как все эти действия помогли разработчикам и клиенту в повседневной жизни.

Я расскажу вам реальную историю о том, как один небольшой около-IoT проект с большими амбициями отошел от старого технологического стека к современному кросс-платформенному подмножеству .Net-стека. Как развертывание было перенесено из полностью ручного в полностью автоматизированное с помощью Docker, VSTS и Azure в многоплатформенном «кластере». И как все эти действия помогли разработчикам и клиенту в повседневной жизни.

Advertisement
Advertisement

More Related Content

Slideshows for you (20)

Similar to .NET Fest 2018. Андрей Тарарака. Как порулить грузовиком в Австралии, находясь в Киеве. Реальная история успеха одного около-IoT проекта (20)

Advertisement

More from NETFest (20)

Recently uploaded (20)

Advertisement

.NET Fest 2018. Андрей Тарарака. Как порулить грузовиком в Австралии, находясь в Киеве. Реальная история успеха одного около-IoT проекта

  1. 1. How to drive haul truck in Australia, sitting in Kiev True story of success of one near-IoT project t WITH PASSION TO TECHNOLOGY Andrii Tararaka .NET CONFERENCE #1 IN UKRAINE, KYIV 2018
  2. 2. t .NET LEVEL UP KYIV 2018 About me • Lead Software Engineer @ EPAM Systems, Ukraine. • Key developer on project, which goals is to implement near real-time monitoring system for equipment in open mines. • Author of in-house UI platform for creating LoB applications. • …
  3. 3. t .NET LEVEL UP KYIV 2018 About project • System for monitoring all types of equipment in open mines. • Implemented on .NET stack from IoT app up to UI client app • IoT app implemented for WindowsCE • Backend hosted in Azure • UI client app implemented on WPF
  4. 4. t .NET LEVEL UP KYIV 2018 How it all worked for a long long time… Field Gateway Central
  5. 5. t .NET LEVEL UP KYIV 2018 Problems and Limitations • It’s almost impossible to simulate field environment during development • Fully manual deployment • IT Security on field is very important and local IT department is blocking all unknown traffic • Each part was developed with legacy technology stack and almost everywhere the wheel was reinvented
  6. 6. t .NET LEVEL UP KYIV 2018 What would be great to have • Quick and Easy deployment simulation on regular dev machine • Migrate in-house components to cross-platform .NET Core as much as possible • Minimize number of in-house frameworks with help of stable 3rd party libraries • Support “Data Streaming” for any kind of data • Make production deployment fully automated
  7. 7. t .NET LEVEL UP KYIV 2018 CloudField Gateway Flume 4545 Kafka Apache NiFi Big Data Storage Zookeeper 2181 RabbitMQ 5672, 15672 Adapter Connector Flume 4545 IoT App [Legacy] IoT App
  8. 8. t .NET LEVEL UP KYIV 2018 Pros and cons • Field gateway as hub for all messages • Built-in “store and forward” • Migrated to stable 3rd party components • Scalable architecture • For us whole deployment is still “Black Box”, we need more info from all parts
  9. 9. t .NET LEVEL UP KYIV 2018 CloudField Gateway Flume 4545 Kafka Apache NiFi Big Data Storage Chronograf 8888 Kapacitor 9092 InfluxDB 8086 Grafana 3000 Telegraf In/Out: 8186 Zookeeper 2181 RabbitMQ 5672, 15672 Adapter Connector Flume 4545 Chronograf 8888 Kapacitor 9092 InfluxDB 8086 Grafana 3000 Telegraf In/Out: 8186 IoT App [Legacy] IoT App
  10. 10. t .NET LEVEL UP KYIV 2018 Pros and cons • Monitoring of all components in Field and Cloud • Alerts for critical metrics in Field and Cloud • Separate dashboards for Field and Cloud deployment in Grafana • Centralized collecting of logs and metrics • Lack of secure connection between Field and Cloud • Need to have easy access to all web-based components
  11. 11. t .NET LEVEL UP KYIV 2018 Part #3 CloudField Gateway Internet Flume 4545 SSH Server Auto SSH In/Out: 22 Portainer 9000 Traefik In/Out: 80, 443 Kafka Apache NiFi Big Data Storage Chronograf 8888 Kapacitor 9092 InfluxDB 8086 Grafana 3000 Telegraf In/Out: 8186 Zookeeper 2181 RabbitMQ 5672, 15672 Adapter Connector Auto SSH In/Out: 22 Flume 4545 Portainer 9000 Traefik In/Out: 80, 443 Chronograf 8888 Kapacitor 9092 InfluxDB 8086 Grafana 3000 Telegraf In/Out: 8186 IoT App [Legacy] IoT App
  12. 12. t .NET LEVEL UP KYIV 2018 Part #3 Auto SSH Auto SSH -L 0.0.0.0:4545:0.0.0.0:4545 -R 0.0.0.0:4545:flume:4545 SSH Server Field Network Internet Cloud
  13. 13. t .NET LEVEL UP KYIV 2018 Pros and cons • Great and simple secure connection between Field and Cloud • Only one port used • Easy to control network traffic (start/stop/resume) • We need automatic (and if it’s possible remote) deployment process
  14. 14. t .NET LEVEL UP KYIV 2018 Part #3 CloudField Gateway Internet Flume 4545 SSH Server Auto SSH In/Out: 22 Portainer 9000 Traefik In/Out: 80, 443 Kafka Apache NiFi Big Data Storage Chronograf 8888 Kapacitor 9092 InfluxDB 8086 Grafana 3000 Telegraf In/Out: 8186 Zookeeper 2181 RabbitMQ 5672, 15672 Adapter Connector VSTS Agent 443 Auto SSH In/Out: 22 Flume 4545 Portainer 9000 Traefik In/Out: 80, 443 Chronograf 8888 Kapacitor 9092 InfluxDB 8086 Grafana 3000 Telegraf In/Out: 8186 IoT App [Legacy] IoT App
  15. 15. t .NET LEVEL UP KYIV 2018 Overall results • Used stable 3rd party components wherever it’s possible to reduce custom code base • Started migration to .NET Core • Decoupled and scalable architecture • Added monitoring and log collection solutions • Added alerts and notifications for critical metrics • Added secure connection between Field and Cloud • Added automatic and remote deployment
  16. 16. t .NET LEVEL UP KYIV 2018 How to contact with me andrii.tararaka andrii.tararaka@gmail.com
  17. 17. Тема доклада Тема доклада Тема доклада KYIV 2018 Thank you! .NET CONFERENCE #1 IN UKRAINE

×