Successfully reported this slideshow.
Your SlideShare is downloading. ×

Industrial IoT bootcamp

Ad
Ad
Ad
Ad
Ad
Ad
Ad
Ad
Ad
Ad
Ad
Loading in …3
×

Check these out next

1 of 107 Ad

Industrial IoT bootcamp

Download to read offline

"Industrial Internet IoT bootcamp" meetup, 11-5-2015 hosted by GE Digital at HackerDojo. Discussing topics ranging from IoT architecture to connectivity and protocols, cyber security, data science and industrial UX design.

"Industrial Internet IoT bootcamp" meetup, 11-5-2015 hosted by GE Digital at HackerDojo. Discussing topics ranging from IoT architecture to connectivity and protocols, cyber security, data science and industrial UX design.

Advertisement
Advertisement

More Related Content

Slideshows for you (20)

Viewers also liked (18)

Advertisement

Similar to Industrial IoT bootcamp (20)

Recently uploaded (20)

Advertisement

Industrial IoT bootcamp

  1. 1. Industrial InternetIndustrial InternetIndustrial InternetIndustrial Internet boot camp Industrial InternetIndustrial InternetIndustrial InternetIndustrial Internet boot camp
  2. 2. -- 6 x 15 minutes -- Industrial Internet for Developers Building a 12 Factor App Connecting Machines to Cloud Foundry OAuth for Industrial Strength Security Mission Critical Industrial Big Data UX Design for the Industrial World -- live DJ, drinks and food --
  3. 3. GE Digital Industrial Internet for developers Marc-Thomas Schmidt, Chief Architect
  4. 4. Internet of ThingsInternet of Things
  5. 5. Internet of ThingsInternet of Things Big
  6. 6. Internet of ThingsInternet of Things Industrial
  7. 7. Industrial Internet of Things (IIoT) Industrial Internet of Things (IIoT)
  8. 8. Connect. Analyze. Optimize.
  9. 9. Why care?
  10. 10. GE DigitalTitle or Job Number | XX Month 201X GE Business Unit Name 1 0 power of
  11. 11. GE DigitalTitle or Job Number | XX Month 201X GE Business Unit Name 1 1 1% more output 240 TWh extra electricity (~Canada) 1% more output 240 TWh extra electricity (~Canada) Source: GE and industry estimates
  12. 12. GE DigitalTitle or Job Number | XX Month 201X GE Business Unit Name 1 2 1% more efficiency 45,000+ saved lives each year 1% more efficiency 45,000+ saved lives each year Source: GE and industry estimates
  13. 13. GE DigitalTitle or Job Number | XX Month 201X GE Business Unit Name 1 3 1% more on-time 100,000 minutes less waiting time (UK) 1% more on-time 100,000 minutes less waiting time (UK) Source: GE and industry estimates
  14. 14. GE Digital 1% more production $10b more output (US) 1% more production $10b more output (US) Source: GE and industry estimates
  15. 15. General Electric Company reserves the right to make changes in specifications and features, or discontinue the product or service described at any time, without notice or obligation. These materials do not constitute a representation, warranty or documentation regarding the product or service featured. Illustrations are provided for informational purposes, and your configuration may differ. This information does not constitute legal, financial, coding, or regulatory advice in connection with your use of the product or service. Please consult your professional advisors for any such advice. No part of this document may be distributed, reproduced or posted without the express written permission of General Electric Company. GE, Predix and the GE Monogram are trademarks of General Electric Company. ©2015 General Electric Company – All rights reserved. 1% fuel savings 100,000,000 gallons annually (US only) 1% fuel savings 100,000,000 gallons annually (US only) Source: GE and industry estimates
  16. 16. Air Speed Calibrated Altitude Cooling Valve Position Exhaust Gas Temperature Fuel Flow Ground Speed and more… 500 GB / FLIGHT 5,000 PARAMETERS 1 SNAPSHOT / SEC Source: GE Aviation
  17. 17. 500 GB / FLIGHT 5,000 PARAMETERS 1 SNAPSHOT / SEC [x] 15 AIRLINES 3.4MILLION FLIGHTS Source: GE estimates
  18. 18. 30% accuracy 90% accuracy 97% accuracy Industrial Data ScienceIndustrial Data Science Sensor data + Ops Context + Physics content Source: GE estimates
  19. 19. How do we make it happen?
  20. 20. ….. Data Science Data Management UX Design Mobility Embedded software Connectivity Cyber-security Cloud operations …..
  21. 21. Source: VisionMobile, 2014 Source: Evans Data Corp, 2014 IoT languages IoT Developers Needed!
  22. 22. MICROSERVICE MICROSERVICE MICROSERVICE Connect Analyze Optimize GE Predix your cloud platform for the Industrial Internet GE Predix your cloud platform for the Industrial Internet
  23. 23. Title or Job Number | XX Month 201X2 4 We’re Hiring! gesoftware.com/careers We’re Hiring! gesoftware.com/careers
  24. 24. GE Digital 12 Factor App in 12 Minutes Your cloud app report card Matt Momont, Software Developer @muymoo
  25. 25. GE Digital Why 12 Factors • Strange things happen in the “The Cloud” – Think: Network explosions, data center explosions, server explosions • The cloud requires a new way of developing apps • These 12 factors will help you build your next cloud app safely. 12factor.net
  26. 26. What level is your app?
  27. 27. GE Digital 1. Codebase Level I. Email src zip with different name Level II. Frequent commits to source control App lives in one repo Level III. App is broken into system Each piece is an app in its own repo
  28. 28. GE Digital 2. Dependencies I. Manually download jars to /lib II. Use package manager (mvn, npm) Expect tools to be provided (curl) III. Use artifact manager (Artifactory) Bundle dependencies and tools New
  29. 29. GE Digital 3. Config I. Hardcode URLs, passwords in code Use code like: if(Mode.PROD) II. Use config files Multiple config files for different environments III. Use config service (Spring Cloud Config, Zookeeper)
  30. 30. GE Digital 4. Backing Services I. Vendor specific connection libraries Hardcode connection strings II. Connection parameters live in config files III. Resources are found dynamically Update backing services independently
  31. 31. GE Digital 5. Build, Release, Run I. Devs build and deploy code from local Production is pushed manually II. Use build/release tools (Jenkins, Travis CI) Cleanly separate build and deploy steps III. Have one click release pipeline Each release is versioned and saved for rollback No human intervention
  32. 32. GE Digital 6. Processes I. Sticky session Write app data to local filesystem II. Does not rely on data stored locally III. Stateless Store session data in datastore (redis) Cache intermediate transaction steps
  33. 33. GE Digital 7. Port Binding I. Deploy to app container II. Standalone, but listens to specific ports III. Web server is part of app (node, netty) App exports HTTP as a service
  34. 34. GE Digital 8. Concurrency I. Blocking tasks that must run sequentially II. Non-blocking IO server (node, netty) III. Scale horizontally Small, independent microservices Scale out, not up.
  35. 35. GE Digital 9. Disposability I. Needs a dev to coordinate reboot II. Fast startups III. Crashes gracefully Sub 1 second restarts Stores state to quickly recover Your servers are cattle, not pets. brosher.com
  36. 36. GE Digital 10. Dev/Prod Parity I. Devs have no insight to prod Dev is different from prod II. Substitute lightweight replacements (In-memory H2, SQLite) III. Environments are identical SQLite ≠ Postgres
  37. 37. GE Digital 11. Logs I. System.out.print() II. Write to log files on web server III. Treat logs like a stream (ELK)
  38. 38. GE Digital 12. Admin Processes I. Edit database entries manually II. Store migration scripts in repo III. Use framework’s tooling
  39. 39. GE Digital Thank you! • Follow these 12 factors • Survive explosions • Build awesome cloud apps • 12factor.net • Migrating to Cloud Native Application Architectures – Matt Stine
  40. 40. GE Digital Connecting Machines to Cloud Foundry Atul Kshirsagar, Senior Software Architect @atulckshirsagar
  41. 41. GE Digital Who • Senior Software Architect @ GE Digital – Committer on Cloud Foundry Diego, Gorouter, TCP router and Routing release projects – Runtime PMC member in Cloud Foundry foundation • Email: atul.kshirsagar@ge.com • Twitter: @atulckshirsagar
  42. 42. GE Digital Predix Platform enables Asset Performance Management for GE and non-GE assets Predix Industrial Cloud SDM SDM SDM SDM SDM Predix-ready gateway Predix-ready gateway Why DDS MQTT S2S XMPP Binary AMQP HTTP
  43. 43. GE Digital Predix Industrial Cloud Platform
  44. 44. GE Digital IoT Protocols
  45. 45. GE Digital IoT Protocols
  46. 46. GE Digital CF Go router App1 App2 App3 mqtt://app1 http://app1 Sensor/Device/ Gateway Cloud Foundry Protocols
  47. 47. So, how do we connect machines to Cloud Foundry?
  48. 48. GE Digital App1 App2 MQTT Service Sensor/Device/ Gateway Go router App3 http://app1 mqtt://iotser vice Service Broker CF Service Cloud Foundry Services
  49. 49. GE Digital AMQP, MQTT • RabbitMQ is available as a service on most CF based hosted PaaS • RabbitMQ supports: – AMQP – MQTT Adapter available cf cs <rabbitmq-service> <plan> <instance-name> cf bs <app-name> <service-instance-name>
  50. 50. So, what about DDS or other protocols?
  51. 51. TCP Router
  52. 52. GE Digital CF Go router App1 App (Industrial) dds://app1 http://app1 Sensor/Device/ Gateway TCP Router TCP router
  53. 53. GE Digital • Map external port on router to an app • Route traffic on mapped port to appropriate app • Specify mapping of router port to app as part of cf cli • Mechanisms to detect and report port conflicts App 3 App 4 App 1 App 1 Layer 4 router Layer 4 router Load Balancer TCP router - 1 App 1 App 2 App 4 1883 5222522 2 1883 5222 5222 TCP router - 2 Load Balancer App 3 5222 51216 TCP Router
  54. 54. GE Digital CC Bridge Cloud Controller etcd TCP Emitter Routing API TCP Router – under the hood Diego App 1 App 1 App 1 App 2 App 1 App n …… Routing API TCP Emitter etcd Cloud Controller CC Bridge Load Balancer TCP routerTCP router HAProxy Router Config HAProxy Plugin
  55. 55. GE Digital TCP Router - Where we are Diego Lattice
  56. 56. GE Digital TCP Router - Where we are
  57. 57. GE Digital TCP Router – CF UX (Proposed) cf router-groups cf create-shared-domain DOMAIN -r ROUTER_GROUP cf create-route SPACE DOMAIN -p ROUTE_PORT cf map-route APP_NAME DOMAIN -a APP_PORT -p ROUTE_PORT
  58. 58. GE Digital TCP Router – Technology stack • Programming language: Golang, Ruby • OS: Mac OS X, Ubuntu • CI/CD: Concourse • Infrastructure management: BOSH, Terraform, Vagrant, Packer • Containers: Docker, Garden
  59. 59. GE Digital TCP Router – development process • Pivotal Agile • Pair programming • Test driven development • Continuous integration
  60. 60. GE Digital TCP Router - references • CF Summit talk – https://www.youtube.com/watch?v=RCZce-l9EsI • Dzone articles – https://dzone.com/articles/iot-protocol-support-in-cloud- foundry – https://dzone.com/articles/tcp-routing-in-lattice-1 • Github project – https://github.com/cloudfoundry-incubator/cf-routing- release
  61. 61. GE Digital Summary • Devices/Machines talk different protocols • Two ways to connect machines to Cloud Foundry – Cloud Foundry services – TCP router
  62. 62. GE Digital OAuth for Industrial Strength Security Dario Amiri, Senior Software Architect amiri@ge.com
  63. 63. GE Digital The Takeaways • API keys are a liability • OAuth is your friend • Meet ACS, your new friend
  64. 64. GE Digital API Key Data Flow Diagram
  65. 65. GE Digital Why Use OAuth? • Authorize (not just authenticate) • Centralize management • Compartmentalize access
  66. 66. GE Digital OAuth2 Data Flow Diagram
  67. 67. GE Digital Predix.io: You’ve got the power • You get your own authorization server(s) – Manage identities (SCIM) – Manage OAuth clients – Federate with external IdPs • Configure any service from the marketplace as an OAuth resource server • Configure any app you deploy as an OAuth client
  68. 68. GE Digital OAuth Limitations • Dynamic & fine-grained access control – Access Control Service • Revocation – RFC 7009 • Impersonation (i.e. act-as, on-behalf-of) – ???
  69. 69. GE Digital Access Control Service
  70. 70. GE Digital
  71. 71. GE Digital Access Control Services { "name" : "group-policy”, "policies" : [ { "name" : "Users can read an asset if they are in the same group.”, "target" : { "action" : "GET”, "resource" : { "uriTemplate" : "/asset/{asset_id}” } }, "conditions" : [ { "condition" : "subject.and(resource).haveSame('group')” } ], "effect" : "PERMIT” } ] }
  72. 72. Demo?
  73. 73. GE Digital Mission Critical Industrial Big Data Vikram Lakshmipathy, Manager, Data Engineer and Analytics
  74. 74. powered by#IndustrialInternet Industrial stakes are high… Wrong display ad Major patient delays Online shopping cart crashed Major flight delays CONSUMER DATA INDUSTRIAL DATA
  75. 75. powered by#IndustrialInternet Industrial stakes are high… Major patient delays Major flight delays INDUSTRIAL DATA Cumulative waiting cost (US) $100B annually Delays and cancellations $40M annually
  76. 76. Cooling Valve Position Exhaust Gas Temperature Fuel Flow Water Pump Pressure Power Assembly Output Turbo Throughput Bearing Friction Coefficient and more… 100 GB / TRIP 3,000 PARAMETERS Continuous DATA STREAM Source: GE Transportation
  77. 77. Source: GE estimates 100 GB / TRIP 3,000 PARAMETERS Continuous DATA STREAM [X] 25 Railroad Networks 3.2 MILLION TRIPS
  78. 78. Source: GE estimates 4000 gas turbines 23,000 wind turbines 21,500 locomotives 28,000 commercial jet engines 1.4 million pieces of health care equipment 20,700 units of oil and gas equipment
  79. 79. GE Digital Locomotive Faults Data w/Weather
  80. 80. GE Digital Data Management Data scientist Business analyst Data governance and federation Fast ingestion, storage and compute High performance analysis Optimized for mission-critical workloads Field operations Industrial Data Lake Sensor data Sensor data Content (images, videos, manuals, etc.) Content (images, videos, manuals, etc.) Historian data Historian data Machine data Machine data CRM, ERP, etc. CRM, ERP, etc. LogsLogs Social network data Social network data Geo-location data Geo-location data
  81. 81. GE Digital Industrial Data Science Outcomes > Analytics © General Electric Company, 2014. All Rights Reserved. AnalyticsData Ex: Reduce downtime Asset Performance Management Ex: Maximize fleet utilization Operations Optimization Outcomes
  82. 82. GE Digital UX Design for the Industrial World Dan Harrelson, Experience Design Director @danharrelson
  83. 83. GE Digital #IoT design is different • Designing for context • Designing with data
  84. 84. Context: the industrial workplace
  85. 85. GE Digital
  86. 86. GE Digital
  87. 87. GE Digital
  88. 88. GE Digital
  89. 89. GE Digital
  90. 90. GE Digital
  91. 91. GE Digital Offices vs. Industrial Workplaces
  92. 92. GE Digital Offices vs. Industrial Workplaces CONVENTIONAL INDUSTRIAL LOCATION Fixed Mobile HANDS Free Full CONNECTIVITY Good Unreliable LIGHTING Consistent Variable ENVIRONMENT Clean Messy DISTRACTION Optional Required
  93. 93. Challenges creating good experiences for industrial workers
  94. 94. GE Digital User expectations are increasingly set by mobile and other consumer technology
  95. 95. GE Digital Analytics and collaboration tools hold huge promise, but using them requires changing how people work
  96. 96. GE Digital Industrial workers have limited time and attention to interact with software tools
  97. 97. GE Digital Data and systems aren’t integrated, requiring immense effort by users to understand and act on data
  98. 98. Designing with data
  99. 99. GE Digital By Jason Stirman (@stirman)
  100. 100. GE Digital Where is the data?
  101. 101. GE Digital How dense is the data?
  102. 102. GE Digital Are we on target?
  103. 103. GE Digital Is the data trending over time?
  104. 104. GE Digital Data + context = augmented reality
  105. 105. Industrial InternetIndustrial InternetIndustrial InternetIndustrial Internet boot campboot campboot campboot camp Industrial InternetIndustrial InternetIndustrial InternetIndustrial Internet boot campboot campboot campboot camp
  106. 106. Thank you General Electric Company reserves the right to make changes in specifications and features, or discontinue the product or service described at any time, without notice or obligation. These materials do not constitute a representation, warranty or documentation regarding the product or service featured. Illustrations are provided for informational purposes, and your configuration may differ. This information does not constitute legal, financial, coding, or regulatory advice in connection with your use of the product or service. Please consult your professional advisors for any such advice. No part of this document may be distributed, reproduced or posted without the express written permission of General Electric Company. GE, Predix and the GE Monogram are trademarks of General Electric Company. ©2015 General Electric Company – All rights reserved.

×