view presentation
Transcription
view presentation
Zulu by Azul: OpenJDK for Azure © Copyright Azul Systems 2015 Matt Schuetze Azul Director of Product Management 1 4/30/2015 © Copyright Azul Systems 2015 Houston Java User Group Houston, Texas @azulsystems This Talk’s Purpose / Goals Welcome to all Houston JUG members This talk is focused on Java for Azure This is not a “how to write a Java program” talk This is a talk about how Java fits into the Azure landscape and why Zulu by Azul plays a big role. Purpose: Once you understand where Zulu fits, you’ll know just enough to be dangerous... The “Azul makes the world’s greatest JVMs” stuff will only come at the end, I promise... 2 4/30/2015 © Copyright Azul Systems 2015 About Azul Systems Zing, Zulu, and everything about Java Virtual Machines We make scalable Virtual 3 Machines Have built “whatever it takes to get job done” since 2002 3 generations of custom SMP Multi-core HW (Vega) Now Pure software for commodity x86 (Zing) Certified OpenJDK (Zulu) Known for Low Latency, Consistent execution, and Large data set excellence 4/30/2015 © Copyright Azul Systems 2015 Vega C4 High Level Agenda Notice: we’ll be laying a lot of ground work to get to the Azure parts Java history, evolution, and current picture of 4 industry Zoom into the Java Virtual Machine, the architectural heart of Java Zoom out, seeing where the JVM fits in the greater application universe Focus back in on Azure and pick apart why Java on Azure isn’t so weird as it initially sounds. Introduce and describe Zulu, a new OpenJDK distribution offered by Azul Systems 4/30/2015 © Copyright Azul Systems 2015 Azul’s Evolution in Java Context Year Azul Java Milestone 1996 Sun ships Java 1.0. Codename “Oak”. 1999 Sun builds Java 1.2 w/ Swing and Browser plugin. First use of HotSpot as trade name of JVM. “Java 2”, split as J2SE, J2EE, and J2ME 2002 Founded J2EE called best platform for web. J2SE 4.x solid for server apps, 1st 64-bit VM. BEA acquires Appeal, the JRockit VM creators. 2005 Vega J2 Version 5, Codename “Tiger”, is huge. BEA WebLogic 8.1 hot. “IBM J9” VM replaces “IBM Classic” VM under WebSphere 6.1 2007 5 Oracle acquires BEA. JRockit VM kept intact over Oracle VM. 2010 Zing VE Oracle acquires Sun. Java and Sparc kept intact. JRockit pushed for specialty workloads only. 2011 Zing LX Oracle ships JSE 7. OpenJDK becomes base codeline for JSE7.0. IBM ships WAS 8.0 on J9 JDK6. Zing 5 released. 2013 Zing PE IBM ships WAS 8.5 and it can be configured to use J9 JDK7. OpenJDK 7 is released. IcedTea 6 is released. JRockit revived. 2013 Zulu OpenJDK 8 will be foundation of Oracle’s JSE 8. 2014 Zulu Ent OpenJDK 8 released in March. Zulu8 beats IcedTea and J9 to market. 4/30/2015 © Copyright Azul Systems 2015 Azul’s Product History Explained Rome was not built in a day, either. Founded 2002 First hardware product (Vega): 2005 First virtualized software-only product (Zing): 2010 First fully native-mode software product (Zing 5): 6 2011 First bundled WebSphere solution (Zing PE): 2013 First free open source Zulu product for Microsoft Azure VMs running Windows Server: 2013 Zulu Enterprise for Windows, Linux, Mac: 2014 Zulu Embedded: 2015 4/30/2015 © Copyright Azul Systems 2015 Six Dimension of Java Point cuts through the Java Virtual Machine Life Cycle Java Virtual Machine Platforms 7 4/30/2015 © Copyright Azul Systems 2015 Code Transformation From developer’s source code to a running Java process Author Source *.java Compile to Bytecode Load Link Initialize JIT Compile *.class Consume APIs *.jar 8 4/30/2015 © Copyright Azul Systems 2015 Java Virtual Machine Runtime Instance Machine Assembly 01010110 Execute Monitor ReJIT Simplified Java Life Cycle Real life cycle for applications involves humans, so far greater complexity IDEs: Eclipse, NetBeans, IntelliJ Platforms: Desktop, Laptop Tools: JUnit, Ant, Maven, Profilers, Debuggers, Emulators Tools: JUnit, JMeter, Grinder Platforms: Servers, Mobile Virtualization Tools: Profilers, JMX monitors, deployers Platforms: Servers, Mobile, Clusters, Cloud, Grids, Virtualization 9 4/30/2015 © Copyright Azul Systems 2015 Business Requirements As Inputs Dev QA Prod Working Applications As Outputs Business provides team with requirements. Developers author Java source code on laptops, pull in 3rd party frameworks or APIs. Commit code to repository where builds compiled, JAR/WAR, and data components integrated, and QA testers validate full server application. Upon passing all tests, Ops staff push JARs to final server and client targets. Java Editions One size does not fit all, but three try to fit many. Standard Edition Micro Edition 10 Java Virtual Machine Same Language JVM, JDK, API Cutdown API Tailored JVM Runtime Language Standard Runtime Standard Tiny Footprint © Copyright Azul Systems 2015 4/30/2015 Enterprise Edition Includes JSE Standard Services: JMS, JDBC, EJB, Servlet, JNDI HotSpot & Java SE envelope Trivia: This figure (or one like it) is on the first page of every Java release in Oracle/Sun documentation 11 4/30/2015 © Copyright Azul Systems 2015 Java VM Platforms Hardware portability was foundational and existential goal in original Java VM designs Bytecode Ensures Architecture Neutrality Chip Architectures Intel x86 Intel/AMD x64 IBM Power HP PA-RISC ARM Sparc Itanium Plus more… 12 4/30/2015 © Copyright Azul Systems 2015 Java Virtual Machine Operating Systems Linux Windows Solaris HPUX AIX zOS Mac OS/X Android Plus more… Active Java/JVM Vendors Commercially relevant organizations driving Java forward globally Oracle Azul Systems, IBM, Red Hat Perm JCP EC member. Retains Brand, Trademarks and many Copyrights Oracle Hotspot Oracle JRockit 13 4/30/2015 © Copyright Azul Systems 2015 EC and TCK Licensees Java Virtual Machine Azul Zing Azul Zulu IBM J9 Red Hat IcedTea Arm Ltd., Eclipse Foundation, HP, Intel, Nokia, SAP, Software AG +8 others on JCP Executive Committee Penalty Box ^Google Dalvik Types of JVMs A JVM ships in a package (JDK or JRE) and that binary package is what is licensed OpenJDK HotSpot Azul Zulu IBM J9 IcedTea Free, Open Source, GPL 14 4/30/2015 Java Virtual Machine Semi-Free, Closed Source, Restrictions © Copyright Azul Systems 2015 JRockit Azul Zing Commercial, Closed Source, Licensed Middleware on the JVM Ultimately it is the applications that matter. That’s what your users feel and see. 15 4/30/2015 © Copyright Azul Systems 2015 Deployment Putting the Zulu runtime to good use in a real Java application 16 4/30/2015 © Copyright Azul Systems 2015 Computing Services Models The choice of who provides parts of your software stack is open ground. Applications Applications Applications Applications Data Data Data Data Runtime a. 17 << Zulu Runtime >> Runtime Middleware Middleware Middleware Middleware OS OS OS OS Virtualization Virtualization Virtualization Virtualization Servers Servers Servers Servers Storage Storage Storage Storage Networking OnPrem 4/30/2015 Runtime b. Networking IaaS © Copyright Azul Systems 2015 c. Networking PaaS d. Networking SaaS a. On Premise This is the general “use this software” case. Install and go. Use native packaging to install Zulu like any other download: .msi .rpm or just use a Zip file. Virtualization also encouraged: 18 4/30/2015 © Copyright Azul Systems 2015 .deb .dmg IaaS Using Azure Azure provides a choice of OS to setup a VM. After that, adding anything else is up to you. 19 4/30/2015 © Copyright Azul Systems 2015 b. Web Platform Installer WebPI is simple way to fetch and install current Zulu in one step. Works on regular Windows too. 20 4/30/2015 © Copyright Azul Systems 2015 b. Azure Eclipse Workbench Microsoft Open Tech’s purpose-built toolchain for Java development on Azure. Eclipse IDE/ Workbench tailored for Java on Azure 21 4/30/2015 © Copyright Azul Systems 2015 b. Azure SDK Integrated Zulu Compose a Java application using Zulu, a choice of server/container, and integrated Azure security and roles Create Azure VM Deploy a JDK Select current Zulu 22 4/30/2015 © Copyright Azul Systems 2015 b. PaaS Azure Marketplace Azure provides everything but your application and data. Zulu and other goodies installed and ready. search on “zulu” find two Zulu VM templates 23 4/30/2015 © Copyright Azul Systems 2015 c. SaaS on Azure Beyond the JVM is the realm of Azul partners d. Microsoft partners working on SaaS offerings using Zulu as Java runtime – Hadoop by Hortonworks – IBMs Liberty WAS Profile Microsoft Open Tech actively promoting Zulu for their Java efforts. Search opentech for “Java” for list. – https://msopentech.com/?s=java Azul partner ecosystem rich and growing – We welcome any SaaS deployments on Zulu and on Zing – Many SaaS operators often choose Zing for powerhouse infrastructure – Crossover into other providers (ie. AWS and Rackspace) 24 4/30/2015 © Copyright Azul Systems 2015 Java on Azure Now that you are on Azure, no matter which computing context, you’ve got help Java connectors to Azure web services – Access Control, Blob Service , Media Services, Queue Services, Service Bus Queues, SQL Database and Table Service Build facilities to use Azure for dev use cases – Jenkins, Hudson, Ant, Application Insights, JetBrains TeamCity Additional Site construction choices – Tomcat, Jetty, Typesafe Play framework Great resources on the Azure Blog. Just search “java” – http://azure.microsoft.com/blog/?s=java 25 4/30/2015 © Copyright Azul Systems 2015 Review Zulu Comparison 26 Azul Zulu Oracle HotSpot Red Hat Iced Tea Full HotSpot compatibility 4 4 4 Support for Azure 4 4 0 Support for Windows servers & Hyper-V 4 2 0 Browser plugins 0 4 0 Dedicated JVM customer support 4 4 0 Out-of-release-cycle Bug Fix Delivery 4 2 0 Company 100% focused on Java 4 1 0 JVM certification program for ISVs 4 4 1 Upgrade path to additional features (trade-up option) 4 1 0 Community participation (JCP EC) 4 4 4 4/30/2015 © Copyright Azul Systems 2015 Conclusion Zulu gives Azure deployers a solid, dependable Java runtime. Zulu gives Java developers a huge boost on Windows, leveraging OpenJDK, expanding alternatives. Through Zulu and Zing, Azul gives application developers worldwide the flexible, robust, and trusted Java server capability they need. Consider Azul as de facto provider of server JVMs. 27 4/30/2015 © Copyright Azul Systems 2015 Compulsory Marketing Pitch 28 4/30/2015 © Copyright Azul Systems 2015 Azul Hot Topics Zing 15.05 imminent 1TB heap ReadyNow! JMX Oracle Linux Zing for Big Data Cloudera CDH5 cert Cassandra paper Spark is in Zing open source program 29 4/30/2015 © Copyright Azul Systems 2015 Zing for Cloud Amazon AMIs Rackspace OnMetal compat Docker in R&D Zulu Azure Gallery 8u45 in the chute So is 7u79 & 7u80 JSE Embedded Q&A and In Closing… Go get some Zulu today! Boot an Azure VM and dip a toe. Perhaps look at Zing. Grab a Zing Free Trial card. @schuetzematt 30 4/30/2015 © Copyright Azul Systems 2015 azul.com