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…
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!
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.
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.)
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”
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
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