First Look at Azure Logic Apps (BAUG)

41
@BrisbaneAzureUG meetup.com/Brisbane-Azure-User-Group

Transcript of First Look at Azure Logic Apps (BAUG)

Page 1: First Look at Azure Logic Apps (BAUG)

@BrisbaneAzureUG

meetup.com/Brisbane-Azure-User-Group

Page 2: First Look at Azure Logic Apps (BAUG)

First Look:Azure App Service Logic Apps

Page 3: First Look at Azure Logic Apps (BAUG)

who?Lee SimpsonSolution Delivery Lead at Mexiahttps://au.linkedin.com/pub/lee-simpson/0/214/997 Architect, team leader, agile practitioner, integration specialist

Dan ToomeySenior Consultant at Mexia@Daniel2MeIntegration specialist, Pluralsight author, Azure Advisor, BizTalk UG leader

Page 4: First Look at Azure Logic Apps (BAUG)

Apps using Microsoft Azure

Agility Insight

Hyper-scale

Page 5: First Look at Azure Logic Apps (BAUG)

Mobile Services

Key app services in Azure previously

Azure Websites

BizTalk Services

Page 6: First Look at Azure Logic Apps (BAUG)

Key Learnings

• Validated the brand & cloud design patterns

• Hybrid is critical & a differentiator

• Feature & capability gaps:

• Out of box sources & destinations

• Pipeline templates, custom code support

• Long running workflows, parallel execution

• Needs a lot more investment!

BizTalk Services

Page 7: First Look at Azure Logic Apps (BAUG)

Lear

ning

Effo

rt

Complexity of problem

Page 8: First Look at Azure Logic Apps (BAUG)

Lear

ning

Effo

rt

Complexity of problem

HACK ZONE

Page 9: First Look at Azure Logic Apps (BAUG)

Lear

ning

Effo

rt

Complexity of problem

HACK ZONE

Page 10: First Look at Azure Logic Apps (BAUG)

Vision

iPaaS Leader

RichEcosystem

Democratize Integration

Page 11: First Look at Azure Logic Apps (BAUG)

Mobile Services

Key app services in Azure today

Azure Websites

BizTalk Services

Azure App Service

Page 12: First Look at Azure Logic Apps (BAUG)

Unique integrated offering

Build rich, engaging & intelligent apps

Scale as your business grows

Azure App Service

Page 13: First Look at Azure Logic Apps (BAUG)

API APPSEasily build and

consume APIs in the cloud

WEB APPSWeb apps that scale with

your business

LOGIC APPSAutomate business

process across SaaS and on-premises

MOBILE APPSBuild Mobile apps for

any device

One integrated offering

Page 14: First Look at Azure Logic Apps (BAUG)

All of the Azure-native capabilities you’d expect

• Full audit logs of all management operations• Role-based access control • Deployment lifecycle with Resource Manager• Resource Management API + resource PowerShell • On-prem support with release of Azure Stack

Page 15: First Look at Azure Logic Apps (BAUG)

App Service Plan

• Name• Pricing Tier• Resource Group• Gateway Host• Azure

Subscription

Page 16: First Look at Azure Logic Apps (BAUG)

API apps

Page 17: First Look at Azure Logic Apps (BAUG)

Easily use cloud or custom APIs:

• Dozens of built-in APIs for popular SaaS

• An ecosystem of APIs for any need

• Create and publish custom, reusable APIs

• Visual Studio tooling with one click publish and remote debugging

• Automatic client SDK generation for many languages

Create, consume andhost APIs more easily

API APPS

Page 18: First Look at Azure Logic Apps (BAUG)

• Box• Chatter• Delay• Dropbox• Azure HD Insight• Marketo• Azure Media Services• OneDrive• SharePoint • SQL Server• Office 365• Oracle

• QuickBooks• SalesForce• Sugar CRM • SAP• Azure Service Bus• Azure Storage• Timer / Recurrence• Twilio• Twitter• IBM DB2 • Informix• Websphere MQ

• Azure Web Jobs• Yammer• Dynamics CRM• Dynamics AX• Hybrid Connectivity

• HTTP, HTTPS • File• Flat File• FTP, SFTP• POP3/IMAP• SMTP• SOAP + WCF

• Batching / Debatching• Validate• Extract (XPath)• Transform (+Mapper)• Convert (XML-JSON)• Convert (XML-FF)• X12

• EDIFACT• AS2• TPMOM• Rules Engine

Connectors

Protocols BizTalk Services

Built-in API Connectors

Page 19: First Look at Azure Logic Apps (BAUG)

Swagger Support• Framework for

representing RESTful APIs

• Open source

• http://swagger.io/

Page 20: First Look at Azure Logic Apps (BAUG)

Visual Studio Support• Azure SDK 2.5.1

• Visual Studio 2013

http://blogs.msdn.com/b/visualstudio/archive/2015/03/24/introducing-the-azure-api-apps-tools-for-visual-studio-2013.aspx

Page 21: First Look at Azure Logic Apps (BAUG)

Visual Studio Support• Azure SDK 2.5.1

• Visual Studio 2013

• Bare-bonesWeb API projects with Swashbuckle (Nuget)

http://blogs.msdn.com/b/visualstudio/archive/2015/03/24/introducing-the-azure-api-apps-tools-for-visual-studio-2013.aspx

Page 22: First Look at Azure Logic Apps (BAUG)

Visual Studio Support• Azure SDK 2.5.1

• Visual Studio 2013

• Bare-bonesWeb API projects with Swashbuckle (Nuget)

• Microsoft Azure API Apps (Preview) publish target

http://blogs.msdn.com/b/visualstudio/archive/2015/03/24/introducing-the-azure-api-apps-tools-for-visual-studio-2013.aspx

Page 23: First Look at Azure Logic Apps (BAUG)

demo

Page 24: First Look at Azure Logic Apps (BAUG)

logic apps

Page 25: First Look at Azure Logic Apps (BAUG)

New Logic Apps for easy automation

• No code designer for rapid creation

• Dozens of pre-built templates to get started

• Out of box support for popular SaaS and on-premises apps

• Use with custom API apps of your own

• BizTalk APIs for expert integration scenarios

Automate SaaS andon-premises systems

LOGIC APPS

Page 26: First Look at Azure Logic Apps (BAUG)
Page 27: First Look at Azure Logic Apps (BAUG)

EAI Features v1 v2

XML Transformation

Validation

Content Based Routing

Request Response

AD Auth

OAuth

Flat File

JSON

XML

Connector Extensibility

Custom Code

B2B Features v1 v2

AS2 / X12 / EDIFACT

Agreement Decoupling

Batching / De-batching

Archiving

Transform

Trading Partner Management (API & Portal

Vertical Extensibility

Tracking

Customer Code

Workflow Features v1 v2

Long Running

Browser Designer

Control Flow

Instance Management

Tracking

Large Messages (1GB)

Config Support

Expressions

Rules Features v1 v2

Vocabulary

Policy

Sources (XML only today)

Test Policy

Browser Rule Editing

Other Features v1 v2

OOB Connectors

Marketplace

Hybrid Connectivity

Custom Code Isolation

Unified Portal

Auto Update with Opt Out

V1 = BizTalk ServicesV2 = App Services (BizTalk + Logic)

Page 28: First Look at Azure Logic Apps (BAUG)

ArchitectureThe Azure Resource manager is a highly-scalable geo-distributed system that handles millions of resources across 100,000’s of subscriptions. Can

create 200 node cluster in < 5 minutes!

Page 29: First Look at Azure Logic Apps (BAUG)

Same underlying engine…

Resource Manager

• Can handle thousands of parallel deployments per stamp• Resilient against failure – retries

with “at least once” guarantee• Simple, declarative JSON template• Automatically infers dependences

between resources

Logic Apps

• Can handle thousands of parallel runs per stamp• Resilient against failure – retries

with “at least once” guarantee• Simple, declarative JSON

definition• Automatically infers dependences

between actions

Page 30: First Look at Azure Logic Apps (BAUG)

… more power

Resource Manager

• 8 functions for basic referencing and string functions• Can only PUT resources into

resource groups• Auth must be through AAD• Triggered manual through UI or

API

Logic Apps

• Over 50 functions from string manipulations to math, to sets operations, to logical operators• All HTTP operations supported on

any arbitrary endpoint• Supports many OAuth providers,

AAD, Cert auth, or Basic auth• Different ways to be triggered

including recurrence

Page 31: First Look at Azure Logic Apps (BAUG)

demo

Page 32: First Look at Azure Logic Apps (BAUG)

Logic apps for orchestration across API apps

1. Implicitly – whenever you reference the output of an action you’ll depend on that action executing first

2. Explicit “dependsOn” condition – you can mark certain actions to run only after previous ones have completed

3. Explicit “expression” condition – a complex function that evaluates properties of other actions

Page 33: First Look at Azure Logic Apps (BAUG)

Repeating

• Loop a single action over a list of items• Runs the action N times• You can get at all of the statuses for each action• Tip: when you have multiple collections use:

• "repeat" : "@range(0,length(body('connector1')))"• …• "inputs" : "@concat(body('connector1')[repeatItem()],

body('connector2')[repeatItem()])"

Page 34: First Look at Azure Logic Apps (BAUG)

Conditionals

• Logic on a trigger or action• For triggers conditionals are post-conditions• For actions conditionals are pre-conditions

• You can do conditionals inside of repeats to perform as a filter

Page 35: First Look at Azure Logic Apps (BAUG)

{ "parameters": { ... }, "triggers": { ... }, "actions": { ... }, "outputs": { ... }}

Logic Apps Workflow definitions

Page 36: First Look at Azure Logic Apps (BAUG)

Target audience is anyone who can use Azure

… but not necessarily business users or consumers

Page 37: First Look at Azure Logic Apps (BAUG)

resources

Page 38: First Look at Azure Logic Apps (BAUG)

http://channel9.msdn.com/Azure

Windows Azure Area on

Page 39: First Look at Azure Logic Apps (BAUG)

http://channel9.msdn.com/Events/Ignite/2015

Page 40: First Look at Azure Logic Apps (BAUG)

Logic App References

• https://msdn.microsoft.com/en-us/library/azure/dn948510.aspx• Workflow Management API• Workflow Definition Language• Workflow Actions & Triggers

API App References

• https://msdn.microsoft.com/en-us/library/azure/dn948518.aspx• Connectors & API App Reference

Page 41: First Look at Azure Logic Apps (BAUG)

questions