Ed,
I am interested. Please send me an invite
RegardsViswa

    On ‎Tuesday‎, ‎March‎ ‎27‎, ‎2018‎ ‎08‎:‎11‎:‎04‎ ‎PM‎ ‎EDT, Ed Cable 
<edca...@mifos.org> wrote:  
 
 Viswa,

There are some GSOC prospects who would like to work on some of these
containerization ideas/projects. You'd be a great fit to help mentor. I'm
going to send you an invite to mentor in case you'd like to be involved.

Ed

On Sun, Mar 11, 2018 at 4:05 PM, Viswa Ramamoorthy <
viswaramamoor...@yahoo.com.invalid> wrote:

>  Hi, Myrtle,
> I can make Docker infrastructure enabled explicitly that would leave
> embedded ActiveMQ and Eureka default. I will update PR on this front.
> Eclipse plugin is to get  project files for import into an IDE typically
> Spring STS. When 'eclipse' gradle plugin is included, I could typically run
> './gradlew eclipse' that would create ".project" and ".classpath" files.
> After this I can import project and add gradle config to have the project
> available in IDE for debugging purposes. I typically use Spring STS as IDE
> which is built on top of Eclipse.
> Regarding second point, I need to check and I will add back.
> One other design aspect that stood out was RSA feature (i.e. system
> properties like public key, private key etc related to certificate) baked
> into each service and made mandatory. Any reasons to have it mandatory?
> Would it not be a deployment addition rather than making it mandatory for
> service start up? Reason I bring this up is that it makes service rely on a
> pre-step to acquire certificate keys before launch. Even if it is needed in
> each service, can it be made optional so development environments do not
> have to deal with this?
> RegardsViswa Ramamoorthy
>
>    On ‎Sunday‎, ‎March‎ ‎11‎, ‎2018‎ ‎03‎:‎38‎:‎48‎ ‎PM‎ ‎EDT, Myrle
> Krantz <my...@apache.org> wrote:
>
>  Hey Viswa,
>
> You make some fair points.
>
> But with respect to micro service architecture, it is possible to get
> deploy in one process, but, by keeping the data for the services
> separate, leave the path open to a "proper" micro-service deployment.
> This is what we need to do if we wish to enable developers to work on
> Fineract CN who can't afford higher end machines.
>
> I suggest we:
> * add the dockerization, but not make it the default.  This is a
> demo-server and not a "real" deployment.
> * add instructions to the demo-server readme to cover the log and
> debugging problems.
>
> Beyond that there are two (solveable) problems with your pull request:
> 1.) you're using the eclipse gradle plugin.  It's probably under the
> eclipse license.  The eclipse license is a so-called Category B
> license.  You either need to follow that license's requirements or
> remove the plugin.  I haven't looked closely enough at the plugin to
> learn the benefit you derive from adding it.  If you can explain why
> you want it, I'll help you figure out how to conform to the licensing
> requirements.
> 2.) You've accidentally removed spin down code for ActiveMQ and
> Eureka.  These are both @ClassRules in the original code.  This means
> that their "after" functions are called when the test ends.  By moving
> their spin up from the ClassRule into "before", and not adjusting
> "after", you loose the cleanup code.
>
> Best Regards,
> Myrle
>
>
> On Tue, Mar 6, 2018 at 12:54 AM, Viswa Ramamoorthy
> <viswaramamoor...@yahoo.com.invalid> wrote:
> >  Hello Myrle,
> > Thanks for sharing your thoughts on Dockerization of services.
> > My experience with embedding infrastructure inside application JVM (even
> for development purposes) has not been great. In a development, when things
> change so much, embedding infrastructure adds additional time to bootstrap
> the whole thing when application restarts needed. Having external
> infrastructures gives better visibility as well as their failure to start
> can be diagnosed better (e.g. a port is not available because another
> instance of a infrastructure is already running in the background).
> > With external infrastructures, installation becomes cumbersome if we go
> with installation of infrastructure and every one need to follow those
> steps to install to get there. My PR is really to solve that part.
> > Some of the complexity, that you alluded to, are really complexity of
> design/developing in micro services architecture.
> > Couple of points about logging (that stays within Docker) as well as
> debug mode with Docker deployment, are very much solvable with Docker
> deployment.
> > Regarding high amount of resources needed for deployment, one strategy
> that could be looked into is to provide capability to selectively start
> services needed for a feature to complete and leave the full deployment to
> integration environments.
> > If you looking into collapsing micro-services into a single war, for
> development purposes, it can be a strategy that would work. But all of the
> services need to be using compatible version of frameworks and managing
> different configurations can be challenge.
> > Having infrastructure as Docker can still come handy in day to day
> development. I understand the timeline/priority. No problem.
> > RegardsViswa
> >
> >    On ‎Monday‎, ‎March‎ ‎5‎, ‎2018‎ ‎07‎:‎17‎:‎41‎ ‎AM‎ ‎EST, Myrle
> Krantz <my...@apache.org> wrote:
> >
> >  Hey Viswa,
> >
> > It's going to take me a little longer to get to merging and reviewing
> > this, so please be patient with me.  But a couple of comments while
> > you're waiting:
> >
> > 1.) That you're not seeing those error messages probably may not mean
> > they are gone.  It may mean that they are now "hidden" in the docker
> > image.  That's not ideal for error messages.  It makes debugging
> > harder when there really is an issue.
> > 2.) Thank you for finding the error with the artifact path.  Consider
> > submitting a patch to fineract-cn-service-starter.
> >
> > I'm a bit concerned about the idea of moving this all into docker.
> > Yes docker is one important method for deploying microservices, and
> > showing an example of how to use those technologies is important.  But
> > the demo-server is also there partly to test code and get a local
> > installation up and running.  When I started on it, my intention was
> > to support Mark van Veen so that he didn't have to start all the
> > services and then provision by hand to work on the UI.  Unfortunately
> > there are serious problems with the demo-server the way it is now.  It
> > takes a huge amount of resources because it starts every service in
> > its own process.  Many developers do not have computers with
> > sufficient resources to run this locally.  At one point, Kuelap
> > literally bought me a new computer after I had spent a couple of days
> > unsuccessfully trying to make the demo-server work because Markus had
> > added a couple more services to it.  Moving these processes into
> > containers doesn't solve this problem.  Docker works with computing
> > resources in a shockingly efficient manner, so it probably doesn't
> > actually make the problem worse, but it does make the problem harder
> > to solve.
> >
> > Another point, is that currently I can start these services in debug
> > mode, and attack a debugger to them to understand tricky problems.  I
> > don't know how to do that in a docker container.  Any changes in that
> > direction should consider this use case.
> >
> > I can see that testing this running in docker might be important for
> > some of our users and contributors.  But I don't want it to be the
> > default.  I would feel more comfortable with your change sets if you
> > made this "more optional".
> >
> > My first priority for this project is to enable contributors.  To do
> > that, I'd like to look for ways to run all of the services in one
> > process for the purposes of local testing and debugging.
> >
> > Best Regards,
> > Myrle Krantz
> > Committer, Apache Fineract
> >
> >
> >
> > On Fri, Mar 2, 2018 at 3:35 AM, Viswa Ramamoorthy
> > <viswaramamoor...@yahoo.com.invalid> wrote:
> >>  Hi,
> >> I  have raised a PR with docker compose yml for Eureka and ActiveMQ.
> >> It is https://github.com/apache/fineract-cn-demo-server/pull/3
> >> Please note that after I launch  Eureka and ActiveMQ via Docker, I do
> not see JMS connect error as well as Eureka registration error anymore.
> >> But service launch was failing with below errorCould not find artifact
> io.mifos.provisioner:service-boot:jar:0.1.0-BUILD-SNAPSHOT
> >> Locally was able to fix artifact path to "org.apache.fineract.cn." in
> fineract-cn-service-starter and move forward with service launch.
> >> But there were more errors. I have not looked into further yet.
> >> I think demo server needs some more work to get it to work
> consistently. All of the services can be launched via shell script if there
> are no start up dependencies between them
> >> Regards
> >> Viswa
> >
>



-- 
*Ed Cable*
President/CEO, Mifos Initiative
edca...@mifos.org | Skype: edcable | Mobile: +1.484.477.8649

*Collectively Creating a World of 3 Billion Maries | *http://mifos.org
<http://facebook.com/mifos>  <http://www.twitter.com/mifos>  

Reply via email to