**
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?
oEnterprise middleware platform.
oModular/Componentized platform that can adapt to any enterprise architecture.
oRuns on premise or in the cloud.
oBased on OSGi technology.
oBuilt using the module system and services platform concepts in OSGi.
o100% open source and open standards based.
WSO2 Carbon: Component Architecture
WSO2 Carbon Kernel
Features in Carbon
WSO2 Carbon: Distribution Artifacts
WSO2 Carbon based products
oProduct is a distribution artifact which combines Carbon kernel and a set of logically related
features.
oFollowing is a list of products offered by WSO2.
WSO2 Carbon
based products
WSO2 Carbon
Kernel
Set of features
WSO2 Carbon 4.3
oNext major release after the Carbon 4.2
oNew VCS and Continuous Integration
oFeature rich downstream products planned including AS 6.0, ESB 4.9, and MB 3.0.
WSO2 Carbon 4.3 - New VCS
oWe are in GIT !!
oGitHub to be exact.
https://github.com/wso2
WSO2 Carbon 4.3 - Continuous
Integration
oWe have streamlined the build process with Jenkins.
oDo snapshot download
oDo check build status
https://wso2.org/jenkins/
WSO2 Carbon 4.3 - New Features
oCarbon Clustering stabilization improvements
oSVN-based Deployment Synchronizer improvements
oPluggable log providers for LogViewer UI
oTenant deletion support
oUsing Java Security Manager with Carbon multi-tenancy
oCApp and artifact ghost deployment improvements
oGlobal cluster cache invalidation on remote Greg mounts
Carbon 4.3 - Carbon Clustering
improvements
oDistributed caching and clustering with Enterprise-grade software, Hazelcast.
oIntroduced with Carbon 4.2
oUpgraded to Hazelcast version - 3.2.6
oStabilization
“... 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
Carbon 4.3 - Deployment Synchronizer
oVastly improved SVN-based Deployment Synchronizer support
oNow supports Subversion 1.7 and 1.8 as the working copy format
oStabilization, and improved recovery from intermittent failures
Carbon 4.3 - Pluggable Log Providers for
LogViewer UI
oView logs from several log storages
oFile system / In memory log appender
oCassandra as a log storage
oAn SQL Server as a log storage
oA Centralized Log Viewer across the cluster
oDownload archived logs
Add a new Log Provider
oTo view logs from a custom log storage, say, Cassandra.
oImplement the interface org.wso2.carbon.logging.service.provider.api.
LogProvider
oRegister it as a log provider via $CARBON_HOME/repository/conf/etc/logging-
config.xml
Add a new Log File Provider
oTo download archived logs from a custom log storage, say, Cassandra.
oImplement the interface org.wso2.carbon.logging.service.provider.api.
LogFileProvider
oRegister it as a log provider via $CARBON_HOME/repository/conf/etc/logging-
config.xml
Carbon 4.3 - Tenant Deletion Support
oPreviously, WSO2 Carbon only supported tenant ‘Deactivation’
oWe have added tenant deletion support as well in Carbon 4.3
Carbon 4.3 - Java Security Manager with
Carbon
oWhy use JSM with Carbon?
oHow to get it to work?
oSign all the jars inside following folders with jarsigner
o$CARBON_HOME/repository/components/plugins/
o$CARBON_HOME/repository/components/lib/
o$CARBON_HOME/lib/
oAdd 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 \
oPlace 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
oSupport Ghost Deployment for artifacts that come from CApps.
Key Features of Carbon
oUser Manager
oRegistry/Repository
oCaching
oClustering
oTask, Coordination
oManagement & Worker Node Separation
oTransports
oDeployment Engine
oGhost Deployer
oArtifact Synchronization
oUI Framework
oCarbon API