Deployment with Karaf and ACE

Slides:



Advertisements
Similar presentations
Introduction to Maven 2.0 An open source build tool for Enterprise Java projects Mahen Goonewardene.
Advertisements

OpusCollege and Spring-DM. OSGi based web applications – three strategies OSGi container embedded in another container: OSGi Bridge Server (OBS)  e.g.
Developing in CAS. Why? As distributed you edit CAS 3 with Eclipse and build with Maven 2 – Best Practice for Release Engineering – Difficult edit-debug.
ServiceMix future Jean-Baptiste Onofré, Talend
Enterprise SOA, Apache Style Hadrian Zbarcea (Talend) - Daniel Kulp (Talend) –
Provisioning distributed OSGi applications in a cloud Guillaume Nodet, FuseSource November 2011.
® IBM Software Group © 2010 IBM Corporation What’s New in Profiling & Code Coverage RAD V8 April 21, 2011 Kathy Chan
Web Application Server Apache Tomcat Downloading and Deployment Guide.
NODEMANAGER WEBLOGIC SERVER. 1.Creating logical machines 2.Using nodemanager for server startup and shutdown GETTING STARTED.
1 Dive into Apache Geronimo 3.0 Xu Haihong Apache Geronimo PMC
Radko Zhelev, IPP BAS Generic Resource Framework for Cloud Systems 1 Generic Resource Framework for Cloud Systems.
Why OSGi matters for Enterprise Java Infrastructures
 Who we are  Amdatu  Platform  Projects  Demo  Q&A.
Hands-On Microsoft Windows Server 2003 Administration Chapter 5 Administering File Resources.
MCTS Guide to Microsoft Windows Server 2008 Network Infrastructure Configuration Chapter 8 Introduction to Printers in a Windows Server 2008 Network.
A Guide to Oracle9i1 Introduction to Oracle9i Database Administration Chapter 11.
Spring Dynamic Modules. Startlocation: Documentation: /1.2.1/reference/html/
© 2004 IBM Corporation BEA WebLogic Server Introduction and Training.
Oracle 11g Architecture and Internals by Suresh Karnati
Server Roles and Features.NET Framework 3.51.NET Framework 4.5 IIS Web Server IIS Default Document IIS Directory Browsing IIS HTTP Errors.
Web Applications Basics. Introduction to Web Web features Clent/Server HTTP HyperText Markup Language URL addresses Web server - a computer program that.
Understanding and Managing WebSphere V5
Talend 5.4 Architecture Adam Pemble Talend Professional Services.
SEEM4570: XAMPP, Eclipse, Summary of Html Kangfei Zhao Room 711,ERB
1 © Talend 2014 Service Locator Talend ESB Training 2014 Jan Bernhardt Zsolt Beothy-Elo
Introduction to the JBoss Presented by: Hao Shi. Agenda Application Servers What is JBoss JBoss features Architecture of JBoss Installation and running.
Corso referenti S.I.R.A. – Modulo 2 07 – Group Policy 20/11 – 27/11 – 05/12 11/12 – 13/12 (gruppo 1) 12/12 – 15/12 (gruppo 2) Cristiano Gentili, Massimiliano.
ColdFusion MX Server Administration J2EE Deployment and Clustering Adam Wayne Lehman J2EE Deployment and Clustering Adam Wayne.
Gemini – Shaping the Future of Enterprise Java Mike Keith Glyn Normington
Module 11: Designing Files Services and DFS in Windows Server® 2008
Choon Oh Lee OSGi Service Platform. About OSGi Service Platform What it is, Where it is used, What features it provides are Today’s Content.
JBoss Administration Server Introduction
Tomcat Spencer Uresk. Notes This is a training NOT a presentation Please ask questions This is being recorded
Deploying DIET and JuxMem: GoDIET + JDF Mathieu Jan PARIS Research Group IRISA INRIA & ENS Cachan / Brittany Extension Rennes Lyon, July 2004.
|Tecnologie Web L-A Anno Accademico Laboratorio di Tecnologie Web Introduzione ad Eclipse e Tomcat
1 Apache. 2 Module - Apache ♦ Overview This module focuses on configuring and customizing Apache web server. Apache is a commonly used Hypertext Transfer.
Windows Azure Conference 2014 Deploy your Java workloads on Windows Azure.
Jazz WebUI Framework. Apache Derby Jazz Platform Architecture – Open Source middleware Eclipse Equinox Jazz Server Kernel Jazz Server Extensions Web UI.
Contents 1.Introduction, architecture 2.Live demonstration 3.Extensibility.
Jan Hatje, DESY CSS ITER March 2009: Technology and Interfaces XFEL The European X-Ray Laser Project X-Ray Free-Electron Laser 1 CSS – Control.
1 Chapter Overview Performing Configuration Tasks Setting Up Additional Features Performing Maintenance Tasks.
Tool Integration with Data and Computation Grid GWE - “Grid Wizard Enterprise”
14 June 2004System-wide Services: User InterfaceRich Moeser 1 EVLA Overall Software Design Final Internal Review System-wide Services: User Interface.
Virgo Nano Web, the enterprise ready Eclipse server Lazar Kirchev March 26 th, 2013 photo: Werner Kunz,
Module 4 Planning for Group Policy. Module Overview Planning Group Policy Application Planning Group Policy Processing Planning the Management of Group.
© FPT SOFTWARE – TRAINING MATERIAL – Internal use 04e-BM/NS/HDCV/FSOFT v2/3 JSP Application Models.
Jan Hatje, DESY CSS GSI Feb. 2009: Technology and Interfaces XFEL The European X-Ray Laser Project X-Ray Free-Electron Laser 1 CSS – Control.
1 Active Directory Administration Tasks And Tools Active Directory Administration Tasks Active Directory Administrative Tools Using Microsoft Management.
Modern Programming Language. Web Container & Web Applications Web applications are server side applications The most essential requirement.
Impala A dynamic module framework for Java web development Phil Zoio Realsolve Solutions Devoxx 12 December, 2008.
Selenium server By, Kartikeya Rastogi Mayur Sapre Mosheca. R
Google Code Libraries Dima Ionut Daniel. Contents What is Google Code? LDAPBeans Object-ldap-mapping Ldap-ODM Bug4j jOOR Rapa jongo Conclusion Bibliography.
JBOSS Online Training. Introduction to JBOSS Red Hat JBoss Middleware leverages community powered enlighten innovation and standalone open source application.
© 2014 IBM Corporation Architecture & Deployment IBM Connections 5.0 Workshop Author: Paul Godby IBM Ecosystem Development Duration: 30 minutes.
C Copyright © 2006, Oracle. All rights reserved. Oracle Secure Backup Additional Installation Topics.
Apache Geronimo Open Source J2EE Application Server Getting up to speed with Apache Geronimo - Copyright 2005 Tom McQueeney 1 Getting up to speed with.
Oracle 10g Administration Database Control and Storage Structures Copyright ©2006 Custom Training Institute.
Joe Bohn Apache Aries and IBM Original slides created by Graham Charters for OSGi DevCon US 2010, March 22, 2010 with minor updates by Joe Bohn for BarCampRDU.
Graham Charters Apache Aries and IBM Apache Aries An Open Source project for Enterprise OSGi Applications.
Communication Between Camel Routes
Overall Architecture and Component Model
Advanced Integration and Deployment Techniques
IBM Certified WebSphere Application Server 8.5 Administrator
Red Hat Middleware Courses.
IBM Certified WebSphere Application Server 8.5 Administrator
ESIS Consulting LLC (C) ESIS Consulting LLC. All rights reserved
Deployment with Karaf and ACE
Cordova & Cordova Plugin Installation and Management
Web Starter Kit: runtime
Presentation transcript:

Deployment with Karaf and ACE Jean-Baptiste Onofré, Talend jbonofre@apache.org, 2011-11-11

Summary Background Introduction to Karaf Introduction to ACE ACE and Karaf Use case 1: standalone ACE server and Karaf with ACE agent (demo) Use case 2: Karaf hosting ACE server Roadmap Q&A

My Background Jean-Baptiste Onofré Software Architect at Talend ASF Member PMC for Karaf, ServiceMix Committer for ACE, Camel, Kalumet

Introduction to Karaf Lightweight complete OSGi container, abstracting the OSGi framework (Felix or Equinox) Comes from ServiceMix Kernel High adoption (Geronimo, ServiceMix, …)

Karaf overview Enterprise (JPA, JNDI, JTA) WebConsole WebContainer (Pax Web/Jetty) Instances Remote & Management ConfigAdmin Security/JAAS Shell Console Logging Deployers Features Aries Blueprint / Spring OSGi framework (Apache Felix / Eclipse Equinox) JVM

Karaf directory structure /bin: startup scripts /etc: configuration files (ConfigAdmin) /data: working directory /data/cache: OSGi framework bundle cache /data/generated-bundles: temporary folder used by the deployer /data/log: log files /deploy: hot deploy directory /instances: directory containing child instances /lib: contains the bootstrap libraries /lib/ext: directory for JRE extensions /lib/endorsed: directory for endorsed libraries /system: OSGi bundles repository (OBR), laid out as a Maven 2 repository

Karaf start/stop Starting Karaf with the shell: > ./bin/karaf Starting Karaf without shell: > ./bin/karaf server Starting Karaf in background: > ./bin/start Stopping Karaf: karaf@root> osgi:shutdown > ./bin/stop

Karaf shell console Complete Unix-like shell environment: completion, grep, more, find, etc Remote using SSH (Karaf uses Mina SSHd) Contextual help on commands: karaf@root> <tab>Display all 182 possibilities? (y or n) *:help addurl admin:change-opts admin:change-rmi-registry-port admin:change-ssh-port admin:connect admin:create admin:destroy admin:list admin:rename admin:start admin:stop bundle-level cancel cat … karaf@root> features:list --help

Karaf Logging Powerful logging system powered by OPS4J PAX Logging Supports several logging API: Apache Commons Logging, SLF4J, Apache Log4j, Java Util Logging Karaf provides commands: log:display, log:display-exception, log:set Use of etc/org.ops4j.pax.logging.cfg by default (changes are dynamic)

Karaf child instances Karaf supports multiple child instances. A child instance is a copy that you can launch separately and deploy applications into. An instance is not a full copy of Karaf, but only a copy of the configuration files and data folder which contains all the runtime information, logs and temporary files Instances are managed by the « admin » commands: admin:list, admin:create, admin:start, ... The bin/admin script allows you to manipulate child instances outside a Karaf shell environment Karaf supports multiple child instances. A child instance is a copy that you can launch separately and deploy applications into. An instance is not a full copy of Karaf, but only a copy of the configuration files and data folder which contains all the runtime information, logs and temporary files Instances are managed by the « admin » commands: admin:list, admin:create, admin:start, ... The bin/admin script allows you to manipulate child instances outside a Karaf shell environment

Karaf configuration Karaf combines ConfigAdmin and FileInstance to be able to propagate changes on the configuration files to the bundles Files in /etc folder are used to set the startup configuration. For dynamic configuration, Karaf provides commands to administer the OSGi configuration service: config:edit, config:proplist, etc Support of commit and rollback: config:update, config:cancel Provides an MBean dedicated for configuration.

Karaf deployers Karaf monitor the deploy folder by default (FileInstall) and delegates the polled files to the deployers A deployer is simply a bundle, easy to create Karaf provides several deployer: Spring, Feature, Kar, War, Wrap

Karaf features Karaf provisioning is made by Features A Karaf feature is a collection of bundles, configuration, and others features forming an application Features are described in a XML features descriptor <features xmlns='http://karaf.apache.org/xmlns/features/v1.0.0'> <feature name='my' version='1.0'> <feature>other</feature> <bundle>mvn:...bundleA</bundle> <bundle>http:...bundleB</bundle> <config></config> <configfile></configfile> </feature> </features>

Introduction to ACE Handle dependency management Deployment management Software distribution framework providing Handle dependency management Deployment management Log reporting

ACE topology ACE server including repository, distribution, etc A set of target system where the ACE agent is running A client (browser or REST) to handle the ACE server console

ACE logical grouping ACE feature is like a Karaf feature but only handling bundles: it's a group of bundles ACE distribution is a group of features ACE target is where the ACE agent is running: it's where distributions will be deployed

ACE and Karaf ACE provides Karaf features ACE agent easily deployable in Karaf using the ace-agent feature ACE also provides all Karaf features to deploy the ACE server in Karaf

Use case 1 Standalone ACE server: Install ACE agent in Karaf: unzip org.apache.ace.target.devserver*.zip cd ace-devserver ./run.sh Install ACE agent in Karaf: karaf@root> admin:create testing karaf@root> admin:set-opts testing “-Didentification=testing” karaf@root> admin:connect testing karaf@testing> features:addurl mvn:org.apache.ace.karaf/apache-ace/0.8.1-incubator-SNAPSHOT/xml/features karaf@testing> features:install ace-agent Started management agent. Target ID : testing Server : http://localhost:8080 Sync interval: 2000 ms Unaffected bundles will not be stopped during deployment.

Use case 2 ACE server distribution powered by Karaf: root@karaf> features:addurl mvn:org.apache.ace.karaf/apache-ace/0.8.1-incubator-SNAPSHOT/xml/features root@karaf> features:install ace-server Will be in the ACE provided distributions

Roadmap Extend/enhance ACE feature/distribution to be able to directly support Karaf features Leverage Karaf sub-projects in ACE: Karaf Cellar clustering, Karaf Cave OBR Embed ACE in Apache Kalumet to provide a complete deployment platform (OSGi, J2EE, OS, etc)

Sources Links http://karaf.apache.org http://incubator.apache.org/ace http://Incubator.apache.org/kalumet

Contact Jean-Baptiste (JB) Onofré Q&A jbonofre@apache.org jbonofre@talend.com http://blog.nanthrax.net Q&A