SlideShare a Scribd company logo
WSO2 Product Release webinar - 
WSO2 Carbon 4.3 
Kasun Gajasinghe 
Senior Software Engineer, WSO2
* 
About WSO2 
๏ Global enterprise, founded in 2005 by 
acknowledged leaders in XML, web 
services technologies, standards and 
open source 
๏ Provides only open source platform-as-a- 
service for private, public and hybrid 
cloud deployments 
๏ All WSO2 products are 100% open 
source and released under the Apache 
License Version 2.0. 
๏ Is an Active Member of OASIS, Cloud 
Security Alliance, OSGi Alliance, AMQP 
Working Group, OpenID Foundation 
and W3C. 
๏ Driven by Innovation 
๏ Launched first open source API 
Management solution in 2012 
๏ Launched App Factory in 2Q 2013 
๏ Launched Enterprise Store and 
first open source Mobile solution 
in 4Q 2013
WSO2 Carbon Platform
What is Carbon? 
o Enterprise middleware platform. 
o Modular/Componentized platform that can adapt to any enterprise architecture. 
o Runs on premise or in the cloud. 
o Based on OSGi technology. 
o Built using the module system and services platform concepts in OSGi. 
o 100% open source and open standards based.
WSO2 Carbon: Component Architecture
WSO2 Carbon Kernel
Features in Carbon
WSO2 Carbon: Distribution Artifacts
WSO2 Carbon based products 
o Product is a distribution artifact which combines Carbon kernel and a set of logically related 
features. 
WSO2 Carbon 
based products 
WSO2 Carbon 
Kernel 
o Following is a list of products offered by WSO2. 
Set of features
WSO2 Carbon 4.3 
o Next major release after the Carbon 4.2 
o New VCS and Continuous Integration 
o Feature rich downstream products planned including AS 6.0, ESB 4.9, and MB 3.0.
WSO2 Carbon 4.3 - New VCS 
o We are in GIT !! 
o GitHub to be exact. 
https://github.com/wso2
WSO2 Carbon 4.3 - Continuous 
Integration 
o We have streamlined the build process with Jenkins. 
o Do snapshot download 
o Do check build status 
https://wso2.org/jenkins/
WSO2 Carbon 4.3 - New Features 
o Carbon Clustering stabilization improvements 
o SVN-based Deployment Synchronizer improvements 
o Pluggable log providers for LogViewer UI 
o Tenant deletion support 
o Using Java Security Manager with Carbon multi-tenancy 
o CApp and artifact ghost deployment improvements 
o Global cluster cache invalidation on remote Greg mounts
Carbon 4.3 - Carbon Clustering 
improvements 
o Distributed caching and clustering with Enterprise-grade software, Hazelcast. 
o Introduced with Carbon 4.2 
o Upgraded to Hazelcast version - 3.2.6 
o Stabilization 
“... the WSO2 Carbon core adds new distributed caching and 
clustering implementations that are based on Hazelcast... 
Hazelcast combines distributed data structures, distributed 
caching capabilities, elasticity, memcache support, and 
integration with Spring and Hibernate. These capabilities 
bring several benefits to enterprise deployments, including 
the ability to handle thousands of operations per second, 
prevent the loss of data after crashes, and dynamically 
scale as new servers are added.“ - Hazelcast 
Source: http://hazelcast.org/use-cases/application-scaling/
Carbon 4.3 - Deployment Synchronizer 
o Vastly improved SVN-based Deployment Synchronizer support 
o Now supports Subversion 1.7 and 1.8 as the working copy format 
o Stabilization, and improved recovery from intermittent failures
Artifact/Deployment Synchronization
Carbon 4.3 - Pluggable Log Providers for 
LogViewer UI 
o The log view ui -
Carbon 4.3 - Pluggable Log Providers for 
LogViewer UI 
o View logs from several log storages 
o File system / In memory log appender 
o Cassandra as a log storage 
o An SQL Server as a log storage 
o A Centralized Log Viewer across the cluster 
o Download archived logs
Add a new Log Provider 
o To view logs from a custom log storage, say, Cassandra. 
o Implement the interface org.wso2.carbon.logging.service.provider.api. 
LogProvider 
o Register it as a log provider via $CARBON_HOME/repository/conf/etc/logging-config. 
xml 
<loggingConfig xmlns="http://wso2.org/projects/carbon/carbon.xml"> 
 
<logProviderConfig class="org.wso2.carbon.logging.service.provider.InMemoryLogProvider"> 
<properties/> 
</logProviderConfig> 
 
<logFileProviderConfig class="org.wso2.carbon.logging.service.provider.FileLogProvider"> 
<properties/> 
</logFileProviderConfig> 
</loggingConfig>
Add a new Log File Provider 
o To download archived logs from a custom log storage, say, Cassandra. 
o Implement the interface org.wso2.carbon.logging.service.provider.api. 
LogFileProvider 
o Register it as a log provider via $CARBON_HOME/repository/conf/etc/logging-config. 
xml 
<loggingConfig xmlns="http://wso2.org/projects/carbon/carbon.xml"> 
 
<logProviderConfig class="org.wso2.carbon.logging.service.provider.InMemoryLogProvider"> 
<properties/> 
</logProviderConfig> 
 
<logFileProviderConfig class="org.wso2.carbon.logging.service.provider.FileLogProvider"> 
<properties/> 
</logFileProviderConfig> 
</loggingConfig>
Carbon 4.3 - Tenant Deletion Support 
o Previously, WSO2 Carbon only supported tenant ‘Deactivation’ 
o We have added tenant deletion support as well in Carbon 4.3
Carbon 4.3 - Java Security Manager with 
Carbon 
o Why use JSM with Carbon? 
o How to get it to work? 
o Sign all the jars inside following folders with jarsigner 
o $CARBON_HOME/repository/components/plugins/ 
o $CARBON_HOME/repository/components/lib/ 
o $CARBON_HOME/lib/ 
o Add the following system properties to bin/wso2server.sh 
-Djava.security.manager=org.wso2.carbon.bootstrap.CarbonSecurityManager  
-Djava.security.policy=$CARBON_HOME/repository/conf/sec.policy  
-Drestricted.packages=sun.,com.sun.xml.internal.ws.,com.sun.xml.internal.bind.,com.sun.imageio.,org.wso2.carbon.  
-Ddenied.system.properties=javax.net.ssl.trustStore,javax.net.ssl.trustStorePassword,denied.system.properties  
o Place the security policy file at repository/conf/sec.policy
Java Security Manager with Carbon - 
Sample Security Policy I
Java Security Manager with Carbon - 
Sample Security Policy II
Java Security Manager with Carbon - 
Sample Security Policy III
Java Security Manager with Carbon - 
Sample Security Policy IV
Carbon 4.3 - CApp and Ghost 
Deployment 
o Support Ghost Deployment for artifacts that come from CApps.
Key Features of Carbon 
o User Manager 
o Registry/Repository 
o Caching 
o Clustering 
o Task, Coordination 
o Management & Worker Node Separation 
o Transports 
o Deployment Engine 
o Ghost Deployer 
o Artifact Synchronization 
o UI Framework 
o Carbon API
Q&A?
Contact us !

More Related Content

Wso2 product release webinar wso2 carbon 4.3

  • 1. WSO2 Product Release webinar - WSO2 Carbon 4.3 Kasun Gajasinghe Senior Software Engineer, WSO2
  • 2. * About WSO2 ๏ Global enterprise, founded in 2005 by acknowledged leaders in XML, web services technologies, standards and open source ๏ Provides only open source platform-as-a- service for private, public and hybrid cloud deployments ๏ All WSO2 products are 100% open source and released under the Apache License Version 2.0. ๏ Is an Active Member of OASIS, Cloud Security Alliance, OSGi Alliance, AMQP Working Group, OpenID Foundation and W3C. ๏ Driven by Innovation ๏ Launched first open source API Management solution in 2012 ๏ Launched App Factory in 2Q 2013 ๏ Launched Enterprise Store and first open source Mobile solution in 4Q 2013
  • 4. What is Carbon? o Enterprise middleware platform. o Modular/Componentized platform that can adapt to any enterprise architecture. o Runs on premise or in the cloud. o Based on OSGi technology. o Built using the module system and services platform concepts in OSGi. o 100% open source and open standards based.
  • 5. WSO2 Carbon: Component Architecture
  • 9. WSO2 Carbon based products o Product is a distribution artifact which combines Carbon kernel and a set of logically related features. WSO2 Carbon based products WSO2 Carbon Kernel o Following is a list of products offered by WSO2. Set of features
  • 10. WSO2 Carbon 4.3 o Next major release after the Carbon 4.2 o New VCS and Continuous Integration o Feature rich downstream products planned including AS 6.0, ESB 4.9, and MB 3.0.
  • 11. WSO2 Carbon 4.3 - New VCS o We are in GIT !! o GitHub to be exact. https://github.com/wso2
  • 12. WSO2 Carbon 4.3 - Continuous Integration o We have streamlined the build process with Jenkins. o Do snapshot download o Do check build status https://wso2.org/jenkins/
  • 13. WSO2 Carbon 4.3 - New Features o Carbon Clustering stabilization improvements o SVN-based Deployment Synchronizer improvements o Pluggable log providers for LogViewer UI o Tenant deletion support o Using Java Security Manager with Carbon multi-tenancy o CApp and artifact ghost deployment improvements o Global cluster cache invalidation on remote Greg mounts
  • 14. Carbon 4.3 - Carbon Clustering improvements o Distributed caching and clustering with Enterprise-grade software, Hazelcast. o Introduced with Carbon 4.2 o Upgraded to Hazelcast version - 3.2.6 o Stabilization “... the WSO2 Carbon core adds new distributed caching and clustering implementations that are based on Hazelcast... Hazelcast combines distributed data structures, distributed caching capabilities, elasticity, memcache support, and integration with Spring and Hibernate. These capabilities bring several benefits to enterprise deployments, including the ability to handle thousands of operations per second, prevent the loss of data after crashes, and dynamically scale as new servers are added.“ - Hazelcast Source: http://hazelcast.org/use-cases/application-scaling/
  • 15. Carbon 4.3 - Deployment Synchronizer o Vastly improved SVN-based Deployment Synchronizer support o Now supports Subversion 1.7 and 1.8 as the working copy format o Stabilization, and improved recovery from intermittent failures
  • 17. Carbon 4.3 - Pluggable Log Providers for LogViewer UI o The log view ui -
  • 18. Carbon 4.3 - Pluggable Log Providers for LogViewer UI o View logs from several log storages o File system / In memory log appender o Cassandra as a log storage o An SQL Server as a log storage o A Centralized Log Viewer across the cluster o Download archived logs
  • 19. Add a new Log Provider o To view logs from a custom log storage, say, Cassandra. o Implement the interface org.wso2.carbon.logging.service.provider.api. LogProvider o Register it as a log provider via $CARBON_HOME/repository/conf/etc/logging-config. xml <loggingConfig xmlns="http://wso2.org/projects/carbon/carbon.xml"> <!-- Default log provider --> <logProviderConfig class="org.wso2.carbon.logging.service.provider.InMemoryLogProvider"> <properties/> </logProviderConfig> <!-- Default log file provider --> <logFileProviderConfig class="org.wso2.carbon.logging.service.provider.FileLogProvider"> <properties/> </logFileProviderConfig> </loggingConfig>
  • 20. Add a new Log File Provider o To download archived logs from a custom log storage, say, Cassandra. o Implement the interface org.wso2.carbon.logging.service.provider.api. LogFileProvider o Register it as a log provider via $CARBON_HOME/repository/conf/etc/logging-config. xml <loggingConfig xmlns="http://wso2.org/projects/carbon/carbon.xml"> <!-- Default log provider --> <logProviderConfig class="org.wso2.carbon.logging.service.provider.InMemoryLogProvider"> <properties/> </logProviderConfig> <!-- Default log file provider --> <logFileProviderConfig class="org.wso2.carbon.logging.service.provider.FileLogProvider"> <properties/> </logFileProviderConfig> </loggingConfig>
  • 21. Carbon 4.3 - Tenant Deletion Support o Previously, WSO2 Carbon only supported tenant ‘Deactivation’ o We have added tenant deletion support as well in Carbon 4.3
  • 22. Carbon 4.3 - Java Security Manager with Carbon o Why use JSM with Carbon? o How to get it to work? o Sign all the jars inside following folders with jarsigner o $CARBON_HOME/repository/components/plugins/ o $CARBON_HOME/repository/components/lib/ o $CARBON_HOME/lib/ o Add the following system properties to bin/wso2server.sh -Djava.security.manager=org.wso2.carbon.bootstrap.CarbonSecurityManager -Djava.security.policy=$CARBON_HOME/repository/conf/sec.policy -Drestricted.packages=sun.,com.sun.xml.internal.ws.,com.sun.xml.internal.bind.,com.sun.imageio.,org.wso2.carbon. -Ddenied.system.properties=javax.net.ssl.trustStore,javax.net.ssl.trustStorePassword,denied.system.properties o Place the security policy file at repository/conf/sec.policy
  • 23. Java Security Manager with Carbon - Sample Security Policy I
  • 24. Java Security Manager with Carbon - Sample Security Policy II
  • 25. Java Security Manager with Carbon - Sample Security Policy III
  • 26. Java Security Manager with Carbon - Sample Security Policy IV
  • 27. Carbon 4.3 - CApp and Ghost Deployment o Support Ghost Deployment for artifacts that come from CApps.
  • 28. Key Features of Carbon o User Manager o Registry/Repository o Caching o Clustering o Task, Coordination o Management & Worker Node Separation o Transports o Deployment Engine o Ghost Deployer o Artifact Synchronization o UI Framework o Carbon API
  • 29. Q&A?