Effortlessly Deploying a PI System in Azure or AWS · #PIWorld ©2019 OSIsoft, LLC Effortlessly...

29
#PIWorld ©2019 OSIsoft, LLC Effortlessly Deploying a PI System in Azure or AWS Eugene Lee Technology Enablement Valentin Ivanov Cloud Architect 1

Transcript of Effortlessly Deploying a PI System in Azure or AWS · #PIWorld ©2019 OSIsoft, LLC Effortlessly...

Page 1: Effortlessly Deploying a PI System in Azure or AWS · #PIWorld ©2019 OSIsoft, LLC Effortlessly Deploying a PI System in Azure or AWS Eugene Lee Technology Enablement Valentin Ivanov

#PIWorld ©2019 OSIsoft, LLC

Effortlessly Deploying a PI System in Azure or AWS

Eugene Lee

Technology Enablement

Valentin Ivanov

Cloud Architect

1

Page 2: Effortlessly Deploying a PI System in Azure or AWS · #PIWorld ©2019 OSIsoft, LLC Effortlessly Deploying a PI System in Azure or AWS Eugene Lee Technology Enablement Valentin Ivanov

#PIWorld ©2019 OSIsoft, LLC #PIWorld ©2019 OSIsoft, LLC 2

Agenda

• Introduction

•Concepts

•Demo flow

•Azure Demo

•AWS Demo

•Conclusion

Page 3: Effortlessly Deploying a PI System in Azure or AWS · #PIWorld ©2019 OSIsoft, LLC Effortlessly Deploying a PI System in Azure or AWS Eugene Lee Technology Enablement Valentin Ivanov

#PIWorld ©2019 OSIsoft, LLC 3 3

Introduction

Page 4: Effortlessly Deploying a PI System in Azure or AWS · #PIWorld ©2019 OSIsoft, LLC Effortlessly Deploying a PI System in Azure or AWS Eugene Lee Technology Enablement Valentin Ivanov

#PIWorld ©2019 OSIsoft, LLC 4

Cost

Available

Elastic

Accessible

Managed services

On demand

Cloud

Computing

Page 5: Effortlessly Deploying a PI System in Azure or AWS · #PIWorld ©2019 OSIsoft, LLC Effortlessly Deploying a PI System in Azure or AWS Eugene Lee Technology Enablement Valentin Ivanov

#PIWorld ©2019 OSIsoft, LLC 5

How to run your app?

Customer Manages Managed by Vendor

Page 6: Effortlessly Deploying a PI System in Azure or AWS · #PIWorld ©2019 OSIsoft, LLC Effortlessly Deploying a PI System in Azure or AWS Eugene Lee Technology Enablement Valentin Ivanov

#PIWorld ©2019 OSIsoft, LLC 6

Velocity vs Flexibility Trade-off

Page 7: Effortlessly Deploying a PI System in Azure or AWS · #PIWorld ©2019 OSIsoft, LLC Effortlessly Deploying a PI System in Azure or AWS Eugene Lee Technology Enablement Valentin Ivanov

#PIWorld ©2019 OSIsoft, LLC 7

OSIsoft Offerings at Each Level

Integrate with other

cloud platforms

Make PI System

“Cloud Ready”

Offer a Platform for

Customer & Partner Apps

Deliver native, multi-

tenant, & complementary

Cloud Services

PI Server +

PI Integrators

Best Practices,

Quick Starts,

Scripts

OSIsoft Cloud Services

(OCS)

Achieved TODAY with…

Customer Customer Customer

Cloud

Vendor OSIsoft OSIsoft

Achieved TOMORROW with…

Page 8: Effortlessly Deploying a PI System in Azure or AWS · #PIWorld ©2019 OSIsoft, LLC Effortlessly Deploying a PI System in Azure or AWS Eugene Lee Technology Enablement Valentin Ivanov

#PIWorld ©2019 OSIsoft, LLC 8

OSIsoft Cloud Services

PI Server

Any Cloud

Page 9: Effortlessly Deploying a PI System in Azure or AWS · #PIWorld ©2019 OSIsoft, LLC Effortlessly Deploying a PI System in Azure or AWS Eugene Lee Technology Enablement Valentin Ivanov

#PIWorld ©2019 OSIsoft, LLC 9

PLC

SCADA

DCS Remote Assets

Data

Lake

Data

Warehouse Data Hub

or Queue

BI

PI Integrator for Business Analytics

Streaming

Analytics

IoT Device

Ingress IoT

Devices

Primary network ingress

Machine

Learning

Why have a PI System in the Cloud?

PI Server

Predictions

and

secondary

network ingress

Site PI Server

Page 10: Effortlessly Deploying a PI System in Azure or AWS · #PIWorld ©2019 OSIsoft, LLC Effortlessly Deploying a PI System in Azure or AWS Eugene Lee Technology Enablement Valentin Ivanov

#PIWorld ©2019 OSIsoft, LLC 10

Cloud deployment options

Manual Automated

Intuitive

Not easily reproducible

Steps can be forgotten or reordered

Not scalable

Steeper learning curve

Reproducible

Machine always follows instruction

Scalable

Page 11: Effortlessly Deploying a PI System in Azure or AWS · #PIWorld ©2019 OSIsoft, LLC Effortlessly Deploying a PI System in Azure or AWS Eugene Lee Technology Enablement Valentin Ivanov

#PIWorld ©2019 OSIsoft, LLC 11

Page 12: Effortlessly Deploying a PI System in Azure or AWS · #PIWorld ©2019 OSIsoft, LLC Effortlessly Deploying a PI System in Azure or AWS Eugene Lee Technology Enablement Valentin Ivanov

#PIWorld ©2019 OSIsoft, LLC 12 12

Concepts

Page 13: Effortlessly Deploying a PI System in Azure or AWS · #PIWorld ©2019 OSIsoft, LLC Effortlessly Deploying a PI System in Azure or AWS Eugene Lee Technology Enablement Valentin Ivanov

#PIWorld ©2019 OSIsoft, LLC 13

Infrastructure as code (IaC)

Page 14: Effortlessly Deploying a PI System in Azure or AWS · #PIWorld ©2019 OSIsoft, LLC Effortlessly Deploying a PI System in Azure or AWS Eugene Lee Technology Enablement Valentin Ivanov

#PIWorld ©2019 OSIsoft, LLC 14

Desired State Configuration (DSC)

Write Script

Compile Script

MOF File Apply MOF

Page 15: Effortlessly Deploying a PI System in Azure or AWS · #PIWorld ©2019 OSIsoft, LLC Effortlessly Deploying a PI System in Azure or AWS Eugene Lee Technology Enablement Valentin Ivanov

#PIWorld ©2019 OSIsoft, LLC 15 15

Demo flow

Page 16: Effortlessly Deploying a PI System in Azure or AWS · #PIWorld ©2019 OSIsoft, LLC Effortlessly Deploying a PI System in Azure or AWS Eugene Lee Technology Enablement Valentin Ivanov

#PIWorld ©2019 OSIsoft, LLC 16

Architecture

PI Server

Domain

Domain Controller

Page 17: Effortlessly Deploying a PI System in Azure or AWS · #PIWorld ©2019 OSIsoft, LLC Effortlessly Deploying a PI System in Azure or AWS Eugene Lee Technology Enablement Valentin Ivanov

#PIWorld ©2019 OSIsoft, LLC 17

Stage 1 (40 min)

•Build VMs with DSC scripts and Templates

•Azure uses ARM Templates

•AWS uses CloudFormation Templates

•Perform only with new updates

Page 18: Effortlessly Deploying a PI System in Azure or AWS · #PIWorld ©2019 OSIsoft, LLC Effortlessly Deploying a PI System in Azure or AWS Eugene Lee Technology Enablement Valentin Ivanov

#PIWorld ©2019 OSIsoft, LLC 18

Stage 2 (3 min)

•Take snapshots of VMs

•Snapshots will be used for further deployments

Page 19: Effortlessly Deploying a PI System in Azure or AWS · #PIWorld ©2019 OSIsoft, LLC Effortlessly Deploying a PI System in Azure or AWS Eugene Lee Technology Enablement Valentin Ivanov

#PIWorld ©2019 OSIsoft, LLC 19

Stage 3 (2 min)

•Deploy VMs from snapshots

•New set of templates

•Different from those in Stage 1

•Perform whenever new environment needed

Page 20: Effortlessly Deploying a PI System in Azure or AWS · #PIWorld ©2019 OSIsoft, LLC Effortlessly Deploying a PI System in Azure or AWS Eugene Lee Technology Enablement Valentin Ivanov

#PIWorld ©2019 OSIsoft, LLC

DEMO

20

Azure & AWS Deployment

Production not supported

Page 21: Effortlessly Deploying a PI System in Azure or AWS · #PIWorld ©2019 OSIsoft, LLC Effortlessly Deploying a PI System in Azure or AWS Eugene Lee Technology Enablement Valentin Ivanov

#PIWorld ©2019 OSIsoft, LLC 21

Azure Resource Manager

{

"$schema": "https://schema.management...Template.json#",

"contentVersion": "",

"apiProfile": "",

"parameters": { },

"variables": { },

"functions": [ ],

"resources": [ ],

"outputs": { }

}

Page 22: Effortlessly Deploying a PI System in Azure or AWS · #PIWorld ©2019 OSIsoft, LLC Effortlessly Deploying a PI System in Azure or AWS Eugene Lee Technology Enablement Valentin Ivanov

#PIWorld ©2019 OSIsoft, LLC #PIWorld ©2019 OSIsoft, LLC 22

Conclusion

•Automated deployment is more scalable and less risky

•Build VMs snapshots only with new updates

•Deploy from snapshots for regular use

Page 23: Effortlessly Deploying a PI System in Azure or AWS · #PIWorld ©2019 OSIsoft, LLC Effortlessly Deploying a PI System in Azure or AWS Eugene Lee Technology Enablement Valentin Ivanov

#PIWorld ©2019 OSIsoft, LLC #PIWorld ©2019 OSIsoft, LLC 23

Related Lab at PI World

•PI System Quick Start Templates for AWS Day 3: PI Admin Lab

Page 24: Effortlessly Deploying a PI System in Azure or AWS · #PIWorld ©2019 OSIsoft, LLC Effortlessly Deploying a PI System in Azure or AWS Eugene Lee Technology Enablement Valentin Ivanov

#PIWorld ©2019 OSIsoft, LLC

Contact

24

• Eugene Lee

• Technology Enablement Engineer

• OSIsoft

[email protected]

• Valentin Ivanov

• Cloud Architect

• OSIsoft

[email protected]

Page 25: Effortlessly Deploying a PI System in Azure or AWS · #PIWorld ©2019 OSIsoft, LLC Effortlessly Deploying a PI System in Azure or AWS Eugene Lee Technology Enablement Valentin Ivanov

#PIWorld ©2019 OSIsoft, LLC

Questions?

Please wait for

the microphone

State your

name & company

Please remember

DOWNLOAD THE MOBILE APP

25

Page 26: Effortlessly Deploying a PI System in Azure or AWS · #PIWorld ©2019 OSIsoft, LLC Effortlessly Deploying a PI System in Azure or AWS Eugene Lee Technology Enablement Valentin Ivanov

#PIWorld ©2019 OSIsoft, LLC 26

Page 27: Effortlessly Deploying a PI System in Azure or AWS · #PIWorld ©2019 OSIsoft, LLC Effortlessly Deploying a PI System in Azure or AWS Eugene Lee Technology Enablement Valentin Ivanov

#PIWorld ©2019 OSIsoft, LLC 27

Format

Configuration DcsDemoWebsite {

Node ("NodeIpOrName") {

#Install IIS server role

WindowsFeature IIS {

Ensure = "Present"

Name = "Web-Server"

}

#Install ASP role

WindowsFeature AspNet45 {

Ensure = "Present"

Name = "Web-Asp-Net45"

}

}

}

Resources

Page 28: Effortlessly Deploying a PI System in Azure or AWS · #PIWorld ©2019 OSIsoft, LLC Effortlessly Deploying a PI System in Azure or AWS Eugene Lee Technology Enablement Valentin Ivanov

#PIWorld ©2019 OSIsoft, LLC 28

Modules

Import-DscResource -ModuleName PSDesiredStateConfiguration

Import-DscResource -ModuleName cChoco -ModuleVersion 2.3.1.0

Import-DscResource -ModuleName xPendingReboot -ModuleVersion 0.3.0.0

Both built-in and custom modules available

Page 29: Effortlessly Deploying a PI System in Azure or AWS · #PIWorld ©2019 OSIsoft, LLC Effortlessly Deploying a PI System in Azure or AWS Eugene Lee Technology Enablement Valentin Ivanov

#PIWorld ©2019 OSIsoft, LLC 29

AWS CloudFormation

{

"AWSTemplateFormatVersion" : "",

"Description" : "",

"Metadata" : { },

"Parameters" : { },

"Mappings" : { },

"Conditions" : { },

"Transform" : { },

"Resources" : { },

"Outputs" : { }

}