Sweet On Sat, Nov 4, 2017 at 12:41 PM Wido den Hollander <w...@widodh.nl> wrote:
> > > > Op 4 nov. 2017 om 17:24 heeft Rohit Yadav <rohit.ya...@shapeblue.com> > het volgende geschreven: > > > > Thanks all for your feedback, review contribution on the PR, it has been > merged after peer reviews, testing (regression and upgrade). > > > > Awesome! Really looking forward to this and 4.11! > > Wido > > > > > Regards. > > > > ________________________________ > > From: Rohit Yadav <rohit.ya...@shapeblue.com> > > Sent: Wednesday, November 1, 2017 12:08:59 PM > > To: dev@cloudstack.apache.org; us...@cloudstack.apache.org > > Subject: Re: [DISCUSS] Moving to embedded Jetty and fatjar CloudStack > > > > All, > > > > > > The PR has received enough reviews and (regression) testings to consider > it for merging. I'll keep the PR open for few days to receive further > reviews and additional testing. Thanks. > > > > > > Regards. > > > > ________________________________ > > From: Rohit Yadav <rohit.ya...@shapeblue.com> > > Sent: Monday, October 30, 2017 4:55:55 PM > > To: dev@cloudstack.apache.org; us...@cloudstack.apache.org > > Subject: Re: [DISCUSS] Moving to embedded Jetty and fatjar CloudStack > > > > All, > > > > > > The fatjar PR that aims at migrating to embedded Jetty is ready for > review now: > > > > https://github.com/apache/cloudstack/pull/2226 > > > > > > New configuration file updates/changes: > > - /etc/cloudstack/management/server.properties - single file to > configure ports, webapp directory, http/s configurations, webapp context > path etc. > > - Environment configuration set at /etc/default/cloudstack-management > (CentOS accepts having env conf files at /etc/default, while Ubuntu uses > this path most of the time) > > > > High-level changelog: > > > > - Changes packaging to a shaded (fat/uber) jar > > - Updates jetty dependencies version 9.2 (java 7+) > > - Removal of tomcat, config files and additional distro-provided java > dependencies > > - Does not shade and include mysql-connector (cat-x), still > distro-provided and used from classpath > > - Introduce ServerDaemon class with customizations > > - Migrate to embedded Jetty server with a new ServerDaemon launcher > > - Introduce a new server.properties file for easier configuration > > - Have a single /etc/default/cloudstack-management to configure env > > - Reduce shaded jar file, removing unnecessary dependencies, thereby > reducing overall rpm/deb file size to less than 84MB > > - Upgrade to Spring 5.x, upgrade several jar dependencies > > - Upgrade and use bountcastle as a separate un-shaded jar dependency > > - Have both embedded UI assets in uber jar and separate webapp directory > > - Refactor systemd and init scripts, cleanup packaging > > - Made cloudstack-setup-databases faster, using `urandom` > > - Remove unmaintained distro packagings and config files > > > > > > Regards. > > > > ________________________________ > > From: Rohit Yadav <rohit.ya...@shapeblue.com> > > Sent: Thursday, August 24, 2017 1:24:06 AM > > To: Syed Ahmed; dev@cloudstack.apache.org > > Cc: Cloudstack Users List > > Subject: Re: [DISCUSS] Moving to embedded Jetty and fatjar CloudStack > > > > All, > > > > > > Based on last Trilian based test runs, no regressions are seen. We'll > aim for following changes and afterwards works towards merging the PR; > > > > > > - An option to provide explicit webapp directory, for custom UI etc. The > default UI would be bundled in the fat jar, with the UI assets/files also > copied/packaged at /usr/share/cloudstack-management/webapp (or ui folder) > to allow for customizations > > > > - Fix packaging, refactor systemd/initd script > > > > - Completely move to java/systemd, instead of using jsvc+systemd for > systemd-enabled distros, and use init.d scripts for centos6/older distros > > > > - Logging and other improvements to ServerDaemon (the main class that > run jetty in the fatjar) > > > > - A xml/yml file to configure SSL certificates, options etc. > > > > > > - Rohit > > > > ________________________________ > > From: Syed Ahmed <sah...@cloudops.com> > > Sent: Thursday, August 17, 2017 3:00:48 PM > > To: dev@cloudstack.apache.org > > Cc: Rohit Yadav; Cloudstack Users List > > Subject: Re: [DISCUSS] Moving to embedded Jetty and fatjar CloudStack > > > > I have always been a big fan of fat, dependency-free binaries. Good work > guys! > > > > > > rohit.ya...@shapeblue.com > > www.shapeblue.com<http://www.shapeblue.com> > > 53 Chandos Place, Covent Garden, London WC2N 4HSUK > > @shapeblue > > > > > > > > > > rohit.ya...@shapeblue.com > > www.shapeblue.com<http://www.shapeblue.com> > > 53 Chandos Place, Covent Garden, London WC2N 4HSUK > > @shapeblue > > > > > > > > > > rohit.ya...@shapeblue.com > > www.shapeblue.com<http://www.shapeblue.com> > > 53 Chandos Place, Covent Garden, London WC2N 4HSUK > > @shapeblue > > > > > > > > > > rohit.ya...@shapeblue.com > > www.shapeblue.com > > 53 Chandos Place, Covent Garden, London WC2N 4HSUK > > @shapeblue > > > > > > > >> On Thu, Aug 10, 2017 at 11:23 AM, Wido den Hollander <w...@widodh.nl > <mailto:w...@widodh.nl>> wrote: > >> > >> Op 10 augustus 2017 om 14:09 schreef Rohit Yadav < > rohit.ya...@shapeblue.com<mailto:rohit.ya...@shapeblue.com>>: > >> > >> > >> All, > >> > >> > >> Distro provided tomcat6/7/* has caused production issues for few users > in the past. Due to this, the ACS deployments are inconsistent with the > version/jars of tomcat in use. By allowing exploded war to be shipped, can > allow admins to sometimes overwrite cloudstack jars causing production > issues. I think moving to a CloudStack uber/fat jar will make it easier to > deploy CloudStack in environments and write custom init/systemd scripts and > fix cloudstack setup databases/management scripts without assuming the > distro we're on. > >> > > > > Yes, I agree. A flat jar makes things a lot easier. > > > >> > >> With this discussion thread, I would like to engage with the community > if they've any reservations from moving away from tomcat to embedded jetty > + fat/uber jar based packaging. Please share your thoughts and comments. > >> > >> > >> On very high level the packaging will provide the following: > >> > >> - A ServerDaemon class that can accept custom location of UI (webapp > directory), logging, and other environment options, part of the fatjar. > >> > >> - A config file (xml/yml or otherwise) where you can configure > keystore/SSL-certificates, paths (/client), ports, logging etc. > >> > >> - Default libraries/plugin path at > /usr/share/cloudstack-management/lib, UI path at > /usr/share/cloudstack-management/webapp > >> > >> - A default file (available at /etc/default/cloudstack-management or > symlink at /etc/sysconfig etc) where you can specific custom variables, > java options, classpath etc. > >> > >> - Refactored init.d/systemd scripts to be commonly used b/w rpm/deb > build scripts > >> > >> - A new/improve logrotate file > >> > >> - Logging will be handled by log4j (the same xml/config file you > normally use) > >> > >> - Currently we're using jsvc to handle mgmt server process, however we > may move to java+systemd completely > >> > > > > I suggest that we only use init.d on RHEL 6 and Ubuntu 14.04, but on > RHEL 7 and Ubuntu 16.04 (any distro that runs with systemd) we should try > to avoid using jsvc. > > > > That way we don't have to daemonize the MGMT server and keep it attached > to systemd. Also makes it easy to just print logs to stdout and have > journalctl take care of them. > > > >> > >> Marc-Aurèle (ExoScale) and I have collaborated on this problem and we > finally have a PR (not complete) where we can show this actually works, > please have a look: > > > > Awesome work! > > > >> > >> https://github.com/apache/cloudstack/pull/2226 > >> > >> > >> Once the PR is accepted, we can include a topic page in the 4.11/future > release notes docs about upgrading in-place and setting up ssl certs etc. > >> > >> > >> Regards. > >> > >> rohit.ya...@shapeblue.com<mailto:rohit.ya...@shapeblue.com> > >> www.shapeblue.com<http://www.shapeblue.com> > >> 53 Chandos Place, Covent Garden, London WC2N 4HSUK > >> @shapeblue > >> > >> > >> > > >