SlideShare ist ein Scribd-Unternehmen logo
1 von 17
Downloaden Sie, um offline zu lesen
Oracle’s Recent Changes to
Java (JDK)
Overview, Impact & Recommendations
1Neil Brown, Issue: 2710/18.
Overview
Oracle recently made several changes affecting how they maintain, support &
license use of Java (more accurately the JDK).
This has commercial & technical implications for all enterprises running apps on
the JVM (users of the JDK)
● Impacts all apps that run on the JVM - regardless of language (Java, Groovy,
Scala)
● Anyone responsible for developing or provisioning JVM apps for prod usage
needs to aware
● Don’t panic! Java is still free. And changes broadly positive.
2
Java Terminology
Java SE (JSE) - Specification of Java language including APIs (Owned by Oracle)
Java Development Kit (JDK) - A binary implementation of JSE, plus some other
supporting tools and utilities.
OpenJDK - OSS project for source implementation of JSE that has served as RI of
the JSE since JDK 7.
OpenJDK binary - A build & packaged distribution of OpenJDK source. Several
exist, free (unbranded) & commercial (branded), produced by different entities
3
What Java users are accustomed to prior to changes
Oracle provides the ‘standard’ JDK
● Oracle (before them Sun) have provided the de facto standard JDK for all
popular platforms (Win, OS X, x86); & underwritten quality
Scheduling of Java Feature Releases (e.g. ..., 7, 8. 9)
● Fixed scope (set of new features and enhancements); Variable release date
(not shipped until feature complete; known to slip, significantly).
4
What Java users are accustomed to prior to changes
Java - Stable, Secure and Zero Cost (Overlapping, Long Term, Free Updates)
● “Stable” - Oracle provide free updates for old JDK versions, for considerable
period after new versions released, e.g.
○ JDK 7 released = July 2011; End of free public updates = April 2015. (~4 years)
○ JDK 8 released = March 2014; End of free public updates = Jan 2019 (~5 years)
○ Long overlap overlap provides ‘stability’ - users have plenty of time to wait for battle-testing &
test upgrade to new versions, whilst still benefiting from fixes & security patches to current
● “Secure” - Oracle produced free update releases to Oracle JDK containing
rolled-up security patches, every 3 months. (Including backporting to old
versions of JDK that’re still receiving free public updates).
5
What Java users are accustomed to prior to changes
Java - Stable, Secure and Zero Cost (Overlapping, Long Term Free Updates)
● Zero Cost - For desktop and server apps (only), the Oracle JDK has been
free to use in production.
6
What’s Changed & Why?
1) Java SE Release Schedule
● Given delays in past releases (e.g. JDK 9/Modules), dev feedback & trends,
Oracle switched to a time-based release schedule
● New feature release (10, 11, 12...) of Java, every 6 months.
● +ves - Faster pace of innovation. Devs get new features as soon as complete
● However...also led to Oracle changing approach to maintaining (updating)
and supporting Java...
7
What’s Changed & Why?
2) Oracle Changes to JDK Maintenance & (Oracle) Support
● Shorter duration of free/public updates provided by Oracle (only)
○ Free updates (fixes & security patches) to OpenJDK only provided for 6 months after
release (until the next feature release), rather than several years. No longer an overlap! e.g.
JDK 10 - Released March 2018; End of public updates = Sept 2018. (Already EoL)
JDK 11 - Released Sept 2018; End of public updates = March 2019.
● Availability of (Paid) Oracle (only) Support
○ Oracle designating some JDK releases as Long Term Support (LTS) for their purposes
(One every 2 or 3 years / 6th feature release - (8), 11, 17, 23, ...).
○ LTS releases get paid Oracle support for min 5 years.
○ Oracle NOT offering any support (even paid) for non-LTS releases (9, 10, 12...)
8
Picture credit: Simon Ritter, Azul Systems
What’s Changed & Why?
Oracle-specific update &
support policy.
Other support offerings
available from limited no.
other vendors.
9
What’s Changed & Why?
3) Licensing of Oracle JDK
● From JDK 11 (released 09/2018) Oracle JDK now requires license in prod
for all deployments (including servers). (Still usable for free in dev & test).
● Pre JDK 11, licensing terms are unchanged e.g. can continue to use Oracle
JDK 8 in prod indefinitely
10
General Impact of Changes to Oracle Updates & Support
Based on what’s known today*, you can only have 2 of 3 previously described
stability, security, zero-cost (must sacrifice one, to some extent). (*See slide 13).
Option 1 - Secure & Free, But sacrifice Stability
● Case - Security important, but don’t want to spend any money...
● To ensure availability of security updates you need to commit to switching to
major new versions of the JDK immediately on release (every 6 months)
● Reduces stability - Adopt new releases in prod before battle-tested by others
● Also a commitment to regression test and possibly update app (if breaking
changes) every 6 months
11
Option 2 - Stable & Free, But sacrifice Security (May be avoidable*)
● Stability at zero cost still possible by staying on previous LTS release (e.g. 8) after new
one (e.g. 9) released, & upgrading at leisure. But (as of today) no guarantee continue to
receive free updates (inc. security patches) when Oracle cease to provide them.
Option 3 - Secure & Stable, But not free (May be avoidable*)
● To get stability & security as before, might now need to pay for it.
● Can continue to use previous LTS release (e.g. 8 or 11), but (as of today) access to
updates after 6 months only guaranteed with commercial support contract from vendor
● Also, to receive updates for non-LTS releases almost certainly need commercial
support contract, which fewer vendors are offering (not Oracle)
General Impact of Changes to Oracle Updates & Support
12
*Future provision of overlapping free updates for previous JDK releases relies on
continued contribution to OpenJDK from other parties, which is still TBC -
● Requires other OpenJDK committers donate effort to backport updates (fixes &
security updates) after Oracle ceases; And other orgs to provide builds
● +ve - RedHat & others already do it for JDK 6 & 7. And Linux distro builds. But
Oracle changes create greater maintenance burden - more releases, earlier
● -ve - As of today no one yet appointed maintenance leads for JDK 8U, 9U, 10U
● Expectation - RedHat & others continue to provide updates, but for Oracle’s
LTS releases (only), starting with JDK 8.
○ If happens, can still have Stable, Secure & Free - but ONLY for LTS releases
General Impact of Changes to Oracle Updates & Support
13
Potential Benefits of Paid Support
1. Retain stability - Might not be necessary, hopefully long term, overlapping
updates to LTS releases continue to be provided by other OpenJDK committers
2. Obtain updates to non-LTS releases in prod - Nobody offering this for free.
And only a subset of support vendors offering it.
3. Support Java - Paying for support is one way to show support for Java. There
are also other, more direct ways to support Java OSS community.
14
My Advice for JVM dev teams
If/while you company is not paying for JDK support -
1) Choice of JDK
1. Do not start using Oracle JDK in prod - If you don’t have a license.
2. Do not start using Oracle OpenJDK in prod - It will only receives updates for 6
months
3. Review current choice JDK in few months when each provider’s position clearer
on key criteria
a. Length of time new builds produced for JDK update releases (both LTS and non-LTS)
b. Quality of builds - Primarily testing for JSE conformance (TCK tests).
4. AdoptOpenJDK may become best free JDK to use with respect to criteria
15
My Advice for JVM dev teams
2) JDK Release Adoption
● Only use LTS JDK releases (currently 8 or 11) in prod
○ Maximises likelihood you’ll continue to benefit from free updates for > 6 months (stable,
secure, free)
● Otherwise...before just adopting non-LTS JDK releases (9, 10, 12,...) in prod,
ensure you discuss and understand trade-offs & risks -
○ No free updates (including security patches) after 6 months
○ Reduces future paid support options (e.g. Oracle don’t offer it for non-LTS)
○ Is adoption of a non-LTS release really essential for biz?
16
Thanks for attending
Neil Brown
@neiljbrown neiljbrown.com
17

Weitere ähnliche Inhalte

Ähnlich wie 2018 10-oracle-java-licensing-update-support-changes

Java Support: What's changing
Java Support:  What's changingJava Support:  What's changing
Java Support: What's changingSimon Ritter
 
Java Is Still Free
Java Is Still FreeJava Is Still Free
Java Is Still FreeSimon Ritter
 
OpenJDK-Zulu talk at JEEConf'14
OpenJDK-Zulu talk at JEEConf'14OpenJDK-Zulu talk at JEEConf'14
OpenJDK-Zulu talk at JEEConf'14Ivan Krylov
 
How to Choose a JDK
How to Choose a JDKHow to Choose a JDK
How to Choose a JDKSimon Ritter
 
Version 1 Oracle Java Licensing changes -- what is really going on-feb2020-pdf
Version 1   Oracle Java Licensing changes -- what is really going on-feb2020-pdfVersion 1   Oracle Java Licensing changes -- what is really going on-feb2020-pdf
Version 1 Oracle Java Licensing changes -- what is really going on-feb2020-pdfPaul Bullen
 
Java: how to thrive in the changing world
Java: how to thrive in the changing worldJava: how to thrive in the changing world
Java: how to thrive in the changing worldAlexey Fyodorov
 
12.1.3 Patch Baseline and Strategy
12.1.3 Patch Baseline and Strategy12.1.3 Patch Baseline and Strategy
12.1.3 Patch Baseline and StrategyDavid Kelly
 
Java Webinar #12: "Java Versions and Features: Since JDK 8 to 16"
Java Webinar #12: "Java Versions and Features: Since JDK 8 to 16"Java Webinar #12: "Java Versions and Features: Since JDK 8 to 16"
Java Webinar #12: "Java Versions and Features: Since JDK 8 to 16"GlobalLogic Ukraine
 
Is An Agile Standard Possible For Java?
Is An Agile Standard Possible For Java?Is An Agile Standard Possible For Java?
Is An Agile Standard Possible For Java?Simon Ritter
 

Ähnlich wie 2018 10-oracle-java-licensing-update-support-changes (20)

Java Support: What's changing
Java Support:  What's changingJava Support:  What's changing
Java Support: What's changing
 
Java Is Still Free
Java Is Still FreeJava Is Still Free
Java Is Still Free
 
OpenJDK-Zulu talk at JEEConf'14
OpenJDK-Zulu talk at JEEConf'14OpenJDK-Zulu talk at JEEConf'14
OpenJDK-Zulu talk at JEEConf'14
 
How to Choose a JDK
How to Choose a JDKHow to Choose a JDK
How to Choose a JDK
 
Version 1 Oracle Java Licensing changes -- what is really going on-feb2020-pdf
Version 1   Oracle Java Licensing changes -- what is really going on-feb2020-pdfVersion 1   Oracle Java Licensing changes -- what is really going on-feb2020-pdf
Version 1 Oracle Java Licensing changes -- what is really going on-feb2020-pdf
 
Javantura v6 - Java SE, Today and Tomorrow - Dalibor Topic
Javantura v6 - Java SE, Today and Tomorrow - Dalibor TopicJavantura v6 - Java SE, Today and Tomorrow - Dalibor Topic
Javantura v6 - Java SE, Today and Tomorrow - Dalibor Topic
 
Java: how to thrive in the changing world
Java: how to thrive in the changing worldJava: how to thrive in the changing world
Java: how to thrive in the changing world
 
Oracle Java License Training
Oracle Java License TrainingOracle Java License Training
Oracle Java License Training
 
Java Licensing Roadmap for Oracle License Management
Java Licensing Roadmap for Oracle License ManagementJava Licensing Roadmap for Oracle License Management
Java Licensing Roadmap for Oracle License Management
 
Java 2012 conference keynote - Java Strategy & Roadmap - WebLogic & GlassFish...
Java 2012 conference keynote - Java Strategy & Roadmap - WebLogic & GlassFish...Java 2012 conference keynote - Java Strategy & Roadmap - WebLogic & GlassFish...
Java 2012 conference keynote - Java Strategy & Roadmap - WebLogic & GlassFish...
 
Java Licensing Roadmap for Oracle License Management
Java Licensing Roadmap for Oracle License ManagementJava Licensing Roadmap for Oracle License Management
Java Licensing Roadmap for Oracle License Management
 
Comparison between Oracle JDK, Oracle OpenJDK, and Red Hat OpenJDK.v1.0.20191009
Comparison between Oracle JDK, Oracle OpenJDK, and Red Hat OpenJDK.v1.0.20191009Comparison between Oracle JDK, Oracle OpenJDK, and Red Hat OpenJDK.v1.0.20191009
Comparison between Oracle JDK, Oracle OpenJDK, and Red Hat OpenJDK.v1.0.20191009
 
Javantura v6 - JDK 11 & JDK 12 - Dalibor Topic
Javantura v6 - JDK 11 & JDK 12 - Dalibor TopicJavantura v6 - JDK 11 & JDK 12 - Dalibor Topic
Javantura v6 - JDK 11 & JDK 12 - Dalibor Topic
 
12.1.3 Patch Baseline and Strategy
12.1.3 Patch Baseline and Strategy12.1.3 Patch Baseline and Strategy
12.1.3 Patch Baseline and Strategy
 
Comparison between Oracle JDK, Oracle OpenJDK, and Red Hat OpenJDK
Comparison between Oracle JDK, Oracle OpenJDK, and Red Hat OpenJDKComparison between Oracle JDK, Oracle OpenJDK, and Red Hat OpenJDK
Comparison between Oracle JDK, Oracle OpenJDK, and Red Hat OpenJDK
 
Java 9 and Beyond
Java 9 and BeyondJava 9 and Beyond
Java 9 and Beyond
 
Java Webinar #12: "Java Versions and Features: Since JDK 8 to 16"
Java Webinar #12: "Java Versions and Features: Since JDK 8 to 16"Java Webinar #12: "Java Versions and Features: Since JDK 8 to 16"
Java Webinar #12: "Java Versions and Features: Since JDK 8 to 16"
 
GlassFish Article September 07
GlassFish Article September 07GlassFish Article September 07
GlassFish Article September 07
 
JDK 10 Java Module System
JDK 10 Java Module SystemJDK 10 Java Module System
JDK 10 Java Module System
 
Is An Agile Standard Possible For Java?
Is An Agile Standard Possible For Java?Is An Agile Standard Possible For Java?
Is An Agile Standard Possible For Java?
 

Kürzlich hochgeladen

why an Opensea Clone Script might be your perfect match.pdf
why an Opensea Clone Script might be your perfect match.pdfwhy an Opensea Clone Script might be your perfect match.pdf
why an Opensea Clone Script might be your perfect match.pdfjoe51371421
 
Building Real-Time Data Pipelines: Stream & Batch Processing workshop Slide
Building Real-Time Data Pipelines: Stream & Batch Processing workshop SlideBuilding Real-Time Data Pipelines: Stream & Batch Processing workshop Slide
Building Real-Time Data Pipelines: Stream & Batch Processing workshop SlideChristina Lin
 
HR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.comHR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.comFatema Valibhai
 
The Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdfThe Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdfkalichargn70th171
 
Professional Resume Template for Software Developers
Professional Resume Template for Software DevelopersProfessional Resume Template for Software Developers
Professional Resume Template for Software DevelopersVinodh Ram
 
Optimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTVOptimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTVshikhaohhpro
 
How To Use Server-Side Rendering with Nuxt.js
How To Use Server-Side Rendering with Nuxt.jsHow To Use Server-Side Rendering with Nuxt.js
How To Use Server-Side Rendering with Nuxt.jsAndolasoft Inc
 
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...MyIntelliSource, Inc.
 
5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdf5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdfWave PLM
 
TECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service providerTECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service providermohitmore19
 
Der Spagat zwischen BIAS und FAIRNESS (2024)
Der Spagat zwischen BIAS und FAIRNESS (2024)Der Spagat zwischen BIAS und FAIRNESS (2024)
Der Spagat zwischen BIAS und FAIRNESS (2024)OPEN KNOWLEDGE GmbH
 
The Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdf
The Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdfThe Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdf
The Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdfkalichargn70th171
 
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer Data
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer DataAdobe Marketo Engage Deep Dives: Using Webhooks to Transfer Data
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer DataBradBedford3
 
A Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docxA Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docxComplianceQuest1
 
Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time ApplicationsUnveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time ApplicationsAlberto González Trastoy
 
Cloud Management Software Platforms: OpenStack
Cloud Management Software Platforms: OpenStackCloud Management Software Platforms: OpenStack
Cloud Management Software Platforms: OpenStackVICTOR MAESTRE RAMIREZ
 
Hand gesture recognition PROJECT PPT.pptx
Hand gesture recognition PROJECT PPT.pptxHand gesture recognition PROJECT PPT.pptx
Hand gesture recognition PROJECT PPT.pptxbodapatigopi8531
 
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online ☂️
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online  ☂️CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online  ☂️
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online ☂️anilsa9823
 
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...ICS
 

Kürzlich hochgeladen (20)

why an Opensea Clone Script might be your perfect match.pdf
why an Opensea Clone Script might be your perfect match.pdfwhy an Opensea Clone Script might be your perfect match.pdf
why an Opensea Clone Script might be your perfect match.pdf
 
Building Real-Time Data Pipelines: Stream & Batch Processing workshop Slide
Building Real-Time Data Pipelines: Stream & Batch Processing workshop SlideBuilding Real-Time Data Pipelines: Stream & Batch Processing workshop Slide
Building Real-Time Data Pipelines: Stream & Batch Processing workshop Slide
 
HR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.comHR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.com
 
The Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdfThe Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdf
 
Professional Resume Template for Software Developers
Professional Resume Template for Software DevelopersProfessional Resume Template for Software Developers
Professional Resume Template for Software Developers
 
Optimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTVOptimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTV
 
How To Use Server-Side Rendering with Nuxt.js
How To Use Server-Side Rendering with Nuxt.jsHow To Use Server-Side Rendering with Nuxt.js
How To Use Server-Side Rendering with Nuxt.js
 
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
 
5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdf5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdf
 
TECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service providerTECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service provider
 
Der Spagat zwischen BIAS und FAIRNESS (2024)
Der Spagat zwischen BIAS und FAIRNESS (2024)Der Spagat zwischen BIAS und FAIRNESS (2024)
Der Spagat zwischen BIAS und FAIRNESS (2024)
 
The Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdf
The Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdfThe Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdf
The Essentials of Digital Experience Monitoring_ A Comprehensive Guide.pdf
 
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer Data
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer DataAdobe Marketo Engage Deep Dives: Using Webhooks to Transfer Data
Adobe Marketo Engage Deep Dives: Using Webhooks to Transfer Data
 
A Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docxA Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docx
 
Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time ApplicationsUnveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
 
Cloud Management Software Platforms: OpenStack
Cloud Management Software Platforms: OpenStackCloud Management Software Platforms: OpenStack
Cloud Management Software Platforms: OpenStack
 
Hand gesture recognition PROJECT PPT.pptx
Hand gesture recognition PROJECT PPT.pptxHand gesture recognition PROJECT PPT.pptx
Hand gesture recognition PROJECT PPT.pptx
 
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online ☂️
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online  ☂️CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online  ☂️
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online ☂️
 
Vip Call Girls Noida ➡️ Delhi ➡️ 9999965857 No Advance 24HRS Live
Vip Call Girls Noida ➡️ Delhi ➡️ 9999965857 No Advance 24HRS LiveVip Call Girls Noida ➡️ Delhi ➡️ 9999965857 No Advance 24HRS Live
Vip Call Girls Noida ➡️ Delhi ➡️ 9999965857 No Advance 24HRS Live
 
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
 

2018 10-oracle-java-licensing-update-support-changes

  • 1. Oracle’s Recent Changes to Java (JDK) Overview, Impact & Recommendations 1Neil Brown, Issue: 2710/18.
  • 2. Overview Oracle recently made several changes affecting how they maintain, support & license use of Java (more accurately the JDK). This has commercial & technical implications for all enterprises running apps on the JVM (users of the JDK) ● Impacts all apps that run on the JVM - regardless of language (Java, Groovy, Scala) ● Anyone responsible for developing or provisioning JVM apps for prod usage needs to aware ● Don’t panic! Java is still free. And changes broadly positive. 2
  • 3. Java Terminology Java SE (JSE) - Specification of Java language including APIs (Owned by Oracle) Java Development Kit (JDK) - A binary implementation of JSE, plus some other supporting tools and utilities. OpenJDK - OSS project for source implementation of JSE that has served as RI of the JSE since JDK 7. OpenJDK binary - A build & packaged distribution of OpenJDK source. Several exist, free (unbranded) & commercial (branded), produced by different entities 3
  • 4. What Java users are accustomed to prior to changes Oracle provides the ‘standard’ JDK ● Oracle (before them Sun) have provided the de facto standard JDK for all popular platforms (Win, OS X, x86); & underwritten quality Scheduling of Java Feature Releases (e.g. ..., 7, 8. 9) ● Fixed scope (set of new features and enhancements); Variable release date (not shipped until feature complete; known to slip, significantly). 4
  • 5. What Java users are accustomed to prior to changes Java - Stable, Secure and Zero Cost (Overlapping, Long Term, Free Updates) ● “Stable” - Oracle provide free updates for old JDK versions, for considerable period after new versions released, e.g. ○ JDK 7 released = July 2011; End of free public updates = April 2015. (~4 years) ○ JDK 8 released = March 2014; End of free public updates = Jan 2019 (~5 years) ○ Long overlap overlap provides ‘stability’ - users have plenty of time to wait for battle-testing & test upgrade to new versions, whilst still benefiting from fixes & security patches to current ● “Secure” - Oracle produced free update releases to Oracle JDK containing rolled-up security patches, every 3 months. (Including backporting to old versions of JDK that’re still receiving free public updates). 5
  • 6. What Java users are accustomed to prior to changes Java - Stable, Secure and Zero Cost (Overlapping, Long Term Free Updates) ● Zero Cost - For desktop and server apps (only), the Oracle JDK has been free to use in production. 6
  • 7. What’s Changed & Why? 1) Java SE Release Schedule ● Given delays in past releases (e.g. JDK 9/Modules), dev feedback & trends, Oracle switched to a time-based release schedule ● New feature release (10, 11, 12...) of Java, every 6 months. ● +ves - Faster pace of innovation. Devs get new features as soon as complete ● However...also led to Oracle changing approach to maintaining (updating) and supporting Java... 7
  • 8. What’s Changed & Why? 2) Oracle Changes to JDK Maintenance & (Oracle) Support ● Shorter duration of free/public updates provided by Oracle (only) ○ Free updates (fixes & security patches) to OpenJDK only provided for 6 months after release (until the next feature release), rather than several years. No longer an overlap! e.g. JDK 10 - Released March 2018; End of public updates = Sept 2018. (Already EoL) JDK 11 - Released Sept 2018; End of public updates = March 2019. ● Availability of (Paid) Oracle (only) Support ○ Oracle designating some JDK releases as Long Term Support (LTS) for their purposes (One every 2 or 3 years / 6th feature release - (8), 11, 17, 23, ...). ○ LTS releases get paid Oracle support for min 5 years. ○ Oracle NOT offering any support (even paid) for non-LTS releases (9, 10, 12...) 8
  • 9. Picture credit: Simon Ritter, Azul Systems What’s Changed & Why? Oracle-specific update & support policy. Other support offerings available from limited no. other vendors. 9
  • 10. What’s Changed & Why? 3) Licensing of Oracle JDK ● From JDK 11 (released 09/2018) Oracle JDK now requires license in prod for all deployments (including servers). (Still usable for free in dev & test). ● Pre JDK 11, licensing terms are unchanged e.g. can continue to use Oracle JDK 8 in prod indefinitely 10
  • 11. General Impact of Changes to Oracle Updates & Support Based on what’s known today*, you can only have 2 of 3 previously described stability, security, zero-cost (must sacrifice one, to some extent). (*See slide 13). Option 1 - Secure & Free, But sacrifice Stability ● Case - Security important, but don’t want to spend any money... ● To ensure availability of security updates you need to commit to switching to major new versions of the JDK immediately on release (every 6 months) ● Reduces stability - Adopt new releases in prod before battle-tested by others ● Also a commitment to regression test and possibly update app (if breaking changes) every 6 months 11
  • 12. Option 2 - Stable & Free, But sacrifice Security (May be avoidable*) ● Stability at zero cost still possible by staying on previous LTS release (e.g. 8) after new one (e.g. 9) released, & upgrading at leisure. But (as of today) no guarantee continue to receive free updates (inc. security patches) when Oracle cease to provide them. Option 3 - Secure & Stable, But not free (May be avoidable*) ● To get stability & security as before, might now need to pay for it. ● Can continue to use previous LTS release (e.g. 8 or 11), but (as of today) access to updates after 6 months only guaranteed with commercial support contract from vendor ● Also, to receive updates for non-LTS releases almost certainly need commercial support contract, which fewer vendors are offering (not Oracle) General Impact of Changes to Oracle Updates & Support 12
  • 13. *Future provision of overlapping free updates for previous JDK releases relies on continued contribution to OpenJDK from other parties, which is still TBC - ● Requires other OpenJDK committers donate effort to backport updates (fixes & security updates) after Oracle ceases; And other orgs to provide builds ● +ve - RedHat & others already do it for JDK 6 & 7. And Linux distro builds. But Oracle changes create greater maintenance burden - more releases, earlier ● -ve - As of today no one yet appointed maintenance leads for JDK 8U, 9U, 10U ● Expectation - RedHat & others continue to provide updates, but for Oracle’s LTS releases (only), starting with JDK 8. ○ If happens, can still have Stable, Secure & Free - but ONLY for LTS releases General Impact of Changes to Oracle Updates & Support 13
  • 14. Potential Benefits of Paid Support 1. Retain stability - Might not be necessary, hopefully long term, overlapping updates to LTS releases continue to be provided by other OpenJDK committers 2. Obtain updates to non-LTS releases in prod - Nobody offering this for free. And only a subset of support vendors offering it. 3. Support Java - Paying for support is one way to show support for Java. There are also other, more direct ways to support Java OSS community. 14
  • 15. My Advice for JVM dev teams If/while you company is not paying for JDK support - 1) Choice of JDK 1. Do not start using Oracle JDK in prod - If you don’t have a license. 2. Do not start using Oracle OpenJDK in prod - It will only receives updates for 6 months 3. Review current choice JDK in few months when each provider’s position clearer on key criteria a. Length of time new builds produced for JDK update releases (both LTS and non-LTS) b. Quality of builds - Primarily testing for JSE conformance (TCK tests). 4. AdoptOpenJDK may become best free JDK to use with respect to criteria 15
  • 16. My Advice for JVM dev teams 2) JDK Release Adoption ● Only use LTS JDK releases (currently 8 or 11) in prod ○ Maximises likelihood you’ll continue to benefit from free updates for > 6 months (stable, secure, free) ● Otherwise...before just adopting non-LTS JDK releases (9, 10, 12,...) in prod, ensure you discuss and understand trade-offs & risks - ○ No free updates (including security patches) after 6 months ○ Reduces future paid support options (e.g. Oracle don’t offer it for non-LTS) ○ Is adoption of a non-LTS release really essential for biz? 16
  • 17. Thanks for attending Neil Brown @neiljbrown neiljbrown.com 17