SlideShare a Scribd company logo
1 of 40
Download to read offline
Replatforming Legacy .NET Applications
to PCF Using modernized (Steeltoe)
techniques
Alfus Inigo Jaganathan
Advisory Solutions Architect
Pivotal
Poornima Varadhan
Global Engagement Lead
Cognizant
By -
Unless otherwise indicated, these slides are © 2013-2018 Pivotal Software, Inc. and licensed under a Creative Commons
Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/
Disclaimer
Unless otherwise indicated, these slides are © 2013-2018 Pivotal Software, Inc. and licensed under a Creative Commons
Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/
Safe Harbor Statement
The following is intended to outline the general direction of Pivotal's offerings. It is intended for information
purposes only and may not be incorporated into any contract. Any information regarding pre-release of Pivotal
offerings, future updates or other planned modifications is subject to ongoing evaluation by Pivotal and is
subject to change. This information is provided without warranty or any kind, express or implied, and is not a
commitment to deliver any material, code, or functionality, and should not be relied upon in making purchasing
decisions regarding Pivotal's offerings. These purchasing decisions should only be based on features currently
available. The development, release, and timing of any features or functionality described for Pivotal's offerings
in this presentation remain at the sole discretion of Pivotal. Pivotal has no obligation to update forward looking
information in this presentation.
Unless otherwise indicated, these slides are © 2013-2018 Pivotal Software, Inc. and licensed under a Creative Commons
Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/
Agenda
Unless otherwise indicated, these slides are © 2013-2018 Pivotal Software, Inc. and licensed under a Creative Commons
Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/
What to expect in the next 30 mins?
• Quick introduction to PCF & Steeltoe
• Understanding 15 Factors, run through the relevant ones for this talk
• Migration Patterns, a high level overview
• Replatforming in detail with code snippets
• Demo the Replatformed .NET Webform app to PCF
• Pivotal AppTx and Tools
• Partner talk on "Partner & Accelerate to operate at scale” - Cognizant
Unless otherwise indicated, these slides are © 2013-2018 Pivotal Software, Inc. and licensed under a Creative Commons
Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/
Pivotal Cloud Foundry
Unless otherwise indicated, these slides are © 2013-2018 Pivotal Software, Inc. and licensed under a Creative Commons
Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/
PCF – A modern cloud native platform
• Supports multi-languages -
buildpacks
• Supports Hybrid Cloud (On-Prem
& public)
• Supports Multi Cloud (IaaS –
Azure, AWS, GCP, etc.) -
Portability
• 4 Levels of HA
• Zero downtime deployment
support
• Elastic scalability
• Developer focus on delivering
business value
• Reduce Operations/DevOps cost
Unless otherwise indicated, these slides are © 2013-2018 Pivotal Software, Inc. and licensed under a Creative Commons
Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/
Steeltoe.io
Unless otherwise indicated, these slides are © 2013-2018 Pivotal Software, Inc. and licensed under a Creative Commons
Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/
Steeltoe.io for .NET developers
9
• Open source
• Industry standard best practices building microservices
• Available as .NET Standard NuGet libraries
• Supports .NET Core and Full Framework
• Helps leveraging
• Netflix Eureka (Service Discovery)
• Hystrix (Circuit Breaker)
• Spring Cloud Config Server
• Cloud Connectors
• Cloud Security Providers
• Monitoring and Management
• What's new in 2.1
• Additional Spring boot compatible endpoints
• Out-of-the-box Health contributors
• Application Metrics
• Distributed Tracing
• Additional .NET 4.x support
Unless otherwise indicated, these slides are © 2013-2018 Pivotal Software, Inc. and licensed under a Creative Commons
Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/
15 Factors
Unless otherwise indicated, these slides are © 2013-2018 Pivotal Software, Inc. and licensed under a Creative Commons
Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/
15 FACTOR PCF Steeltoe
1
One codebase,
one application
• Single codebase
• Any number of immutable releases
N/A N/A
2 API first
• Contract first development
• Server mocks (e.g. Apiary)
N/A N/A
3
Dependency
management
• Isolate dependencies as NuGet packages
• Bundle dependencies together with build artifacts
• Self Contained
• Buildpacks N/A
4
Design, build,
release, and run
• CI/CD Pipeline
• Iterative
• Zero downtime
• Integration with Concourse,
Jenkins, etc.
• Blue-Green & Canary deploy
N/A
5
Configuration,
credentials, and
code
• Code - Single artifact for multi environment
• Externalize configuration and credentials
• Treat configuration as ENV variables
• ENV variables
• User Provided Services
• Structured ENV variables from
bounded services
• Config Server (Git & Vault)
• .NET
Configuration
Extensions NuGet
packages
Understanding 15 Factors (Ref: https://content.pivotal.io/blog/beyond-the-twelve-factor-app)
Unless otherwise indicated, these slides are © 2013-2018 Pivotal Software, Inc. and licensed under a Creative Commons
Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/
15 FACTOR PCF Steeltoe
6 Logs
• Treat as event streams
• Sequence of time-ordered emitted events
• STDOUT and STDERR
• Loggregator-Firehose (cf logs)
• CF Syslog Drain – stream to external
aggregation/analytics service
• Apps Manager
• Dynamic Logging
• Management – Actuators
(Integration with Apps
Manager)
7 Disposability
• Maximize Robustness
• Fast startup & Graceful shutdown
• Externalize using backing services (e.g. Cache)
• High Availability (Health
Management of App Instances)
• Maintain capacity
• Management – Health
Contributors
8
Backing
Services
• Treat as attached resources.
• Loose coupling, flexibility
• E.g. data store, caching, etc.
• Market Place services (Redis, Rabbit,
MySql, etc.)
• Circuit Breaker as MP service
• Open Service Brokers
• cf bind-service, cf unbind-service
• Implementation of Netflix
Hystrix (Circuit breaker,
Netflix Eureka (Service
Discovery)
• Connectors
9
Environment
Parity
• Keep all environments including development
as similar as possible
• Application “will work everywhere”
• Every commit, a deployment candidate
• PCF Dev
• Similar experience to developers
• Logical separation called ‘Spaces’,
on single foundation
N/A
10
Administrative
Processes
• Run admin/management tasks as one-off,
scheduled processes • CF Tasks and Task scheduler N/A
Understanding 15 Factors (Ref: https://content.pivotal.io/blog/beyond-the-twelve-factor-app)
Unless otherwise indicated, these slides are © 2013-2018 Pivotal Software, Inc. and licensed under a Creative Commons
Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/
15 FACTOR PCF Steeltoe
11 Port Binding
• Avoid micromanaging port assignments
• Allow externalized runtime port binding
• 1 : 1 (App instance : App
Server)
• PCF GoRouter routes to App
instances
N/A
12
Stateless
Processes
• All long-lasting state to be externalized using
backing services (e.g. session)
• Share-Nothing (containers are highly disposable)
• Externalize data caching
• MP services like Gemfire,
Redis, etc.
• File System as service
• Connectors as NuGet
packages
• Seamless integration
with backing services
13 Concurrency
• Scale out horizontally rather than vertical scaling
• Should be able to run multiple concurrent instances
• Elastic scaling made easy
• Auto scaler (scale by demand
automatically)
• cf scale
N/A
14 Telemetry
• Application Performance Monitoring(APM) –
Wellness
• Domain specific telemetry– Analytics & Reporting
• Health & System logs – Stream of events
• PCF Metrics
• cf events & cf logs
• Syslog Drains and Nozzles
• Management/Actuators
• Apps Manager
15
Authentication
& Authorization
• Security should be never be an after thought
• Should be backed in from day one
• UAA Server
• Pivotal Single Sign-on
• CredHub
• Platform provided security,
firewalls, etc.
• Security provider
packages for seamless
integration with security
providers
Understanding 15 Factors (Ref: https://content.pivotal.io/blog/beyond-the-twelve-factor-app)
Unless otherwise indicated, these slides are © 2013-2018 Pivotal Software, Inc. and licensed under a Creative Commons
Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/
Migration Patterns
Unless otherwise indicated, these slides are © 2013-2018 Pivotal Software, Inc. and licensed under a Creative Commons
Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/
Migration Patterns
15
• Replatforming to start
with…
• Start small
• Less cost involved
• Faster time to value
• In longer term, based on
business value/criticality
of the app, move towards
modernization
Unless otherwise indicated, these slides are © 2013-2018 Pivotal Software, Inc. and licensed under a Creative Commons
Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/
Replatforming
Unless otherwise indicated, these slides are © 2013-2018 Pivotal Software, Inc. and licensed under a Creative Commons
Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/
Replatforming
17
• Minimal Efforts
• Less cost
• Sometimes called Lift & Shift
• Run natively in PAS (Pivotal Application
Service)
• Cloud Ready/Friendly
• Critical 12/15 factors
• Configuration, Credentials & Code
• Logs
• Stateless Processes
• Concurrency
• Dependency Management
• Port binding
• Authentication & Authorization
• One Codebase One Application*
• Build, Release and Run*
* Recommended, but not critical
Unless otherwise indicated, these slides are © 2013-2018 Pivotal Software, Inc. and licensed under a Creative Commons
Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/
.NET Apps – PCF Readiness
18
• High level .NET to PCF
• 4 categories
• *Out of scope includes
• Apps being retired within
6-12 months
• Vendor/3rd party apps
• Databases
• Reporting/BI Front end
apps
Unless otherwise indicated, these slides are © 2013-2018 Pivotal Software, Inc. and licensed under a Creative Commons
Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/
Replatforming (Steps)
19
• Create and move to a separate repository (15F - One Codebase One
Application)
• Upgrade to latest .NET framework preferably 4.6.1 or above
• Helps leveraging .NET Standard libraries like Steeltoe.io
• Build CI-CD pipeline (15F – Design, Build, Release and Run)
• Bring all the dependencies (Registry, GAC, 3rd party) to Bin, with the
publish artifacts (15F – Dependency Management)
Unless otherwise indicated, these slides are © 2013-2018 Pivotal Software, Inc. and licensed under a Creative Commons
Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/
Replatforming (Steps)
20
• Remove any code that micromanages the port, let the platform take
care of port binding (15F – Port Binding)
• Verify if application access any File system. In that case, modify the
code to access either s3 object storages or NoSQL database or Pivotal
volume services. (15F – Disposability)
• Make use of Steeltoe.io libraries and other techniques (following
slides) to implement remaining of critical factors one by one
Unless otherwise indicated, these slides are © 2013-2018 Pivotal Software, Inc. and licensed under a Creative Commons
Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/
Leveraging Steeltoe.io
21
• Prerequisite: framework must be updated to 4.6.1 or above
• 3 types of packages (Samples https://github.com/SteeltoeOSS/Samples)
• Autofac - Autofac dependency injection (e.g. Steeltoe.Extensions.Configuration.CloudFoundryAutofac)
• Base - No dependency injection (e.g. Steeltoe.Extensions.Configuration.CloudFoundryBase)
• Core - ASP.NET Core dependency injection (e.g. Steeltoe.Extensions.Configuration.CloudFoundryCore)
• Here we use Core package for the demo and sample, with a simple
technique using Generic Host Builder
• Add appSettings.json, to have a .NET Core kind of…
Unless otherwise indicated, these slides are © 2013-2018 Pivotal Software, Inc. and licensed under a Creative Commons
Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/
Leveraging Steeltoe using Generic Host Builder
22
• CoreServiceConfig.cs under App_Start
• Packages used
o Microsoft.AspNetCore.Hosting
o Microsoft.Extensions.DependencyInjection
o Microsoft.Extensions.Logging
• CoreServiceConfig.Register() from
Global.ascx.cs, entry point of the
application
Ask the container for injected services from
anywhere in the application
Unless otherwise indicated, these slides are © 2013-2018 Pivotal Software, Inc. and licensed under a Creative Commons
Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/
Configuration (15F - Configuration, Credentials and Code)
23
• Packages
o Steeltoe.Extensions.Configuration.CloudFoundryCore
(User-Provided-Services & Bounded Services)
o Pivotal.Extensions. Configuration.ConfigServerBase
(Config Server)
• Config Server backed by vault and git (vault for
secrets and credentials & git for non-sensitive
configuration
o Recipe ref: https://dotnet-cookbook.cfapps.io/config/config-
server-vault-git-dotnet-core/
• Bounded services
configuration and User-
Provided services can be
pulled via
• Structured ENV variable
• CloudFoundryServicesOptions, a
JSON representation of
VCAP_SERVICES configuration
Unless otherwise indicated, these slides are © 2013-2018 Pivotal Software, Inc. and licensed under a Creative Commons
Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/
Configuration (15F - Configuration, Credentials and Code)
As an example, Connect to SQL Server using Steeltoe connector
24
• Package(s)
Steeltoe.CloudFoundry.ConnectorCore
• This includes base and almost all connectors.
Alternatively you can use specific connector packages
like Steeltoe.CloudFoundry.Connector.SqlServer
Unless otherwise indicated, these slides are © 2013-2018 Pivotal Software, Inc. and licensed under a Creative Commons
Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/
Externalize Session (15F – Backing Services & 15F – Concurrency)
As an example, Redis as the persistent store
25
Additional reference: https://dotnet-cookbook.cfapps.io/aspnet/redis-
session-full-framework/
Unless otherwise indicated, these slides are © 2013-2018 Pivotal Software, Inc. and licensed under a Creative Commons
Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/
Externalize Caching (15F – Backing Services & 15F – Concurrency)
As an example, Connect to Redis using Steeltoe connector
26
Unless otherwise indicated, these slides are © 2013-2018 Pivotal Software, Inc. and licensed under a Creative Commons
Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/
Logging (15F – Logs)
27
• STDOUT/STDERR
• Simply write à
Console.{Out/Error}.WriteLine(“Something…”);
• If using 3r party like log4net, Nlog, etc., modify
their Appender config to type “Console”
• Replace with Microsoft.Extensions.Logging
Ilogger, but a bit more of a work
• Enhance using Steeltoe’s dynamic logging
feature, lets you change the log levels without
restarting the application (next slide)
Ref: https://steeltoe.io/docs/steeltoe-logging/
Unless otherwise indicated, these slides are © 2013-2018 Pivotal Software, Inc. and licensed under a Creative Commons
Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/
Enable Steeltoe Management Actuators
Health Contributors, Dynamic Logging and much more… (https://steeltoe.io/docs/steeltoe-management/)
28
In Global.ascx, call out as below to activate
the actuators
appSettings.json should
have this configuration
Unless otherwise indicated, these slides are © 2013-2018 Pivotal Software, Inc. and licensed under a Creative Commons
Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/
Security (15F – Authentication and Authorization)
29
• Straight forward, if using Forms Authentication
• Windows Authentication
• Not-supported, so use Pivotal Single Sign-on or UAA or similar Identity providers
• Leverage Steeltoe middleware and OWIN request pipeline to integrate with any identity
provider supporting OAuth & OpenID Connect
• Package Steeltoe.Security.Authentication.CloudFoundryOwin
• Ref: https://steeltoe.io/docs/steeltoe-security/ & https://github.com/SteeltoeOSS/Samples/tree/dev/Security
• Optionally, you can create your own HttpModule which can intercept on
HttpContext.AuthenticateRequest, set httpApplication.Context.User from newly generated
GenericPrincipal using JWT, etc.
Unless otherwise indicated, these slides are © 2013-2018 Pivotal Software, Inc. and licensed under a Creative Commons
Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/
.NET Apps - Buildpacks
30
• Buildpacks-
• Provides framework and
runtime support
• Determines, what
dependencies to download
• Configures the apps so as to
communicate with bound
services
Learn more about buildpacks? https://pivotal.io/platform/pcf-components/buildpacks
Unless otherwise indicated, these slides are © 2013-2018 Pivotal Software, Inc. and licensed under a Creative Commons
Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/
Demo – Replatformed App (with
Steeltoe Actuators) in PCF
Recording link https://1drv.ms/v/s!AhnjuwdpuapykJI7M_KFmmgwlezG7A
Unless otherwise indicated, these slides are © 2013-2018 Pivotal Software, Inc. and licensed under a Creative Commons
Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/
Pivotal AppTx & Tools
Unless otherwise indicated, these slides are © 2013-2018 Pivotal Software, Inc. and licensed under a Creative Commons
Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/
Pivotal Application Transformation Team (AppTx)
https://pivotal.io/application-transformation
33
Who we are?
ü Team of Solutions Architects and
Strategists
ü Jump start App Tx to quickly show
measured wins
ü Simple tools, Start small & Scale fast
ü Redefine current systems to achieve cloud
native speed, resiliency and economics
What we believe?
ü Should move Apps to PCF
ü Plan just enough to start
ü Define hard goals and measure them
ü Automate everything you can
ü Build skills by pairing and doing
ü Let real work inform strategy
Unless otherwise indicated, these slides are © 2013-2018 Pivotal Software, Inc. and licensed under a Creative Commons
Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/
Pivotal Tools (Get Started, Measure Incremental, Learn as You Do)
https://www.youtube.com/watch?v=neL3OQ1GRhY
34
Unless otherwise indicated, these slides are © 2013-2018 Pivotal Software, Inc. and licensed under a Creative Commons
Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/
Partner Talk
https://www.cognizant.com/cognizant-digital-business/digital-engineering-services
Unless otherwise indicated, these slides are © 2013-2018 Pivotal Software, Inc. and licensed under a Creative Commons
Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/
Partner & Accelerate to operate at scale
• Deeper domain knowledge
• Deeper services knowledge
• Application expertise/ Digital Engineering skills
36
+
enabling clients to accelerate their digital transformation journey with rapid application
portfolio migration and cloud-native development at scale.
• Market leading s/w development methodology
• Technology & Tool offerings
• Cloud Native Innovation
• App Tx & Labs
Unless otherwise indicated, these slides are © 2013-2018 Pivotal Software, Inc. and licensed under a Creative Commons
Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/
Scale better yet be more sustainable - How we do it?
PEOPLE
• Talent pool of 1/5 of workforce skilled as engineers and Full Stack developers.
• Put the right work in the right place at the right cost for scale
o Working with customers on premise alongside with Pivotal as needed
o Leveraging Cognizant Labs
o Operating in On/off model as appropriate.
• Training - PAL , T skilled
PROCESS
• Adoption of Product-engineering principles to build or modernize S/W -(Lean Engineering , XP , Build
test and learn methodologies etc.)
TECHNOLOGY
• Empower Engineering and Product Development teams with Tools and accelerators (like VSM) to
automate the tasks / processes. - VSM : Evaluates application code to identify changes needed (like
antipatterns etc.) to help determine the type of remediation needed.
Unless otherwise indicated, these slides are © 2013-2018 Pivotal Software, Inc. and licensed under a Creative Commons
Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/
Driving change & adoption - Top Challenges
38
• Inadequately equipped from a skill, culture, mindset, inclination, and talent perspective -
Increasing education, skill building, and drive culture change
• Top-down communication is a gap in ensuring teams are aware, coordinated, & are able to
actively support digital change efforts at each level of the organization - Addressing missed
leadership communications opportunities
• Buy-in with Stake-holders for adoption of newer application delivery model - discussing
adequately with Business / IT customer teams on the need for right agile practices for right
work
• Operating with the old measures , metrics & governance – stressing the importance to
Redefine / Revamp the tools , processes , automation & metrics
Unless otherwise indicated, these slides are © 2013-2018 Pivotal Software, Inc. and licensed under a Creative Commons
Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/
In summary, transformation journey’s continued success is on…
• How quickly enterprise embrace change , drive culture shift and be agile
• Learning & Sharing among Digital leaders
• How to do it @scale repeatably and sustainably.
Jeff Bezos - Amazon Founder
In today's era of Volatility , there is no other way but to re-invent ,
the only sustainable advantage you can have over others is AGILITY ,
that's it. Because nothing else is sustainable , everything else you create ,
somebody else will replicate
@poornima_30
#poornima-varadhan
poornima.Varadhan@cognizant.com
Thank you! Stay Connected!
#springone@s1p
@alfusinigoj
#alfusinigojaganathan
ajaganathan@pivotal.io

More Related Content

What's hot

Anypoint new features_coimbatore_mule_meetup
Anypoint new features_coimbatore_mule_meetupAnypoint new features_coimbatore_mule_meetup
Anypoint new features_coimbatore_mule_meetupMergeStack
 
MuleSoft Singapore Meetup May 2020
MuleSoft Singapore Meetup May 2020MuleSoft Singapore Meetup May 2020
MuleSoft Singapore Meetup May 2020Julian Douch
 
MuleSoft Meetup Singapore March 2019
MuleSoft Meetup Singapore March 2019MuleSoft Meetup Singapore March 2019
MuleSoft Meetup Singapore March 2019Julian Douch
 
MuleSoft Meetup Singapore #8 March 2021
MuleSoft Meetup Singapore #8 March 2021MuleSoft Meetup Singapore #8 March 2021
MuleSoft Meetup Singapore #8 March 2021Julian Douch
 
MuleSoft Meetup Singapore - Reliable Messaging & RTF Operations
MuleSoft Meetup Singapore - Reliable Messaging & RTF OperationsMuleSoft Meetup Singapore - Reliable Messaging & RTF Operations
MuleSoft Meetup Singapore - Reliable Messaging & RTF OperationsJulian Douch
 
Richmond MuleSoft Meetup 2021-08-18
Richmond MuleSoft Meetup 2021-08-18Richmond MuleSoft Meetup 2021-08-18
Richmond MuleSoft Meetup 2021-08-18Tom Obermeyer
 
MuleSoft Architecture Presentation
MuleSoft Architecture PresentationMuleSoft Architecture Presentation
MuleSoft Architecture PresentationRupesh Sinha
 
MuleSoft_NZ_Meetup_8
MuleSoft_NZ_Meetup_8MuleSoft_NZ_Meetup_8
MuleSoft_NZ_Meetup_8MizuhoHoshino
 
Chicago rtf meetup august 17 2021
Chicago rtf meetup august 17 2021Chicago rtf meetup august 17 2021
Chicago rtf meetup august 17 2021prasenjit banerjee
 
WSO2- OSC Korea - Accelerating Digital Businesses with APIs
WSO2- OSC Korea - Accelerating Digital Businesses with APIsWSO2- OSC Korea - Accelerating Digital Businesses with APIs
WSO2- OSC Korea - Accelerating Digital Businesses with APIsWSO2
 
LA November Meetup (Setting up VM/Bare Metal Runtime Fabric)
LA November Meetup (Setting up VM/Bare Metal Runtime Fabric)LA November Meetup (Setting up VM/Bare Metal Runtime Fabric)
LA November Meetup (Setting up VM/Bare Metal Runtime Fabric)RohitKumarMalik
 
Metadata definition between flows on Studio 7 : MuleSoft Virtual Muleys Meetups
Metadata definition between flows on Studio 7  : MuleSoft Virtual Muleys MeetupsMetadata definition between flows on Studio 7  : MuleSoft Virtual Muleys Meetups
Metadata definition between flows on Studio 7 : MuleSoft Virtual Muleys MeetupsAngel Alberici
 
Operationalizing your C4E VirtualMuleys & Deployment Considerations: Cloudhub...
Operationalizing your C4E VirtualMuleys & Deployment Considerations: Cloudhub...Operationalizing your C4E VirtualMuleys & Deployment Considerations: Cloudhub...
Operationalizing your C4E VirtualMuleys & Deployment Considerations: Cloudhub...Angel Alberici
 
How Customers are Building and Using their Own Connectors
How Customers are Building and Using their Own ConnectorsHow Customers are Building and Using their Own Connectors
How Customers are Building and Using their Own ConnectorsMuleSoft
 
RA TechED 2019 - SY22 - The Future of Software Purchase and Maintenance
RA TechED 2019 - SY22 - The Future of Software Purchase and MaintenanceRA TechED 2019 - SY22 - The Future of Software Purchase and Maintenance
RA TechED 2019 - SY22 - The Future of Software Purchase and MaintenanceRockwell Automation
 
MuleSoft Composer - 09122021 - Virtual Muleys
MuleSoft Composer - 09122021 - Virtual Muleys MuleSoft Composer - 09122021 - Virtual Muleys
MuleSoft Composer - 09122021 - Virtual Muleys Angel Alberici
 
Mulesoft Solutions for SOA
Mulesoft Solutions for SOAMulesoft Solutions for SOA
Mulesoft Solutions for SOAkumar gaurav
 
Virtual Meetup - API Security Best Practices
Virtual Meetup - API Security Best PracticesVirtual Meetup - API Security Best Practices
Virtual Meetup - API Security Best PracticesJimmy Attia
 
MuleSoft Meetup Singapore June 2021
MuleSoft Meetup Singapore June 2021MuleSoft Meetup Singapore June 2021
MuleSoft Meetup Singapore June 2021Julian Douch
 

What's hot (20)

Anypoint new features_coimbatore_mule_meetup
Anypoint new features_coimbatore_mule_meetupAnypoint new features_coimbatore_mule_meetup
Anypoint new features_coimbatore_mule_meetup
 
MuleSoft Singapore Meetup May 2020
MuleSoft Singapore Meetup May 2020MuleSoft Singapore Meetup May 2020
MuleSoft Singapore Meetup May 2020
 
MuleSoft Meetup Singapore March 2019
MuleSoft Meetup Singapore March 2019MuleSoft Meetup Singapore March 2019
MuleSoft Meetup Singapore March 2019
 
MuleSoft Meetup Singapore #8 March 2021
MuleSoft Meetup Singapore #8 March 2021MuleSoft Meetup Singapore #8 March 2021
MuleSoft Meetup Singapore #8 March 2021
 
MuleSoft Meetup Singapore - Reliable Messaging & RTF Operations
MuleSoft Meetup Singapore - Reliable Messaging & RTF OperationsMuleSoft Meetup Singapore - Reliable Messaging & RTF Operations
MuleSoft Meetup Singapore - Reliable Messaging & RTF Operations
 
Richmond MuleSoft Meetup 2021-08-18
Richmond MuleSoft Meetup 2021-08-18Richmond MuleSoft Meetup 2021-08-18
Richmond MuleSoft Meetup 2021-08-18
 
MuleSoft Architecture Presentation
MuleSoft Architecture PresentationMuleSoft Architecture Presentation
MuleSoft Architecture Presentation
 
MuleSoft_NZ_Meetup_8
MuleSoft_NZ_Meetup_8MuleSoft_NZ_Meetup_8
MuleSoft_NZ_Meetup_8
 
Chicago rtf meetup august 17 2021
Chicago rtf meetup august 17 2021Chicago rtf meetup august 17 2021
Chicago rtf meetup august 17 2021
 
WSO2- OSC Korea - Accelerating Digital Businesses with APIs
WSO2- OSC Korea - Accelerating Digital Businesses with APIsWSO2- OSC Korea - Accelerating Digital Businesses with APIs
WSO2- OSC Korea - Accelerating Digital Businesses with APIs
 
LA November Meetup (Setting up VM/Bare Metal Runtime Fabric)
LA November Meetup (Setting up VM/Bare Metal Runtime Fabric)LA November Meetup (Setting up VM/Bare Metal Runtime Fabric)
LA November Meetup (Setting up VM/Bare Metal Runtime Fabric)
 
Metadata definition between flows on Studio 7 : MuleSoft Virtual Muleys Meetups
Metadata definition between flows on Studio 7  : MuleSoft Virtual Muleys MeetupsMetadata definition between flows on Studio 7  : MuleSoft Virtual Muleys Meetups
Metadata definition between flows on Studio 7 : MuleSoft Virtual Muleys Meetups
 
Operationalizing your C4E VirtualMuleys & Deployment Considerations: Cloudhub...
Operationalizing your C4E VirtualMuleys & Deployment Considerations: Cloudhub...Operationalizing your C4E VirtualMuleys & Deployment Considerations: Cloudhub...
Operationalizing your C4E VirtualMuleys & Deployment Considerations: Cloudhub...
 
How Customers are Building and Using their Own Connectors
How Customers are Building and Using their Own ConnectorsHow Customers are Building and Using their Own Connectors
How Customers are Building and Using their Own Connectors
 
RA TechED 2019 - SY22 - The Future of Software Purchase and Maintenance
RA TechED 2019 - SY22 - The Future of Software Purchase and MaintenanceRA TechED 2019 - SY22 - The Future of Software Purchase and Maintenance
RA TechED 2019 - SY22 - The Future of Software Purchase and Maintenance
 
MuleSoft Composer - 09122021 - Virtual Muleys
MuleSoft Composer - 09122021 - Virtual Muleys MuleSoft Composer - 09122021 - Virtual Muleys
MuleSoft Composer - 09122021 - Virtual Muleys
 
Mulesoft Solutions for SOA
Mulesoft Solutions for SOAMulesoft Solutions for SOA
Mulesoft Solutions for SOA
 
Virtual Meetup - API Security Best Practices
Virtual Meetup - API Security Best PracticesVirtual Meetup - API Security Best Practices
Virtual Meetup - API Security Best Practices
 
WHISHWORKS-MuleSoft Hyderabad Meetup -Oct 2018
WHISHWORKS-MuleSoft Hyderabad Meetup -Oct 2018WHISHWORKS-MuleSoft Hyderabad Meetup -Oct 2018
WHISHWORKS-MuleSoft Hyderabad Meetup -Oct 2018
 
MuleSoft Meetup Singapore June 2021
MuleSoft Meetup Singapore June 2021MuleSoft Meetup Singapore June 2021
MuleSoft Meetup Singapore June 2021
 

Similar to Re-Platforming Legacy .Net Applications to PCF Using Modernized Techniques

Spring Cloud Stream: What's New in 2.x—and What's Next?
Spring Cloud Stream: What's New in 2.x—and What's Next?Spring Cloud Stream: What's New in 2.x—and What's Next?
Spring Cloud Stream: What's New in 2.x—and What's Next?VMware Tanzu
 
Cross-Platform Observability for Cloud Foundry
Cross-Platform Observability for Cloud FoundryCross-Platform Observability for Cloud Foundry
Cross-Platform Observability for Cloud FoundryVMware Tanzu
 
Cloud Event Driven Architectures with Spring Cloud Stream 2.0 - SpringOne Tou...
Cloud Event Driven Architectures with Spring Cloud Stream 2.0 - SpringOne Tou...Cloud Event Driven Architectures with Spring Cloud Stream 2.0 - SpringOne Tou...
Cloud Event Driven Architectures with Spring Cloud Stream 2.0 - SpringOne Tou...VMware Tanzu
 
Cloud Foundry Networking with VMware NSX
Cloud Foundry Networking with VMware NSXCloud Foundry Networking with VMware NSX
Cloud Foundry Networking with VMware NSXVMware Tanzu
 
[2015-11월 정기 세미나] Cloud Native Platform - Pivotal
[2015-11월 정기 세미나] Cloud Native Platform - Pivotal[2015-11월 정기 세미나] Cloud Native Platform - Pivotal
[2015-11월 정기 세미나] Cloud Native Platform - PivotalOpenStack Korea Community
 
Steeltoe: Develop .NET Microservices Without Cloud Platform Lock-In
Steeltoe: Develop .NET Microservices Without Cloud Platform Lock-InSteeltoe: Develop .NET Microservices Without Cloud Platform Lock-In
Steeltoe: Develop .NET Microservices Without Cloud Platform Lock-InVMware Tanzu
 
A DevOps adoption playbook- achieving business value at scale
A DevOps adoption playbook- achieving business value at scaleA DevOps adoption playbook- achieving business value at scale
A DevOps adoption playbook- achieving business value at scaleSanjeev Sharma
 
Building Highly Scalable Spring Applications using In-Memory Data Grids
Building Highly Scalable Spring Applications using In-Memory Data GridsBuilding Highly Scalable Spring Applications using In-Memory Data Grids
Building Highly Scalable Spring Applications using In-Memory Data GridsJohn Blum
 
Mulesoft Meetup Roma - Monitoring Framework & DevOps.pptx
Mulesoft Meetup Roma - Monitoring Framework & DevOps.pptxMulesoft Meetup Roma - Monitoring Framework & DevOps.pptx
Mulesoft Meetup Roma - Monitoring Framework & DevOps.pptxAlfonso Martino
 
Developing Real-Time Data Pipelines with Apache Kafka
Developing Real-Time Data Pipelines with Apache KafkaDeveloping Real-Time Data Pipelines with Apache Kafka
Developing Real-Time Data Pipelines with Apache KafkaJoe Stein
 
Containerizing a Data Warehouse for Kubernetes
Containerizing a Data Warehouse for KubernetesContainerizing a Data Warehouse for Kubernetes
Containerizing a Data Warehouse for KubernetesVMware Tanzu
 
Custom App Autoscaler Using Cloud Controlly API
Custom App Autoscaler Using Cloud Controlly APICustom App Autoscaler Using Cloud Controlly API
Custom App Autoscaler Using Cloud Controlly APIVMware Tanzu
 
It’s a Multi-Cloud World, But What About The Data?
It’s a Multi-Cloud World, But What About The Data?It’s a Multi-Cloud World, But What About The Data?
It’s a Multi-Cloud World, But What About The Data?VMware Tanzu
 
Day 3: Security Auditing and Compliance
Day 3: Security Auditing and ComplianceDay 3: Security Auditing and Compliance
Day 3: Security Auditing and ComplianceVMware Tanzu
 
Keynote: Architecting for Continuous Delivery (Pivotal Cloud Platform Roadshow)
Keynote: Architecting for Continuous Delivery (Pivotal Cloud Platform Roadshow)Keynote: Architecting for Continuous Delivery (Pivotal Cloud Platform Roadshow)
Keynote: Architecting for Continuous Delivery (Pivotal Cloud Platform Roadshow)VMware Tanzu
 
Connecting All Abstractions with Istio
Connecting All Abstractions with IstioConnecting All Abstractions with Istio
Connecting All Abstractions with IstioVMware Tanzu
 
MuleSoft Surat Virtual Meetup#16 - Anypoint Deployment Option, API and Operat...
MuleSoft Surat Virtual Meetup#16 - Anypoint Deployment Option, API and Operat...MuleSoft Surat Virtual Meetup#16 - Anypoint Deployment Option, API and Operat...
MuleSoft Surat Virtual Meetup#16 - Anypoint Deployment Option, API and Operat...Jitendra Bafna
 
Cloud Foundry and Microservices: A Mutualistic Symbiotic Relationship
Cloud Foundry and Microservices: A Mutualistic Symbiotic RelationshipCloud Foundry and Microservices: A Mutualistic Symbiotic Relationship
Cloud Foundry and Microservices: A Mutualistic Symbiotic RelationshipVMware Tanzu
 
Cloud Foundry and Microservices: A Mutualistic Symbiotic Relationship
Cloud Foundry and Microservices: A Mutualistic Symbiotic RelationshipCloud Foundry and Microservices: A Mutualistic Symbiotic Relationship
Cloud Foundry and Microservices: A Mutualistic Symbiotic RelationshipMatt Stine
 
Removing Barriers Between Dev and Ops
Removing Barriers Between Dev and OpsRemoving Barriers Between Dev and Ops
Removing Barriers Between Dev and OpsVMware Tanzu
 

Similar to Re-Platforming Legacy .Net Applications to PCF Using Modernized Techniques (20)

Spring Cloud Stream: What's New in 2.x—and What's Next?
Spring Cloud Stream: What's New in 2.x—and What's Next?Spring Cloud Stream: What's New in 2.x—and What's Next?
Spring Cloud Stream: What's New in 2.x—and What's Next?
 
Cross-Platform Observability for Cloud Foundry
Cross-Platform Observability for Cloud FoundryCross-Platform Observability for Cloud Foundry
Cross-Platform Observability for Cloud Foundry
 
Cloud Event Driven Architectures with Spring Cloud Stream 2.0 - SpringOne Tou...
Cloud Event Driven Architectures with Spring Cloud Stream 2.0 - SpringOne Tou...Cloud Event Driven Architectures with Spring Cloud Stream 2.0 - SpringOne Tou...
Cloud Event Driven Architectures with Spring Cloud Stream 2.0 - SpringOne Tou...
 
Cloud Foundry Networking with VMware NSX
Cloud Foundry Networking with VMware NSXCloud Foundry Networking with VMware NSX
Cloud Foundry Networking with VMware NSX
 
[2015-11월 정기 세미나] Cloud Native Platform - Pivotal
[2015-11월 정기 세미나] Cloud Native Platform - Pivotal[2015-11월 정기 세미나] Cloud Native Platform - Pivotal
[2015-11월 정기 세미나] Cloud Native Platform - Pivotal
 
Steeltoe: Develop .NET Microservices Without Cloud Platform Lock-In
Steeltoe: Develop .NET Microservices Without Cloud Platform Lock-InSteeltoe: Develop .NET Microservices Without Cloud Platform Lock-In
Steeltoe: Develop .NET Microservices Without Cloud Platform Lock-In
 
A DevOps adoption playbook- achieving business value at scale
A DevOps adoption playbook- achieving business value at scaleA DevOps adoption playbook- achieving business value at scale
A DevOps adoption playbook- achieving business value at scale
 
Building Highly Scalable Spring Applications using In-Memory Data Grids
Building Highly Scalable Spring Applications using In-Memory Data GridsBuilding Highly Scalable Spring Applications using In-Memory Data Grids
Building Highly Scalable Spring Applications using In-Memory Data Grids
 
Mulesoft Meetup Roma - Monitoring Framework & DevOps.pptx
Mulesoft Meetup Roma - Monitoring Framework & DevOps.pptxMulesoft Meetup Roma - Monitoring Framework & DevOps.pptx
Mulesoft Meetup Roma - Monitoring Framework & DevOps.pptx
 
Developing Real-Time Data Pipelines with Apache Kafka
Developing Real-Time Data Pipelines with Apache KafkaDeveloping Real-Time Data Pipelines with Apache Kafka
Developing Real-Time Data Pipelines with Apache Kafka
 
Containerizing a Data Warehouse for Kubernetes
Containerizing a Data Warehouse for KubernetesContainerizing a Data Warehouse for Kubernetes
Containerizing a Data Warehouse for Kubernetes
 
Custom App Autoscaler Using Cloud Controlly API
Custom App Autoscaler Using Cloud Controlly APICustom App Autoscaler Using Cloud Controlly API
Custom App Autoscaler Using Cloud Controlly API
 
It’s a Multi-Cloud World, But What About The Data?
It’s a Multi-Cloud World, But What About The Data?It’s a Multi-Cloud World, But What About The Data?
It’s a Multi-Cloud World, But What About The Data?
 
Day 3: Security Auditing and Compliance
Day 3: Security Auditing and ComplianceDay 3: Security Auditing and Compliance
Day 3: Security Auditing and Compliance
 
Keynote: Architecting for Continuous Delivery (Pivotal Cloud Platform Roadshow)
Keynote: Architecting for Continuous Delivery (Pivotal Cloud Platform Roadshow)Keynote: Architecting for Continuous Delivery (Pivotal Cloud Platform Roadshow)
Keynote: Architecting for Continuous Delivery (Pivotal Cloud Platform Roadshow)
 
Connecting All Abstractions with Istio
Connecting All Abstractions with IstioConnecting All Abstractions with Istio
Connecting All Abstractions with Istio
 
MuleSoft Surat Virtual Meetup#16 - Anypoint Deployment Option, API and Operat...
MuleSoft Surat Virtual Meetup#16 - Anypoint Deployment Option, API and Operat...MuleSoft Surat Virtual Meetup#16 - Anypoint Deployment Option, API and Operat...
MuleSoft Surat Virtual Meetup#16 - Anypoint Deployment Option, API and Operat...
 
Cloud Foundry and Microservices: A Mutualistic Symbiotic Relationship
Cloud Foundry and Microservices: A Mutualistic Symbiotic RelationshipCloud Foundry and Microservices: A Mutualistic Symbiotic Relationship
Cloud Foundry and Microservices: A Mutualistic Symbiotic Relationship
 
Cloud Foundry and Microservices: A Mutualistic Symbiotic Relationship
Cloud Foundry and Microservices: A Mutualistic Symbiotic RelationshipCloud Foundry and Microservices: A Mutualistic Symbiotic Relationship
Cloud Foundry and Microservices: A Mutualistic Symbiotic Relationship
 
Removing Barriers Between Dev and Ops
Removing Barriers Between Dev and OpsRemoving Barriers Between Dev and Ops
Removing Barriers Between Dev and Ops
 

More from VMware Tanzu

What AI Means For Your Product Strategy And What To Do About It
What AI Means For Your Product Strategy And What To Do About ItWhat AI Means For Your Product Strategy And What To Do About It
What AI Means For Your Product Strategy And What To Do About ItVMware Tanzu
 
Make the Right Thing the Obvious Thing at Cardinal Health 2023
Make the Right Thing the Obvious Thing at Cardinal Health 2023Make the Right Thing the Obvious Thing at Cardinal Health 2023
Make the Right Thing the Obvious Thing at Cardinal Health 2023VMware Tanzu
 
Enhancing DevEx and Simplifying Operations at Scale
Enhancing DevEx and Simplifying Operations at ScaleEnhancing DevEx and Simplifying Operations at Scale
Enhancing DevEx and Simplifying Operations at ScaleVMware Tanzu
 
Spring Update | July 2023
Spring Update | July 2023Spring Update | July 2023
Spring Update | July 2023VMware Tanzu
 
Platforms, Platform Engineering, & Platform as a Product
Platforms, Platform Engineering, & Platform as a ProductPlatforms, Platform Engineering, & Platform as a Product
Platforms, Platform Engineering, & Platform as a ProductVMware Tanzu
 
Building Cloud Ready Apps
Building Cloud Ready AppsBuilding Cloud Ready Apps
Building Cloud Ready AppsVMware Tanzu
 
Spring Boot 3 And Beyond
Spring Boot 3 And BeyondSpring Boot 3 And Beyond
Spring Boot 3 And BeyondVMware Tanzu
 
Spring Cloud Gateway - SpringOne Tour 2023 Charles Schwab.pdf
Spring Cloud Gateway - SpringOne Tour 2023 Charles Schwab.pdfSpring Cloud Gateway - SpringOne Tour 2023 Charles Schwab.pdf
Spring Cloud Gateway - SpringOne Tour 2023 Charles Schwab.pdfVMware Tanzu
 
Simplify and Scale Enterprise Apps in the Cloud | Boston 2023
Simplify and Scale Enterprise Apps in the Cloud | Boston 2023Simplify and Scale Enterprise Apps in the Cloud | Boston 2023
Simplify and Scale Enterprise Apps in the Cloud | Boston 2023VMware Tanzu
 
Simplify and Scale Enterprise Apps in the Cloud | Seattle 2023
Simplify and Scale Enterprise Apps in the Cloud | Seattle 2023Simplify and Scale Enterprise Apps in the Cloud | Seattle 2023
Simplify and Scale Enterprise Apps in the Cloud | Seattle 2023VMware Tanzu
 
tanzu_developer_connect.pptx
tanzu_developer_connect.pptxtanzu_developer_connect.pptx
tanzu_developer_connect.pptxVMware Tanzu
 
Tanzu Virtual Developer Connect Workshop - French
Tanzu Virtual Developer Connect Workshop - FrenchTanzu Virtual Developer Connect Workshop - French
Tanzu Virtual Developer Connect Workshop - FrenchVMware Tanzu
 
Tanzu Developer Connect Workshop - English
Tanzu Developer Connect Workshop - EnglishTanzu Developer Connect Workshop - English
Tanzu Developer Connect Workshop - EnglishVMware Tanzu
 
Virtual Developer Connect Workshop - English
Virtual Developer Connect Workshop - EnglishVirtual Developer Connect Workshop - English
Virtual Developer Connect Workshop - EnglishVMware Tanzu
 
Tanzu Developer Connect - French
Tanzu Developer Connect - FrenchTanzu Developer Connect - French
Tanzu Developer Connect - FrenchVMware Tanzu
 
Simplify and Scale Enterprise Apps in the Cloud | Dallas 2023
Simplify and Scale Enterprise Apps in the Cloud | Dallas 2023Simplify and Scale Enterprise Apps in the Cloud | Dallas 2023
Simplify and Scale Enterprise Apps in the Cloud | Dallas 2023VMware Tanzu
 
SpringOne Tour: Deliver 15-Factor Applications on Kubernetes with Spring Boot
SpringOne Tour: Deliver 15-Factor Applications on Kubernetes with Spring BootSpringOne Tour: Deliver 15-Factor Applications on Kubernetes with Spring Boot
SpringOne Tour: Deliver 15-Factor Applications on Kubernetes with Spring BootVMware Tanzu
 
SpringOne Tour: The Influential Software Engineer
SpringOne Tour: The Influential Software EngineerSpringOne Tour: The Influential Software Engineer
SpringOne Tour: The Influential Software EngineerVMware Tanzu
 
SpringOne Tour: Domain-Driven Design: Theory vs Practice
SpringOne Tour: Domain-Driven Design: Theory vs PracticeSpringOne Tour: Domain-Driven Design: Theory vs Practice
SpringOne Tour: Domain-Driven Design: Theory vs PracticeVMware Tanzu
 
SpringOne Tour: Spring Recipes: A Collection of Common-Sense Solutions
SpringOne Tour: Spring Recipes: A Collection of Common-Sense SolutionsSpringOne Tour: Spring Recipes: A Collection of Common-Sense Solutions
SpringOne Tour: Spring Recipes: A Collection of Common-Sense SolutionsVMware Tanzu
 

More from VMware Tanzu (20)

What AI Means For Your Product Strategy And What To Do About It
What AI Means For Your Product Strategy And What To Do About ItWhat AI Means For Your Product Strategy And What To Do About It
What AI Means For Your Product Strategy And What To Do About It
 
Make the Right Thing the Obvious Thing at Cardinal Health 2023
Make the Right Thing the Obvious Thing at Cardinal Health 2023Make the Right Thing the Obvious Thing at Cardinal Health 2023
Make the Right Thing the Obvious Thing at Cardinal Health 2023
 
Enhancing DevEx and Simplifying Operations at Scale
Enhancing DevEx and Simplifying Operations at ScaleEnhancing DevEx and Simplifying Operations at Scale
Enhancing DevEx and Simplifying Operations at Scale
 
Spring Update | July 2023
Spring Update | July 2023Spring Update | July 2023
Spring Update | July 2023
 
Platforms, Platform Engineering, & Platform as a Product
Platforms, Platform Engineering, & Platform as a ProductPlatforms, Platform Engineering, & Platform as a Product
Platforms, Platform Engineering, & Platform as a Product
 
Building Cloud Ready Apps
Building Cloud Ready AppsBuilding Cloud Ready Apps
Building Cloud Ready Apps
 
Spring Boot 3 And Beyond
Spring Boot 3 And BeyondSpring Boot 3 And Beyond
Spring Boot 3 And Beyond
 
Spring Cloud Gateway - SpringOne Tour 2023 Charles Schwab.pdf
Spring Cloud Gateway - SpringOne Tour 2023 Charles Schwab.pdfSpring Cloud Gateway - SpringOne Tour 2023 Charles Schwab.pdf
Spring Cloud Gateway - SpringOne Tour 2023 Charles Schwab.pdf
 
Simplify and Scale Enterprise Apps in the Cloud | Boston 2023
Simplify and Scale Enterprise Apps in the Cloud | Boston 2023Simplify and Scale Enterprise Apps in the Cloud | Boston 2023
Simplify and Scale Enterprise Apps in the Cloud | Boston 2023
 
Simplify and Scale Enterprise Apps in the Cloud | Seattle 2023
Simplify and Scale Enterprise Apps in the Cloud | Seattle 2023Simplify and Scale Enterprise Apps in the Cloud | Seattle 2023
Simplify and Scale Enterprise Apps in the Cloud | Seattle 2023
 
tanzu_developer_connect.pptx
tanzu_developer_connect.pptxtanzu_developer_connect.pptx
tanzu_developer_connect.pptx
 
Tanzu Virtual Developer Connect Workshop - French
Tanzu Virtual Developer Connect Workshop - FrenchTanzu Virtual Developer Connect Workshop - French
Tanzu Virtual Developer Connect Workshop - French
 
Tanzu Developer Connect Workshop - English
Tanzu Developer Connect Workshop - EnglishTanzu Developer Connect Workshop - English
Tanzu Developer Connect Workshop - English
 
Virtual Developer Connect Workshop - English
Virtual Developer Connect Workshop - EnglishVirtual Developer Connect Workshop - English
Virtual Developer Connect Workshop - English
 
Tanzu Developer Connect - French
Tanzu Developer Connect - FrenchTanzu Developer Connect - French
Tanzu Developer Connect - French
 
Simplify and Scale Enterprise Apps in the Cloud | Dallas 2023
Simplify and Scale Enterprise Apps in the Cloud | Dallas 2023Simplify and Scale Enterprise Apps in the Cloud | Dallas 2023
Simplify and Scale Enterprise Apps in the Cloud | Dallas 2023
 
SpringOne Tour: Deliver 15-Factor Applications on Kubernetes with Spring Boot
SpringOne Tour: Deliver 15-Factor Applications on Kubernetes with Spring BootSpringOne Tour: Deliver 15-Factor Applications on Kubernetes with Spring Boot
SpringOne Tour: Deliver 15-Factor Applications on Kubernetes with Spring Boot
 
SpringOne Tour: The Influential Software Engineer
SpringOne Tour: The Influential Software EngineerSpringOne Tour: The Influential Software Engineer
SpringOne Tour: The Influential Software Engineer
 
SpringOne Tour: Domain-Driven Design: Theory vs Practice
SpringOne Tour: Domain-Driven Design: Theory vs PracticeSpringOne Tour: Domain-Driven Design: Theory vs Practice
SpringOne Tour: Domain-Driven Design: Theory vs Practice
 
SpringOne Tour: Spring Recipes: A Collection of Common-Sense Solutions
SpringOne Tour: Spring Recipes: A Collection of Common-Sense SolutionsSpringOne Tour: Spring Recipes: A Collection of Common-Sense Solutions
SpringOne Tour: Spring Recipes: A Collection of Common-Sense Solutions
 

Recently uploaded

英国UN学位证,北安普顿大学毕业证书1:1制作
英国UN学位证,北安普顿大学毕业证书1:1制作英国UN学位证,北安普顿大学毕业证书1:1制作
英国UN学位证,北安普顿大学毕业证书1:1制作qr0udbr0
 
CRM Contender Series: HubSpot vs. Salesforce
CRM Contender Series: HubSpot vs. SalesforceCRM Contender Series: HubSpot vs. Salesforce
CRM Contender Series: HubSpot vs. SalesforceBrainSell Technologies
 
Xen Safety Embedded OSS Summit April 2024 v4.pdf
Xen Safety Embedded OSS Summit April 2024 v4.pdfXen Safety Embedded OSS Summit April 2024 v4.pdf
Xen Safety Embedded OSS Summit April 2024 v4.pdfStefano Stabellini
 
Ahmed Motair CV April 2024 (Senior SW Developer)
Ahmed Motair CV April 2024 (Senior SW Developer)Ahmed Motair CV April 2024 (Senior SW Developer)
Ahmed Motair CV April 2024 (Senior SW Developer)Ahmed Mater
 
Comparing Linux OS Image Update Models - EOSS 2024.pdf
Comparing Linux OS Image Update Models - EOSS 2024.pdfComparing Linux OS Image Update Models - EOSS 2024.pdf
Comparing Linux OS Image Update Models - EOSS 2024.pdfDrew Moseley
 
Understanding Flamingo - DeepMind's VLM Architecture
Understanding Flamingo - DeepMind's VLM ArchitectureUnderstanding Flamingo - DeepMind's VLM Architecture
Understanding Flamingo - DeepMind's VLM Architecturerahul_net
 
Post Quantum Cryptography – The Impact on Identity
Post Quantum Cryptography – The Impact on IdentityPost Quantum Cryptography – The Impact on Identity
Post Quantum Cryptography – The Impact on Identityteam-WIBU
 
Powering Real-Time Decisions with Continuous Data Streams
Powering Real-Time Decisions with Continuous Data StreamsPowering Real-Time Decisions with Continuous Data Streams
Powering Real-Time Decisions with Continuous Data StreamsSafe Software
 
SensoDat: Simulation-based Sensor Dataset of Self-driving Cars
SensoDat: Simulation-based Sensor Dataset of Self-driving CarsSensoDat: Simulation-based Sensor Dataset of Self-driving Cars
SensoDat: Simulation-based Sensor Dataset of Self-driving CarsChristian Birchler
 
Taming Distributed Systems: Key Insights from Wix's Large-Scale Experience - ...
Taming Distributed Systems: Key Insights from Wix's Large-Scale Experience - ...Taming Distributed Systems: Key Insights from Wix's Large-Scale Experience - ...
Taming Distributed Systems: Key Insights from Wix's Large-Scale Experience - ...Natan Silnitsky
 
Balasore Best It Company|| Top 10 IT Company || Balasore Software company Odisha
Balasore Best It Company|| Top 10 IT Company || Balasore Software company OdishaBalasore Best It Company|| Top 10 IT Company || Balasore Software company Odisha
Balasore Best It Company|| Top 10 IT Company || Balasore Software company Odishasmiwainfosol
 
Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)
Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)
Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)jennyeacort
 
What is Advanced Excel and what are some best practices for designing and cre...
What is Advanced Excel and what are some best practices for designing and cre...What is Advanced Excel and what are some best practices for designing and cre...
What is Advanced Excel and what are some best practices for designing and cre...Technogeeks
 
UI5ers live - Custom Controls wrapping 3rd-party libs.pptx
UI5ers live - Custom Controls wrapping 3rd-party libs.pptxUI5ers live - Custom Controls wrapping 3rd-party libs.pptx
UI5ers live - Custom Controls wrapping 3rd-party libs.pptxAndreas Kunz
 
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024StefanoLambiase
 
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdfGOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdfAlina Yurenko
 
Software Project Health Check: Best Practices and Techniques for Your Product...
Software Project Health Check: Best Practices and Techniques for Your Product...Software Project Health Check: Best Practices and Techniques for Your Product...
Software Project Health Check: Best Practices and Techniques for Your Product...Velvetech LLC
 
Implementing Zero Trust strategy with Azure
Implementing Zero Trust strategy with AzureImplementing Zero Trust strategy with Azure
Implementing Zero Trust strategy with AzureDinusha Kumarasiri
 

Recently uploaded (20)

英国UN学位证,北安普顿大学毕业证书1:1制作
英国UN学位证,北安普顿大学毕业证书1:1制作英国UN学位证,北安普顿大学毕业证书1:1制作
英国UN学位证,北安普顿大学毕业证书1:1制作
 
CRM Contender Series: HubSpot vs. Salesforce
CRM Contender Series: HubSpot vs. SalesforceCRM Contender Series: HubSpot vs. Salesforce
CRM Contender Series: HubSpot vs. Salesforce
 
Xen Safety Embedded OSS Summit April 2024 v4.pdf
Xen Safety Embedded OSS Summit April 2024 v4.pdfXen Safety Embedded OSS Summit April 2024 v4.pdf
Xen Safety Embedded OSS Summit April 2024 v4.pdf
 
Ahmed Motair CV April 2024 (Senior SW Developer)
Ahmed Motair CV April 2024 (Senior SW Developer)Ahmed Motair CV April 2024 (Senior SW Developer)
Ahmed Motair CV April 2024 (Senior SW Developer)
 
Comparing Linux OS Image Update Models - EOSS 2024.pdf
Comparing Linux OS Image Update Models - EOSS 2024.pdfComparing Linux OS Image Update Models - EOSS 2024.pdf
Comparing Linux OS Image Update Models - EOSS 2024.pdf
 
Understanding Flamingo - DeepMind's VLM Architecture
Understanding Flamingo - DeepMind's VLM ArchitectureUnderstanding Flamingo - DeepMind's VLM Architecture
Understanding Flamingo - DeepMind's VLM Architecture
 
Post Quantum Cryptography – The Impact on Identity
Post Quantum Cryptography – The Impact on IdentityPost Quantum Cryptography – The Impact on Identity
Post Quantum Cryptography – The Impact on Identity
 
Powering Real-Time Decisions with Continuous Data Streams
Powering Real-Time Decisions with Continuous Data StreamsPowering Real-Time Decisions with Continuous Data Streams
Powering Real-Time Decisions with Continuous Data Streams
 
SensoDat: Simulation-based Sensor Dataset of Self-driving Cars
SensoDat: Simulation-based Sensor Dataset of Self-driving CarsSensoDat: Simulation-based Sensor Dataset of Self-driving Cars
SensoDat: Simulation-based Sensor Dataset of Self-driving Cars
 
Taming Distributed Systems: Key Insights from Wix's Large-Scale Experience - ...
Taming Distributed Systems: Key Insights from Wix's Large-Scale Experience - ...Taming Distributed Systems: Key Insights from Wix's Large-Scale Experience - ...
Taming Distributed Systems: Key Insights from Wix's Large-Scale Experience - ...
 
Hot Sexy call girls in Patel Nagar🔝 9953056974 🔝 escort Service
Hot Sexy call girls in Patel Nagar🔝 9953056974 🔝 escort ServiceHot Sexy call girls in Patel Nagar🔝 9953056974 🔝 escort Service
Hot Sexy call girls in Patel Nagar🔝 9953056974 🔝 escort Service
 
Balasore Best It Company|| Top 10 IT Company || Balasore Software company Odisha
Balasore Best It Company|| Top 10 IT Company || Balasore Software company OdishaBalasore Best It Company|| Top 10 IT Company || Balasore Software company Odisha
Balasore Best It Company|| Top 10 IT Company || Balasore Software company Odisha
 
Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)
Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)
Call Us🔝>༒+91-9711147426⇛Call In girls karol bagh (Delhi)
 
What is Advanced Excel and what are some best practices for designing and cre...
What is Advanced Excel and what are some best practices for designing and cre...What is Advanced Excel and what are some best practices for designing and cre...
What is Advanced Excel and what are some best practices for designing and cre...
 
UI5ers live - Custom Controls wrapping 3rd-party libs.pptx
UI5ers live - Custom Controls wrapping 3rd-party libs.pptxUI5ers live - Custom Controls wrapping 3rd-party libs.pptx
UI5ers live - Custom Controls wrapping 3rd-party libs.pptx
 
Advantages of Odoo ERP 17 for Your Business
Advantages of Odoo ERP 17 for Your BusinessAdvantages of Odoo ERP 17 for Your Business
Advantages of Odoo ERP 17 for Your Business
 
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024
Dealing with Cultural Dispersion — Stefano Lambiase — ICSE-SEIS 2024
 
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdfGOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
GOING AOT WITH GRAALVM – DEVOXX GREECE.pdf
 
Software Project Health Check: Best Practices and Techniques for Your Product...
Software Project Health Check: Best Practices and Techniques for Your Product...Software Project Health Check: Best Practices and Techniques for Your Product...
Software Project Health Check: Best Practices and Techniques for Your Product...
 
Implementing Zero Trust strategy with Azure
Implementing Zero Trust strategy with AzureImplementing Zero Trust strategy with Azure
Implementing Zero Trust strategy with Azure
 

Re-Platforming Legacy .Net Applications to PCF Using Modernized Techniques

  • 1. Replatforming Legacy .NET Applications to PCF Using modernized (Steeltoe) techniques Alfus Inigo Jaganathan Advisory Solutions Architect Pivotal Poornima Varadhan Global Engagement Lead Cognizant By -
  • 2. Unless otherwise indicated, these slides are © 2013-2018 Pivotal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ Disclaimer
  • 3. Unless otherwise indicated, these slides are © 2013-2018 Pivotal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ Safe Harbor Statement The following is intended to outline the general direction of Pivotal's offerings. It is intended for information purposes only and may not be incorporated into any contract. Any information regarding pre-release of Pivotal offerings, future updates or other planned modifications is subject to ongoing evaluation by Pivotal and is subject to change. This information is provided without warranty or any kind, express or implied, and is not a commitment to deliver any material, code, or functionality, and should not be relied upon in making purchasing decisions regarding Pivotal's offerings. These purchasing decisions should only be based on features currently available. The development, release, and timing of any features or functionality described for Pivotal's offerings in this presentation remain at the sole discretion of Pivotal. Pivotal has no obligation to update forward looking information in this presentation.
  • 4. Unless otherwise indicated, these slides are © 2013-2018 Pivotal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ Agenda
  • 5. Unless otherwise indicated, these slides are © 2013-2018 Pivotal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ What to expect in the next 30 mins? • Quick introduction to PCF & Steeltoe • Understanding 15 Factors, run through the relevant ones for this talk • Migration Patterns, a high level overview • Replatforming in detail with code snippets • Demo the Replatformed .NET Webform app to PCF • Pivotal AppTx and Tools • Partner talk on "Partner & Accelerate to operate at scale” - Cognizant
  • 6. Unless otherwise indicated, these slides are © 2013-2018 Pivotal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ Pivotal Cloud Foundry
  • 7. Unless otherwise indicated, these slides are © 2013-2018 Pivotal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ PCF – A modern cloud native platform • Supports multi-languages - buildpacks • Supports Hybrid Cloud (On-Prem & public) • Supports Multi Cloud (IaaS – Azure, AWS, GCP, etc.) - Portability • 4 Levels of HA • Zero downtime deployment support • Elastic scalability • Developer focus on delivering business value • Reduce Operations/DevOps cost
  • 8. Unless otherwise indicated, these slides are © 2013-2018 Pivotal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ Steeltoe.io
  • 9. Unless otherwise indicated, these slides are © 2013-2018 Pivotal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ Steeltoe.io for .NET developers 9 • Open source • Industry standard best practices building microservices • Available as .NET Standard NuGet libraries • Supports .NET Core and Full Framework • Helps leveraging • Netflix Eureka (Service Discovery) • Hystrix (Circuit Breaker) • Spring Cloud Config Server • Cloud Connectors • Cloud Security Providers • Monitoring and Management • What's new in 2.1 • Additional Spring boot compatible endpoints • Out-of-the-box Health contributors • Application Metrics • Distributed Tracing • Additional .NET 4.x support
  • 10. Unless otherwise indicated, these slides are © 2013-2018 Pivotal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ 15 Factors
  • 11. Unless otherwise indicated, these slides are © 2013-2018 Pivotal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ 15 FACTOR PCF Steeltoe 1 One codebase, one application • Single codebase • Any number of immutable releases N/A N/A 2 API first • Contract first development • Server mocks (e.g. Apiary) N/A N/A 3 Dependency management • Isolate dependencies as NuGet packages • Bundle dependencies together with build artifacts • Self Contained • Buildpacks N/A 4 Design, build, release, and run • CI/CD Pipeline • Iterative • Zero downtime • Integration with Concourse, Jenkins, etc. • Blue-Green & Canary deploy N/A 5 Configuration, credentials, and code • Code - Single artifact for multi environment • Externalize configuration and credentials • Treat configuration as ENV variables • ENV variables • User Provided Services • Structured ENV variables from bounded services • Config Server (Git & Vault) • .NET Configuration Extensions NuGet packages Understanding 15 Factors (Ref: https://content.pivotal.io/blog/beyond-the-twelve-factor-app)
  • 12. Unless otherwise indicated, these slides are © 2013-2018 Pivotal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ 15 FACTOR PCF Steeltoe 6 Logs • Treat as event streams • Sequence of time-ordered emitted events • STDOUT and STDERR • Loggregator-Firehose (cf logs) • CF Syslog Drain – stream to external aggregation/analytics service • Apps Manager • Dynamic Logging • Management – Actuators (Integration with Apps Manager) 7 Disposability • Maximize Robustness • Fast startup & Graceful shutdown • Externalize using backing services (e.g. Cache) • High Availability (Health Management of App Instances) • Maintain capacity • Management – Health Contributors 8 Backing Services • Treat as attached resources. • Loose coupling, flexibility • E.g. data store, caching, etc. • Market Place services (Redis, Rabbit, MySql, etc.) • Circuit Breaker as MP service • Open Service Brokers • cf bind-service, cf unbind-service • Implementation of Netflix Hystrix (Circuit breaker, Netflix Eureka (Service Discovery) • Connectors 9 Environment Parity • Keep all environments including development as similar as possible • Application “will work everywhere” • Every commit, a deployment candidate • PCF Dev • Similar experience to developers • Logical separation called ‘Spaces’, on single foundation N/A 10 Administrative Processes • Run admin/management tasks as one-off, scheduled processes • CF Tasks and Task scheduler N/A Understanding 15 Factors (Ref: https://content.pivotal.io/blog/beyond-the-twelve-factor-app)
  • 13. Unless otherwise indicated, these slides are © 2013-2018 Pivotal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ 15 FACTOR PCF Steeltoe 11 Port Binding • Avoid micromanaging port assignments • Allow externalized runtime port binding • 1 : 1 (App instance : App Server) • PCF GoRouter routes to App instances N/A 12 Stateless Processes • All long-lasting state to be externalized using backing services (e.g. session) • Share-Nothing (containers are highly disposable) • Externalize data caching • MP services like Gemfire, Redis, etc. • File System as service • Connectors as NuGet packages • Seamless integration with backing services 13 Concurrency • Scale out horizontally rather than vertical scaling • Should be able to run multiple concurrent instances • Elastic scaling made easy • Auto scaler (scale by demand automatically) • cf scale N/A 14 Telemetry • Application Performance Monitoring(APM) – Wellness • Domain specific telemetry– Analytics & Reporting • Health & System logs – Stream of events • PCF Metrics • cf events & cf logs • Syslog Drains and Nozzles • Management/Actuators • Apps Manager 15 Authentication & Authorization • Security should be never be an after thought • Should be backed in from day one • UAA Server • Pivotal Single Sign-on • CredHub • Platform provided security, firewalls, etc. • Security provider packages for seamless integration with security providers Understanding 15 Factors (Ref: https://content.pivotal.io/blog/beyond-the-twelve-factor-app)
  • 14. Unless otherwise indicated, these slides are © 2013-2018 Pivotal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ Migration Patterns
  • 15. Unless otherwise indicated, these slides are © 2013-2018 Pivotal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ Migration Patterns 15 • Replatforming to start with… • Start small • Less cost involved • Faster time to value • In longer term, based on business value/criticality of the app, move towards modernization
  • 16. Unless otherwise indicated, these slides are © 2013-2018 Pivotal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ Replatforming
  • 17. Unless otherwise indicated, these slides are © 2013-2018 Pivotal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ Replatforming 17 • Minimal Efforts • Less cost • Sometimes called Lift & Shift • Run natively in PAS (Pivotal Application Service) • Cloud Ready/Friendly • Critical 12/15 factors • Configuration, Credentials & Code • Logs • Stateless Processes • Concurrency • Dependency Management • Port binding • Authentication & Authorization • One Codebase One Application* • Build, Release and Run* * Recommended, but not critical
  • 18. Unless otherwise indicated, these slides are © 2013-2018 Pivotal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ .NET Apps – PCF Readiness 18 • High level .NET to PCF • 4 categories • *Out of scope includes • Apps being retired within 6-12 months • Vendor/3rd party apps • Databases • Reporting/BI Front end apps
  • 19. Unless otherwise indicated, these slides are © 2013-2018 Pivotal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ Replatforming (Steps) 19 • Create and move to a separate repository (15F - One Codebase One Application) • Upgrade to latest .NET framework preferably 4.6.1 or above • Helps leveraging .NET Standard libraries like Steeltoe.io • Build CI-CD pipeline (15F – Design, Build, Release and Run) • Bring all the dependencies (Registry, GAC, 3rd party) to Bin, with the publish artifacts (15F – Dependency Management)
  • 20. Unless otherwise indicated, these slides are © 2013-2018 Pivotal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ Replatforming (Steps) 20 • Remove any code that micromanages the port, let the platform take care of port binding (15F – Port Binding) • Verify if application access any File system. In that case, modify the code to access either s3 object storages or NoSQL database or Pivotal volume services. (15F – Disposability) • Make use of Steeltoe.io libraries and other techniques (following slides) to implement remaining of critical factors one by one
  • 21. Unless otherwise indicated, these slides are © 2013-2018 Pivotal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ Leveraging Steeltoe.io 21 • Prerequisite: framework must be updated to 4.6.1 or above • 3 types of packages (Samples https://github.com/SteeltoeOSS/Samples) • Autofac - Autofac dependency injection (e.g. Steeltoe.Extensions.Configuration.CloudFoundryAutofac) • Base - No dependency injection (e.g. Steeltoe.Extensions.Configuration.CloudFoundryBase) • Core - ASP.NET Core dependency injection (e.g. Steeltoe.Extensions.Configuration.CloudFoundryCore) • Here we use Core package for the demo and sample, with a simple technique using Generic Host Builder • Add appSettings.json, to have a .NET Core kind of…
  • 22. Unless otherwise indicated, these slides are © 2013-2018 Pivotal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ Leveraging Steeltoe using Generic Host Builder 22 • CoreServiceConfig.cs under App_Start • Packages used o Microsoft.AspNetCore.Hosting o Microsoft.Extensions.DependencyInjection o Microsoft.Extensions.Logging • CoreServiceConfig.Register() from Global.ascx.cs, entry point of the application Ask the container for injected services from anywhere in the application
  • 23. Unless otherwise indicated, these slides are © 2013-2018 Pivotal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ Configuration (15F - Configuration, Credentials and Code) 23 • Packages o Steeltoe.Extensions.Configuration.CloudFoundryCore (User-Provided-Services & Bounded Services) o Pivotal.Extensions. Configuration.ConfigServerBase (Config Server) • Config Server backed by vault and git (vault for secrets and credentials & git for non-sensitive configuration o Recipe ref: https://dotnet-cookbook.cfapps.io/config/config- server-vault-git-dotnet-core/ • Bounded services configuration and User- Provided services can be pulled via • Structured ENV variable • CloudFoundryServicesOptions, a JSON representation of VCAP_SERVICES configuration
  • 24. Unless otherwise indicated, these slides are © 2013-2018 Pivotal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ Configuration (15F - Configuration, Credentials and Code) As an example, Connect to SQL Server using Steeltoe connector 24 • Package(s) Steeltoe.CloudFoundry.ConnectorCore • This includes base and almost all connectors. Alternatively you can use specific connector packages like Steeltoe.CloudFoundry.Connector.SqlServer
  • 25. Unless otherwise indicated, these slides are © 2013-2018 Pivotal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ Externalize Session (15F – Backing Services & 15F – Concurrency) As an example, Redis as the persistent store 25 Additional reference: https://dotnet-cookbook.cfapps.io/aspnet/redis- session-full-framework/
  • 26. Unless otherwise indicated, these slides are © 2013-2018 Pivotal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ Externalize Caching (15F – Backing Services & 15F – Concurrency) As an example, Connect to Redis using Steeltoe connector 26
  • 27. Unless otherwise indicated, these slides are © 2013-2018 Pivotal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ Logging (15F – Logs) 27 • STDOUT/STDERR • Simply write à Console.{Out/Error}.WriteLine(“Something…”); • If using 3r party like log4net, Nlog, etc., modify their Appender config to type “Console” • Replace with Microsoft.Extensions.Logging Ilogger, but a bit more of a work • Enhance using Steeltoe’s dynamic logging feature, lets you change the log levels without restarting the application (next slide) Ref: https://steeltoe.io/docs/steeltoe-logging/
  • 28. Unless otherwise indicated, these slides are © 2013-2018 Pivotal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ Enable Steeltoe Management Actuators Health Contributors, Dynamic Logging and much more… (https://steeltoe.io/docs/steeltoe-management/) 28 In Global.ascx, call out as below to activate the actuators appSettings.json should have this configuration
  • 29. Unless otherwise indicated, these slides are © 2013-2018 Pivotal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ Security (15F – Authentication and Authorization) 29 • Straight forward, if using Forms Authentication • Windows Authentication • Not-supported, so use Pivotal Single Sign-on or UAA or similar Identity providers • Leverage Steeltoe middleware and OWIN request pipeline to integrate with any identity provider supporting OAuth & OpenID Connect • Package Steeltoe.Security.Authentication.CloudFoundryOwin • Ref: https://steeltoe.io/docs/steeltoe-security/ & https://github.com/SteeltoeOSS/Samples/tree/dev/Security • Optionally, you can create your own HttpModule which can intercept on HttpContext.AuthenticateRequest, set httpApplication.Context.User from newly generated GenericPrincipal using JWT, etc.
  • 30. Unless otherwise indicated, these slides are © 2013-2018 Pivotal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ .NET Apps - Buildpacks 30 • Buildpacks- • Provides framework and runtime support • Determines, what dependencies to download • Configures the apps so as to communicate with bound services Learn more about buildpacks? https://pivotal.io/platform/pcf-components/buildpacks
  • 31. Unless otherwise indicated, these slides are © 2013-2018 Pivotal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ Demo – Replatformed App (with Steeltoe Actuators) in PCF Recording link https://1drv.ms/v/s!AhnjuwdpuapykJI7M_KFmmgwlezG7A
  • 32. Unless otherwise indicated, these slides are © 2013-2018 Pivotal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ Pivotal AppTx & Tools
  • 33. Unless otherwise indicated, these slides are © 2013-2018 Pivotal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ Pivotal Application Transformation Team (AppTx) https://pivotal.io/application-transformation 33 Who we are? ü Team of Solutions Architects and Strategists ü Jump start App Tx to quickly show measured wins ü Simple tools, Start small & Scale fast ü Redefine current systems to achieve cloud native speed, resiliency and economics What we believe? ü Should move Apps to PCF ü Plan just enough to start ü Define hard goals and measure them ü Automate everything you can ü Build skills by pairing and doing ü Let real work inform strategy
  • 34. Unless otherwise indicated, these slides are © 2013-2018 Pivotal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ Pivotal Tools (Get Started, Measure Incremental, Learn as You Do) https://www.youtube.com/watch?v=neL3OQ1GRhY 34
  • 35. Unless otherwise indicated, these slides are © 2013-2018 Pivotal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ Partner Talk https://www.cognizant.com/cognizant-digital-business/digital-engineering-services
  • 36. Unless otherwise indicated, these slides are © 2013-2018 Pivotal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ Partner & Accelerate to operate at scale • Deeper domain knowledge • Deeper services knowledge • Application expertise/ Digital Engineering skills 36 + enabling clients to accelerate their digital transformation journey with rapid application portfolio migration and cloud-native development at scale. • Market leading s/w development methodology • Technology & Tool offerings • Cloud Native Innovation • App Tx & Labs
  • 37. Unless otherwise indicated, these slides are © 2013-2018 Pivotal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ Scale better yet be more sustainable - How we do it? PEOPLE • Talent pool of 1/5 of workforce skilled as engineers and Full Stack developers. • Put the right work in the right place at the right cost for scale o Working with customers on premise alongside with Pivotal as needed o Leveraging Cognizant Labs o Operating in On/off model as appropriate. • Training - PAL , T skilled PROCESS • Adoption of Product-engineering principles to build or modernize S/W -(Lean Engineering , XP , Build test and learn methodologies etc.) TECHNOLOGY • Empower Engineering and Product Development teams with Tools and accelerators (like VSM) to automate the tasks / processes. - VSM : Evaluates application code to identify changes needed (like antipatterns etc.) to help determine the type of remediation needed.
  • 38. Unless otherwise indicated, these slides are © 2013-2018 Pivotal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ Driving change & adoption - Top Challenges 38 • Inadequately equipped from a skill, culture, mindset, inclination, and talent perspective - Increasing education, skill building, and drive culture change • Top-down communication is a gap in ensuring teams are aware, coordinated, & are able to actively support digital change efforts at each level of the organization - Addressing missed leadership communications opportunities • Buy-in with Stake-holders for adoption of newer application delivery model - discussing adequately with Business / IT customer teams on the need for right agile practices for right work • Operating with the old measures , metrics & governance – stressing the importance to Redefine / Revamp the tools , processes , automation & metrics
  • 39. Unless otherwise indicated, these slides are © 2013-2018 Pivotal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ In summary, transformation journey’s continued success is on… • How quickly enterprise embrace change , drive culture shift and be agile • Learning & Sharing among Digital leaders • How to do it @scale repeatably and sustainably. Jeff Bezos - Amazon Founder In today's era of Volatility , there is no other way but to re-invent , the only sustainable advantage you can have over others is AGILITY , that's it. Because nothing else is sustainable , everything else you create , somebody else will replicate
  • 40. @poornima_30 #poornima-varadhan poornima.Varadhan@cognizant.com Thank you! Stay Connected! #springone@s1p @alfusinigoj #alfusinigojaganathan ajaganathan@pivotal.io