SlideShare une entreprise Scribd logo
1  sur  36
The Webinar will begin shortly….
Legacy LowdownOptions When Migrating Solaris Applications
Housekeeping Please Participate Use the GoToWebinar controls to ask questions We’ll take most questions at the end
Introductions & Agenda AppZero – application virtualization software vendor  Server applications (Solaris, Linux, Windows) and Windows desktop Founded in 2006 – Solaris application virtualization first product Patented and field-proven software Randy Whitcroft – Solaris Business Development Ernesto Benedito – Lead Architect UNIX platform Legacy Lowdown Legacy Applications – How did we get to this point? Binary Compatibility Guarantee – Are you covered? Will your apps fit into Zones/Containers? Tools to help you know where you stand The Appzero Solution  Q&A
AppZero Solaris in action …. Large Telecommunications Provider Large database used in development and support of hardware offering Evolved over time…faced a choice: start over or use AppZero AppZero within full production environment:  “It just runs…no need to manage” Financial Investment Firm Legacy customer information and data required for audit purposes Application and database virtualized with AppZero in production Originally intended to be an interim solution… now, no plans to change Systems Integrator Providing support for large telecom company in EMEA Single instance of application cloned or duplicated…then deployed Software Vendor Build customer environment internally to replicate issues and provide technical support Support time reduced from weeks down to days/hours
Legacy Applications – How did we get to this point? Organizations invested heavily into either customized or even custom built line of business applications.  Over time, the data centers were upgraded and updated as newer applications were added, capabilities were enhanced, and performance requirements increased.  A great deal has changed over the last number of years! Vendors have come and gone, systems adhered to Moore’s law of technology growth, and technology has moved to become a vital component of any business. And for many different reasons many organizations have been left with…
Legacy Applications – How did we get to this point? IMPORTANT …but not Vital!
Legacy Applications – How did we get to this point? It is not “If”… but “When”
Binary Compatibility Guarantee Sun/Oracle Binary Compatibility Guarantee was released over a decade ago… Key elements around how an application was to be built using Sun recommended best practices to ensure that there was a binary compatibility Developers did not know about it. Developers just ignored it Was not available when the application was built Very few applications on 2.6 or 7 qualified You either meet the requirements or you don’t…just 1% of application can mean everything The bottom line…this option may not be an option!
Just use Zones or Containers…
Just use Zones or Containers… Solaris 9 Solaris 8 Solaris 7 Solaris 2.6
 ret 0 – No potential stability issues. Should run  ret 2 – Potential binary stability, Good chance will not run Tools you already have… Tools already available…included in Solaris 10 OS Analyzes application your are trying to migrate appcert Utility used to verify ABI compatibility problems It checks ELF of your app and compares library symbols against host interface It can’t check everything apptrace Utility to verify interface compatibility problem.  Mostly for developers. Complex output, similar to Truss output
Tools you already have… Example of appcert verifying DB on Solaris 2.6  #> appcert  /path_to_old_app The following (166 of 784) components had no problems detected: The following (462 of 784) components had no problems detected, but could not be completely checked: The following (156 of 784) components have potential stability problems: 333 binaries used libc.so.1, 6 of these used private symbols 215 binaries used libnsl.so.1, 136 of these used private symbols 12 binaries used libdga.so.1, 12 of these used private symbols 2 binaries used libdps.so.5, 2 of these used private symbols 7 binaries used libXext.so.0, 2 of these used private symbols Summary of various warnings:  - non-POSIX libthread fork call  (5 binaries)  - references sys_errlist/sys_nerr  (1 binaries)  - unbound symbols  (460 binaries) Result code 2 => some_problems_detected(156 EXIT STATUS      2        Some of the objects checked have  potential  binary               stability problems.
Tools you already have… Example of apptrace #> apptrace touch /tmp/foo -> touch    -> libc.so.1:int atexit(int (*)() = 0xff3c5bb4) <- touch    -> libc.so.1:atexit() -> touch    -> libc.so.1:int atexit(int (*)() = 0x11ae8) <- touch    -> libc.so.1:atexit() -> touch    -> libc.so.1:char * setlocale(int = 0x6, const char * = 0x11af8 "") <- touch    -> libc.so.1:setlocale() = 0x22e00 -> touch    -> libc.so.1:char * textdomain(const char * = 0x11afc "SUNW_OST_OSCMD") <- touch    -> libc.so.1:textdomain() = 0x22690 -> touch    -> libc.so.1:char * basename(char * = 0xffbffb10 "touch") <- touch    -> libc.so.1:basename() = 0xffbffb10 -> touch    -> libc.so.1:strcmp(0xffbffb10, 0x11b0c, 0x0) ** NR -> touch    -> libc.so.1:int getopt(int = 0x2, char *const * = 0xffbffa1c, const char * = 0x11b20 "acfmr:d:t:") <- touch    -> libc.so.1:getopt() = 0xffffffff -> touch    -> libc.so.1:stat64(0xffbffb16, 0xffbff888, 0x11b20) ** NR -> touch    -> libc.so.1:int * ___errno(void) <- touch    -> libc.so.1:___errno() = 0xff039c7c -> touch    -> libc.so.1:int * ___errno(void) <- touch    -> libc.so.1:___errno() = 0xff039c7c -> touch    -> libc.so.1:int creat64(const char * = 0xffbffb16 "/tmp/foo", mode_t = 0x1b6) <- touch    -> libc.so.1:creat64() = 0x4 -> touch    -> libc.so.1:int futimens(int = 0x4, consttimespec_t * = 0x0) <- touch    -> libc.so.1:futimens() -> touch    -> libc.so.1:int close(int = 0x4) <- touch    -> libc.so.1:close() -> touch    -> libc.so.1:exit(0x0, 0x0, 0x0) ** NR
And you are in a situation … You are in a situation where: ,[object Object]
You probably find your app uses private, unbound or obsolete symbols, it shouldn’t. Even if your app happens to work on a newer OS, it doesn’t mean it will continue to with newer updates.
Even if you get a green light from the report you can’t be 100% sure the app will work (the tool cannot check everything)
Applications with green light can still fail (e.g. they assume certain FS layout, queries for certain release version, etc.)
Or even worse:
your app is statically linked, issuing system calls in assembly, or simply doesn’t work under a branded zone,[object Object]
AppZero packages applications/dependencies in VAA* Binaries Libraries Services   Config = Application OS * Virtual Application Appliance (VAA)
The AppZero Virtual Application Appliance VAA) The (           )  VAA: ,[object Object], Executables, libraries, services, scripts, configuration files, network identity, host identity. ,[object Object]
Is isolated from the underlying OS and from other VAAs.
Sees a configurable, merged view of its own files and those of the OS
Makes no changes to the underlying OS
Can be managed independently and run without conflict.
Enables old applications to be migrated to new OS and hardware
Complements Oracle Solaris Zones and Oracle VM Server for SPARC,[object Object]
How does AppZero work under the hood? Appzero uses “intercepts”  A point of control inserted between an application and the OS Appzero intercepts certain system calls  Virtualization logic in both the kernel and userland space Executes when the application executes Not a background process or “agent”
What do AppZero intercepts do? ,[object Object]
fork, exit, wait
If parent is in appliance context then child is in capsule
Monitor
read, write, send, recv, sendto, recvfrom
Track H/W resource usage; CPU, memory, network & disk
Parameter Spoofing

Contenu connexe

Tendances

Virtualization for Development
Virtualization for DevelopmentVirtualization for Development
Virtualization for Developmentelliando dias
 
Enterprise Java Virtualization, Sacha Labourey
Enterprise Java Virtualization, Sacha LaboureyEnterprise Java Virtualization, Sacha Labourey
Enterprise Java Virtualization, Sacha LaboureyOpenBlend society
 
Cloud foundry elastic architecture and deploy based on openstack
Cloud foundry elastic architecture and deploy based on openstackCloud foundry elastic architecture and deploy based on openstack
Cloud foundry elastic architecture and deploy based on openstackOpenCity Community
 
Windows Azure Platform - The Color of Cloud Computing
Windows Azure Platform - The Color of Cloud ComputingWindows Azure Platform - The Color of Cloud Computing
Windows Azure Platform - The Color of Cloud ComputingGeorge Kanellopoulos
 
彭—Elastic architecture in cloud foundry and deploy with openstack
彭—Elastic architecture in cloud foundry and deploy with openstack彭—Elastic architecture in cloud foundry and deploy with openstack
彭—Elastic architecture in cloud foundry and deploy with openstackOpenCity Community
 
Jazoon 2012 - Systems Integration in the Cloud Era with Apache Camel
Jazoon 2012 - Systems Integration in the Cloud Era with Apache CamelJazoon 2012 - Systems Integration in the Cloud Era with Apache Camel
Jazoon 2012 - Systems Integration in the Cloud Era with Apache CamelKai Wähner
 
Systems Resource Management with NetIQ AppManager
Systems Resource Management with NetIQ AppManagerSystems Resource Management with NetIQ AppManager
Systems Resource Management with NetIQ AppManagerAdvanced Logic Industries
 
Virtualization meisen 042811
Virtualization meisen 042811Virtualization meisen 042811
Virtualization meisen 042811Morty Eisen
 
CloudBees PaaS Presentation at Oakland JUG
CloudBees PaaS Presentation at Oakland JUGCloudBees PaaS Presentation at Oakland JUG
CloudBees PaaS Presentation at Oakland JUGCloudBees
 
Application-Driven Virtualization: Architectural Considerations
Application-Driven Virtualization: Architectural ConsiderationsApplication-Driven Virtualization: Architectural Considerations
Application-Driven Virtualization: Architectural ConsiderationsBob Rhubart
 
Spring, Java Web Apps to the cloud
Spring, Java Web Apps to the cloudSpring, Java Web Apps to the cloud
Spring, Java Web Apps to the cloudCloudBees
 
Sesion Marzo Zaragoza
Sesion Marzo ZaragozaSesion Marzo Zaragoza
Sesion Marzo ZaragozaFran Navarro
 
Windows Azure: Is Azure right for you?
Windows Azure: Is Azure right for you?Windows Azure: Is Azure right for you?
Windows Azure: Is Azure right for you?Intergen
 
Oracle VM Consolidation and Path to the Cloud
Oracle VM Consolidation and Path to the CloudOracle VM Consolidation and Path to the Cloud
Oracle VM Consolidation and Path to the CloudBob Rhubart
 
Windows Azure & How to Deploy Wordress
Windows Azure & How to Deploy WordressWindows Azure & How to Deploy Wordress
Windows Azure & How to Deploy WordressGeorge Kanellopoulos
 
Harbour IT & VMware - vForum 2010 Wrap
Harbour IT & VMware - vForum 2010 WrapHarbour IT & VMware - vForum 2010 Wrap
Harbour IT & VMware - vForum 2010 WrapHarbourIT
 
Virtualizing Business Critical Apps
Virtualizing Business Critical AppsVirtualizing Business Critical Apps
Virtualizing Business Critical Appsheraldschelke
 

Tendances (20)

Virtualization for Development
Virtualization for DevelopmentVirtualization for Development
Virtualization for Development
 
Enterprise Java Virtualization, Sacha Labourey
Enterprise Java Virtualization, Sacha LaboureyEnterprise Java Virtualization, Sacha Labourey
Enterprise Java Virtualization, Sacha Labourey
 
Cloud foundry elastic architecture and deploy based on openstack
Cloud foundry elastic architecture and deploy based on openstackCloud foundry elastic architecture and deploy based on openstack
Cloud foundry elastic architecture and deploy based on openstack
 
Windows Azure Platform - The Color of Cloud Computing
Windows Azure Platform - The Color of Cloud ComputingWindows Azure Platform - The Color of Cloud Computing
Windows Azure Platform - The Color of Cloud Computing
 
彭—Elastic architecture in cloud foundry and deploy with openstack
彭—Elastic architecture in cloud foundry and deploy with openstack彭—Elastic architecture in cloud foundry and deploy with openstack
彭—Elastic architecture in cloud foundry and deploy with openstack
 
Jazoon 2012 - Systems Integration in the Cloud Era with Apache Camel
Jazoon 2012 - Systems Integration in the Cloud Era with Apache CamelJazoon 2012 - Systems Integration in the Cloud Era with Apache Camel
Jazoon 2012 - Systems Integration in the Cloud Era with Apache Camel
 
Systems Resource Management with NetIQ AppManager
Systems Resource Management with NetIQ AppManagerSystems Resource Management with NetIQ AppManager
Systems Resource Management with NetIQ AppManager
 
Virtualization meisen 042811
Virtualization meisen 042811Virtualization meisen 042811
Virtualization meisen 042811
 
Virtualization
VirtualizationVirtualization
Virtualization
 
CloudBees PaaS Presentation at Oakland JUG
CloudBees PaaS Presentation at Oakland JUGCloudBees PaaS Presentation at Oakland JUG
CloudBees PaaS Presentation at Oakland JUG
 
Application-Driven Virtualization: Architectural Considerations
Application-Driven Virtualization: Architectural ConsiderationsApplication-Driven Virtualization: Architectural Considerations
Application-Driven Virtualization: Architectural Considerations
 
Spring, Java Web Apps to the cloud
Spring, Java Web Apps to the cloudSpring, Java Web Apps to the cloud
Spring, Java Web Apps to the cloud
 
Sesion Marzo Zaragoza
Sesion Marzo ZaragozaSesion Marzo Zaragoza
Sesion Marzo Zaragoza
 
Windows Azure: Is Azure right for you?
Windows Azure: Is Azure right for you?Windows Azure: Is Azure right for you?
Windows Azure: Is Azure right for you?
 
Oracle VM Consolidation and Path to the Cloud
Oracle VM Consolidation and Path to the CloudOracle VM Consolidation and Path to the Cloud
Oracle VM Consolidation and Path to the Cloud
 
Windows Azure & How to Deploy Wordress
Windows Azure & How to Deploy WordressWindows Azure & How to Deploy Wordress
Windows Azure & How to Deploy Wordress
 
Harbour IT & VMware - vForum 2010 Wrap
Harbour IT & VMware - vForum 2010 WrapHarbour IT & VMware - vForum 2010 Wrap
Harbour IT & VMware - vForum 2010 Wrap
 
Virtualizing Business Critical Apps
Virtualizing Business Critical AppsVirtualizing Business Critical Apps
Virtualizing Business Critical Apps
 
Prodware wa college - marcel meijer
Prodware   wa college - marcel meijerProdware   wa college - marcel meijer
Prodware wa college - marcel meijer
 
Roger boesch news xd_xa_nov (1)
Roger boesch news xd_xa_nov (1)Roger boesch news xd_xa_nov (1)
Roger boesch news xd_xa_nov (1)
 

En vedette

En vedette (7)

Introduction to Google Web Toolkit - part 1
Introduction to Google Web Toolkit - part 1Introduction to Google Web Toolkit - part 1
Introduction to Google Web Toolkit - part 1
 
GNU Octave: Strutture dati e I/O
GNU Octave: Strutture dati e I/OGNU Octave: Strutture dati e I/O
GNU Octave: Strutture dati e I/O
 
Introduction to Google App Engine
Introduction to Google App EngineIntroduction to Google App Engine
Introduction to Google App Engine
 
Virtual Machines
Virtual MachinesVirtual Machines
Virtual Machines
 
Google Adword Guide
Google  Adword  GuideGoogle  Adword  Guide
Google Adword Guide
 
Introduction to Google App Engine
Introduction to Google App EngineIntroduction to Google App Engine
Introduction to Google App Engine
 
Virtual machine
Virtual machineVirtual machine
Virtual machine
 

Similaire à Legacy Lowdown - Options When Migrating Solaris Applications

Process control daemon
Process control daemonProcess control daemon
Process control daemonhaish
 
Advanced malwareanalysis training session2 botnet analysis part1
Advanced malwareanalysis training session2 botnet analysis part1Advanced malwareanalysis training session2 botnet analysis part1
Advanced malwareanalysis training session2 botnet analysis part1Cysinfo Cyber Security Community
 
Web application penetration testing lab setup guide
Web application penetration testing lab setup guideWeb application penetration testing lab setup guide
Web application penetration testing lab setup guideSudhanshu Chauhan
 
outpass system
outpass systemoutpass system
outpass systemDhivakar K
 
Alfresco Day Barcelona 2016 - Developer Track - Herramientas para administrad...
Alfresco Day Barcelona 2016 - Developer Track - Herramientas para administrad...Alfresco Day Barcelona 2016 - Developer Track - Herramientas para administrad...
Alfresco Day Barcelona 2016 - Developer Track - Herramientas para administrad...Alfresco Software
 
FOISDBA-Ver1.1.pptx
FOISDBA-Ver1.1.pptxFOISDBA-Ver1.1.pptx
FOISDBA-Ver1.1.pptxssuser20fcbe
 
Ubuntu Core 技术详解
Ubuntu Core 技术详解Ubuntu Core 技术详解
Ubuntu Core 技术详解Rex Tsai
 
Introduction to Embedded Linux
Introduction to Embedded LinuxIntroduction to Embedded Linux
Introduction to Embedded LinuxHossain Reja
 
LCNA14: Why Use Xen for Large Scale Enterprise Deployments? - Konrad Rzeszute...
LCNA14: Why Use Xen for Large Scale Enterprise Deployments? - Konrad Rzeszute...LCNA14: Why Use Xen for Large Scale Enterprise Deployments? - Konrad Rzeszute...
LCNA14: Why Use Xen for Large Scale Enterprise Deployments? - Konrad Rzeszute...The Linux Foundation
 
Desktop interview qestions & answer
Desktop interview qestions & answerDesktop interview qestions & answer
Desktop interview qestions & answermandarshetye45
 
Easy way to learn Core java full material
Easy way to learn Core java full materialEasy way to learn Core java full material
Easy way to learn Core java full materialSivannarayana Chimata
 
Interview questions
Interview questionsInterview questions
Interview questionsxavier john
 
Alfresco Support tools
Alfresco Support toolsAlfresco Support tools
Alfresco Support toolsAntonio Soler
 
Monitoring shootout loadays
Monitoring shootout loadaysMonitoring shootout loadays
Monitoring shootout loadaystomdc
 

Similaire à Legacy Lowdown - Options When Migrating Solaris Applications (20)

Internship msc cs
Internship msc csInternship msc cs
Internship msc cs
 
Process control daemon
Process control daemonProcess control daemon
Process control daemon
 
Advanced malwareanalysis training session2 botnet analysis part1
Advanced malwareanalysis training session2 botnet analysis part1Advanced malwareanalysis training session2 botnet analysis part1
Advanced malwareanalysis training session2 botnet analysis part1
 
Web application penetration testing lab setup guide
Web application penetration testing lab setup guideWeb application penetration testing lab setup guide
Web application penetration testing lab setup guide
 
outpass system
outpass systemoutpass system
outpass system
 
Alfresco Day Barcelona 2016 - Developer Track - Herramientas para administrad...
Alfresco Day Barcelona 2016 - Developer Track - Herramientas para administrad...Alfresco Day Barcelona 2016 - Developer Track - Herramientas para administrad...
Alfresco Day Barcelona 2016 - Developer Track - Herramientas para administrad...
 
FOISDBA-Ver1.1.pptx
FOISDBA-Ver1.1.pptxFOISDBA-Ver1.1.pptx
FOISDBA-Ver1.1.pptx
 
Backtrack Manual Part4
Backtrack Manual Part4Backtrack Manual Part4
Backtrack Manual Part4
 
Ubuntu Core 技术详解
Ubuntu Core 技术详解Ubuntu Core 技术详解
Ubuntu Core 技术详解
 
Embedded Systems
Embedded SystemsEmbedded Systems
Embedded Systems
 
Introduction to Embedded Linux
Introduction to Embedded LinuxIntroduction to Embedded Linux
Introduction to Embedded Linux
 
LCNA14: Why Use Xen for Large Scale Enterprise Deployments? - Konrad Rzeszute...
LCNA14: Why Use Xen for Large Scale Enterprise Deployments? - Konrad Rzeszute...LCNA14: Why Use Xen for Large Scale Enterprise Deployments? - Konrad Rzeszute...
LCNA14: Why Use Xen for Large Scale Enterprise Deployments? - Konrad Rzeszute...
 
Explore Android Internals
Explore Android InternalsExplore Android Internals
Explore Android Internals
 
Desktop interview qestions & answer
Desktop interview qestions & answerDesktop interview qestions & answer
Desktop interview qestions & answer
 
Easy way to learn Core java full material
Easy way to learn Core java full materialEasy way to learn Core java full material
Easy way to learn Core java full material
 
Corejava ratan
Corejava ratanCorejava ratan
Corejava ratan
 
Interview questions
Interview questionsInterview questions
Interview questions
 
Symbian OS
Symbian  OS Symbian  OS
Symbian OS
 
Alfresco Support tools
Alfresco Support toolsAlfresco Support tools
Alfresco Support tools
 
Monitoring shootout loadays
Monitoring shootout loadaysMonitoring shootout loadays
Monitoring shootout loadays
 

Dernier

How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity PlanDatabarracks
 
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxUse of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxLoriGlavin3
 
Glenn Lazarus- Why Your Observability Strategy Needs Security Observability
Glenn Lazarus- Why Your Observability Strategy Needs Security ObservabilityGlenn Lazarus- Why Your Observability Strategy Needs Security Observability
Glenn Lazarus- Why Your Observability Strategy Needs Security Observabilityitnewsafrica
 
A Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software DevelopersA Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software DevelopersNicole Novielli
 
MuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotes
MuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotesMuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotes
MuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotesManik S Magar
 
Abdul Kader Baba- Managing Cybersecurity Risks and Compliance Requirements i...
Abdul Kader Baba- Managing Cybersecurity Risks  and Compliance Requirements i...Abdul Kader Baba- Managing Cybersecurity Risks  and Compliance Requirements i...
Abdul Kader Baba- Managing Cybersecurity Risks and Compliance Requirements i...itnewsafrica
 
Bridging Between CAD & GIS: 6 Ways to Automate Your Data Integration
Bridging Between CAD & GIS:  6 Ways to Automate Your Data IntegrationBridging Between CAD & GIS:  6 Ways to Automate Your Data Integration
Bridging Between CAD & GIS: 6 Ways to Automate Your Data Integrationmarketing932765
 
Generative Artificial Intelligence: How generative AI works.pdf
Generative Artificial Intelligence: How generative AI works.pdfGenerative Artificial Intelligence: How generative AI works.pdf
Generative Artificial Intelligence: How generative AI works.pdfIngrid Airi González
 
2024 April Patch Tuesday
2024 April Patch Tuesday2024 April Patch Tuesday
2024 April Patch TuesdayIvanti
 
Data governance with Unity Catalog Presentation
Data governance with Unity Catalog PresentationData governance with Unity Catalog Presentation
Data governance with Unity Catalog PresentationKnoldus Inc.
 
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024BookNet Canada
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024Lonnie McRorey
 
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24Mark Goldstein
 
Connecting the Dots for Information Discovery.pdf
Connecting the Dots for Information Discovery.pdfConnecting the Dots for Information Discovery.pdf
Connecting the Dots for Information Discovery.pdfNeo4j
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.Curtis Poe
 
Scale your database traffic with Read & Write split using MySQL Router
Scale your database traffic with Read & Write split using MySQL RouterScale your database traffic with Read & Write split using MySQL Router
Scale your database traffic with Read & Write split using MySQL RouterMydbops
 
Moving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfMoving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfLoriGlavin3
 
Design pattern talk by Kaya Weers - 2024 (v2)
Design pattern talk by Kaya Weers - 2024 (v2)Design pattern talk by Kaya Weers - 2024 (v2)
Design pattern talk by Kaya Weers - 2024 (v2)Kaya Weers
 
Varsha Sewlal- Cyber Attacks on Critical Critical Infrastructure
Varsha Sewlal- Cyber Attacks on Critical Critical InfrastructureVarsha Sewlal- Cyber Attacks on Critical Critical Infrastructure
Varsha Sewlal- Cyber Attacks on Critical Critical Infrastructureitnewsafrica
 
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxPasskey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxLoriGlavin3
 

Dernier (20)

How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity Plan
 
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptxUse of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
Use of FIDO in the Payments and Identity Landscape: FIDO Paris Seminar.pptx
 
Glenn Lazarus- Why Your Observability Strategy Needs Security Observability
Glenn Lazarus- Why Your Observability Strategy Needs Security ObservabilityGlenn Lazarus- Why Your Observability Strategy Needs Security Observability
Glenn Lazarus- Why Your Observability Strategy Needs Security Observability
 
A Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software DevelopersA Journey Into the Emotions of Software Developers
A Journey Into the Emotions of Software Developers
 
MuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotes
MuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotesMuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotes
MuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotes
 
Abdul Kader Baba- Managing Cybersecurity Risks and Compliance Requirements i...
Abdul Kader Baba- Managing Cybersecurity Risks  and Compliance Requirements i...Abdul Kader Baba- Managing Cybersecurity Risks  and Compliance Requirements i...
Abdul Kader Baba- Managing Cybersecurity Risks and Compliance Requirements i...
 
Bridging Between CAD & GIS: 6 Ways to Automate Your Data Integration
Bridging Between CAD & GIS:  6 Ways to Automate Your Data IntegrationBridging Between CAD & GIS:  6 Ways to Automate Your Data Integration
Bridging Between CAD & GIS: 6 Ways to Automate Your Data Integration
 
Generative Artificial Intelligence: How generative AI works.pdf
Generative Artificial Intelligence: How generative AI works.pdfGenerative Artificial Intelligence: How generative AI works.pdf
Generative Artificial Intelligence: How generative AI works.pdf
 
2024 April Patch Tuesday
2024 April Patch Tuesday2024 April Patch Tuesday
2024 April Patch Tuesday
 
Data governance with Unity Catalog Presentation
Data governance with Unity Catalog PresentationData governance with Unity Catalog Presentation
Data governance with Unity Catalog Presentation
 
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: Loan Stars - Tech Forum 2024
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024
 
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
 
Connecting the Dots for Information Discovery.pdf
Connecting the Dots for Information Discovery.pdfConnecting the Dots for Information Discovery.pdf
Connecting the Dots for Information Discovery.pdf
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.
 
Scale your database traffic with Read & Write split using MySQL Router
Scale your database traffic with Read & Write split using MySQL RouterScale your database traffic with Read & Write split using MySQL Router
Scale your database traffic with Read & Write split using MySQL Router
 
Moving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdfMoving Beyond Passwords: FIDO Paris Seminar.pdf
Moving Beyond Passwords: FIDO Paris Seminar.pdf
 
Design pattern talk by Kaya Weers - 2024 (v2)
Design pattern talk by Kaya Weers - 2024 (v2)Design pattern talk by Kaya Weers - 2024 (v2)
Design pattern talk by Kaya Weers - 2024 (v2)
 
Varsha Sewlal- Cyber Attacks on Critical Critical Infrastructure
Varsha Sewlal- Cyber Attacks on Critical Critical InfrastructureVarsha Sewlal- Cyber Attacks on Critical Critical Infrastructure
Varsha Sewlal- Cyber Attacks on Critical Critical Infrastructure
 
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptxPasskey Providers and Enabling Portability: FIDO Paris Seminar.pptx
Passkey Providers and Enabling Portability: FIDO Paris Seminar.pptx
 

Legacy Lowdown - Options When Migrating Solaris Applications

  • 1. The Webinar will begin shortly….
  • 2. Legacy LowdownOptions When Migrating Solaris Applications
  • 3. Housekeeping Please Participate Use the GoToWebinar controls to ask questions We’ll take most questions at the end
  • 4. Introductions & Agenda AppZero – application virtualization software vendor Server applications (Solaris, Linux, Windows) and Windows desktop Founded in 2006 – Solaris application virtualization first product Patented and field-proven software Randy Whitcroft – Solaris Business Development Ernesto Benedito – Lead Architect UNIX platform Legacy Lowdown Legacy Applications – How did we get to this point? Binary Compatibility Guarantee – Are you covered? Will your apps fit into Zones/Containers? Tools to help you know where you stand The Appzero Solution Q&A
  • 5. AppZero Solaris in action …. Large Telecommunications Provider Large database used in development and support of hardware offering Evolved over time…faced a choice: start over or use AppZero AppZero within full production environment: “It just runs…no need to manage” Financial Investment Firm Legacy customer information and data required for audit purposes Application and database virtualized with AppZero in production Originally intended to be an interim solution… now, no plans to change Systems Integrator Providing support for large telecom company in EMEA Single instance of application cloned or duplicated…then deployed Software Vendor Build customer environment internally to replicate issues and provide technical support Support time reduced from weeks down to days/hours
  • 6. Legacy Applications – How did we get to this point? Organizations invested heavily into either customized or even custom built line of business applications. Over time, the data centers were upgraded and updated as newer applications were added, capabilities were enhanced, and performance requirements increased. A great deal has changed over the last number of years! Vendors have come and gone, systems adhered to Moore’s law of technology growth, and technology has moved to become a vital component of any business. And for many different reasons many organizations have been left with…
  • 7. Legacy Applications – How did we get to this point? IMPORTANT …but not Vital!
  • 8. Legacy Applications – How did we get to this point? It is not “If”… but “When”
  • 9. Binary Compatibility Guarantee Sun/Oracle Binary Compatibility Guarantee was released over a decade ago… Key elements around how an application was to be built using Sun recommended best practices to ensure that there was a binary compatibility Developers did not know about it. Developers just ignored it Was not available when the application was built Very few applications on 2.6 or 7 qualified You either meet the requirements or you don’t…just 1% of application can mean everything The bottom line…this option may not be an option!
  • 10. Just use Zones or Containers…
  • 11. Just use Zones or Containers… Solaris 9 Solaris 8 Solaris 7 Solaris 2.6
  • 12. ret 0 – No potential stability issues. Should run ret 2 – Potential binary stability, Good chance will not run Tools you already have… Tools already available…included in Solaris 10 OS Analyzes application your are trying to migrate appcert Utility used to verify ABI compatibility problems It checks ELF of your app and compares library symbols against host interface It can’t check everything apptrace Utility to verify interface compatibility problem. Mostly for developers. Complex output, similar to Truss output
  • 13. Tools you already have… Example of appcert verifying DB on Solaris 2.6 #> appcert /path_to_old_app The following (166 of 784) components had no problems detected: The following (462 of 784) components had no problems detected, but could not be completely checked: The following (156 of 784) components have potential stability problems: 333 binaries used libc.so.1, 6 of these used private symbols 215 binaries used libnsl.so.1, 136 of these used private symbols 12 binaries used libdga.so.1, 12 of these used private symbols 2 binaries used libdps.so.5, 2 of these used private symbols 7 binaries used libXext.so.0, 2 of these used private symbols Summary of various warnings:  - non-POSIX libthread fork call  (5 binaries)  - references sys_errlist/sys_nerr  (1 binaries) - unbound symbols  (460 binaries) Result code 2 => some_problems_detected(156 EXIT STATUS      2        Some of the objects checked have  potential  binary               stability problems.
  • 14. Tools you already have… Example of apptrace #> apptrace touch /tmp/foo -> touch -> libc.so.1:int atexit(int (*)() = 0xff3c5bb4) <- touch -> libc.so.1:atexit() -> touch -> libc.so.1:int atexit(int (*)() = 0x11ae8) <- touch -> libc.so.1:atexit() -> touch -> libc.so.1:char * setlocale(int = 0x6, const char * = 0x11af8 "") <- touch -> libc.so.1:setlocale() = 0x22e00 -> touch -> libc.so.1:char * textdomain(const char * = 0x11afc "SUNW_OST_OSCMD") <- touch -> libc.so.1:textdomain() = 0x22690 -> touch -> libc.so.1:char * basename(char * = 0xffbffb10 "touch") <- touch -> libc.so.1:basename() = 0xffbffb10 -> touch -> libc.so.1:strcmp(0xffbffb10, 0x11b0c, 0x0) ** NR -> touch -> libc.so.1:int getopt(int = 0x2, char *const * = 0xffbffa1c, const char * = 0x11b20 "acfmr:d:t:") <- touch -> libc.so.1:getopt() = 0xffffffff -> touch -> libc.so.1:stat64(0xffbffb16, 0xffbff888, 0x11b20) ** NR -> touch -> libc.so.1:int * ___errno(void) <- touch -> libc.so.1:___errno() = 0xff039c7c -> touch -> libc.so.1:int * ___errno(void) <- touch -> libc.so.1:___errno() = 0xff039c7c -> touch -> libc.so.1:int creat64(const char * = 0xffbffb16 "/tmp/foo", mode_t = 0x1b6) <- touch -> libc.so.1:creat64() = 0x4 -> touch -> libc.so.1:int futimens(int = 0x4, consttimespec_t * = 0x0) <- touch -> libc.so.1:futimens() -> touch -> libc.so.1:int close(int = 0x4) <- touch -> libc.so.1:close() -> touch -> libc.so.1:exit(0x0, 0x0, 0x0) ** NR
  • 15.
  • 16. You probably find your app uses private, unbound or obsolete symbols, it shouldn’t. Even if your app happens to work on a newer OS, it doesn’t mean it will continue to with newer updates.
  • 17. Even if you get a green light from the report you can’t be 100% sure the app will work (the tool cannot check everything)
  • 18. Applications with green light can still fail (e.g. they assume certain FS layout, queries for certain release version, etc.)
  • 20.
  • 21. AppZero packages applications/dependencies in VAA* Binaries Libraries Services Config = Application OS * Virtual Application Appliance (VAA)
  • 22.
  • 23. Is isolated from the underlying OS and from other VAAs.
  • 24. Sees a configurable, merged view of its own files and those of the OS
  • 25. Makes no changes to the underlying OS
  • 26. Can be managed independently and run without conflict.
  • 27. Enables old applications to be migrated to new OS and hardware
  • 28.
  • 29. How does AppZero work under the hood? Appzero uses “intercepts” A point of control inserted between an application and the OS Appzero intercepts certain system calls Virtualization logic in both the kernel and userland space Executes when the application executes Not a background process or “agent”
  • 30.
  • 32. If parent is in appliance context then child is in capsule
  • 34. read, write, send, recv, sendto, recvfrom
  • 35. Track H/W resource usage; CPU, memory, network & disk
  • 37. uname, ioctl, getmsg, bind, sendmsg,
  • 38. CFM: open, stat, fstat, etc.
  • 39.
  • 40. 1. Analyze Analyze if the application has: Dependencies on kernel drivers deployed by the application. Special hardware requirements available/installed only on the source server, such a dedicated backup hardware device. Source System: Review file system: i.e. mount points, total disk space needed, special asynchronous vs. synchronous I/O requirements. Review services: determine which services are required for the app that will end up in the appliance Review kernel parameters: many applications require specific kernel parameters (e.g. #semaphores, shared memory, etc) Complete the application profile
  • 41. 2. Create Virtualize to VAA Source Output VAA VAA Physical AppZero Creator Approaches for creating a VAA: 1. Learn mode 2. Fresh Install on empty VAA 3. Whole HD capture Portable Data Center Final format can be uncompressed or compressed & encrypted file
  • 42. Encapsulating a legacy system Move to create machine tar.gz file Export/share/mount AppZero - screate Install Target Solaris 10 Modern Solaris 10 server Source Solaris 2.6 with Application Ultra10 Note: Creation of a VAA requires access to the files in the legacy system:
  • 43. AppZero Creator: Capture files, refine properties Select services Resource utilization Start up mode Review files in the VAA Tweak mount points
  • 44. appzero solaris 3. Run/Manage VAA optionally keeps the network identity and hostid of the source system AppZero Controller on target machine SOURCE Solaris 2.6 TARGET Solaris 10 DHCP server VAA - Solaris 2.6 App IP = 10.0.0.6 MAC = 08:00:20:b1:41:47 Client name = old app IP = 10.0.0.6 IP = 10.0.0.10
  • 45. Where do the VAA files reside? appzero appzero NAS/SAN Solaris Solaris csuperblock cdata /usr/local/appzero/appliances/vaa/ /etc .. /bin cstore /lib /product/.. X VAA VAA VAA
  • 46.
  • 47. dock – Register an appliance
  • 48. undock – Unregister an appliance
  • 49. startup - Runs the defined startup script for an appliance
  • 50. shutdown - Runs the defined shutdown script for an appliance
  • 51. run - Runs an executable inside an appliance
  • 52. procl - Display appliance process list
  • 53. prop - Display appliance property
  • 54. edit - Edit appliance property
  • 55. cprop - Display controller properties
  • 56. cedit - Edit controller properties
  • 57. compress - Compress an expanded fileset into a .con file
  • 58. uncompress - Expand an appliance's .con file
  • 59. upgrade - Upgrade an appliance
  • 60.
  • 61. VAAs and Oracle Solaris Zones Basic VAA No virtual networking Doesn’t have Identity. UOS identity inherited Globally compared with chroot environment. (but is not a chroot environment) Application isolation Virtualized Network Manually set network identity Basic capsule capabilities plus identity mapping Own Identity IP address, hostname, MAC, system ID are virtualized with values defined in  the appliance properties AppZero Controller installed on the Global Zone VAA managed across Zones
  • 62. You’re probably wondering about …. Level of effort: no re-engineering Familiarize staff with AppZero solution Virtualize/encapsulate application and test Implementation is a copy, not an installation Time frame: a day to a week depending on complexity Skill level: application-knowledgeable admin or analyst Cost: one time costs Creator $5K, VAA $5K, Annual maintenance 20% VAA can be used in dev/test/pre-production/production/cloud/DR concurrently Migration as a Service Program $12,500 per application. Risk Free! Contact us for more information...
  • 63. And maybe …. Where it won’t work: Solaris on x86 platforms, Solaris 2.5, Solaris to/from Linux, Windows, or UNIX What about applications with kernel drivers? Doable under specific conditions Performance overhead: a non-issue Application performance tends to improve running on current OS and new hardware (%0 pure CPU, %3 business apps,%10 compilers.) Reliability: years of production use at large accounts
  • 64. AppZero application virtualization summary …. Package once, run everywhere Eliminate application/application conflicts (sandbox) Run application on new hardware -- better performance/lower cost Server consolidation Continuity and disaster recovery
  • 65. Next steps…. No-charge “AppZero Application Assessment ” Technical analysis of your application environment App components Services 3rd party dependencies Kernel modules Fit with AppZero Connect directly with us Randy Whitcroft rwhitcroft@appzero.com Ernesto Beneditoebenedito@appzero.com Share this recorded session with your colleagues at www.appzero.com For more information or product download visit : www.appzero.com