yes for the controller it depends of its size (number of jobs and types of jobs) but here we are fine it seems with our 3Gb
* Java - Version: 1.8.0_292 - Maximum memory: 3.00 GB (3221225472) - Allocated memory: 3.00 GB (3221225472) - Free memory: 750.15 MB (786591664) - In-use memory: 2.27 GB (2434633808) - GC strategy: G1 - Available CPUs: 2 For agents I reduced the memory allocated to the agent process but it doesn't help much (it seems - even if it is still a good thing to do) What is strange is that I see our agents sometimes disconnected even when we have no activity on the jenkins controller Sadly jenkins is deployed on Apache Tomcat thus I cannot get access to its logs In general the connection lost is detected by what we call the PingThread ( https://www.jenkins.io/doc/book/system-administration/monitoring/#ping-thread ) but not only https://ci-maven.apache.org/log/all For example it was few minutes ago we got 3 agents disconnected while nothing was running 2021-07-22 06:58:21.769+0000 [id=106291] INFO hudson.slaves.ChannelPinger$1#onDead: Ping failed. Terminating the channel maven4. java.util.concurrent.TimeoutException: Ping started at 1626936861769 hasn't completed by 1626937101769 at hudson.remoting.PingThread.ping(PingThread.java:134) at hudson.remoting.PingThread.run(PingThread.java:90) 2021-07-22 06:58:21.778+0000 [id=106292] INFO hudson.slaves.ChannelPinger$1#onDead: Ping failed. Terminating the channel maven3. java.util.concurrent.TimeoutException: Ping started at 1626936861777 hasn't completed by 1626937101778 at hudson.remoting.PingThread.ping(PingThread.java:134) at hudson.remoting.PingThread.run(PingThread.java:90) 2021-07-22 06:58:21.983+0000 [id=106295] INFO hudson.slaves.ChannelPinger$1#onDead: Ping failed. Terminating the channel maven5. java.util.concurrent.TimeoutException: Ping started at 1626936861982 hasn't completed by 1626937101983 at hudson.remoting.PingThread.ping(PingThread.java:134) at hudson.remoting.PingThread.run(PingThread.java:90) @Gavin McDonald <gmcdon...@apache.org> In terms of network, is it the same environment we use today compared to the ci-builds.apache.org environment ? On Wed, Jul 21, 2021 at 11:48 PM Tibor Digana <tibordig...@apache.org> wrote: > In my company, I also used 1GB for Xmx of Java Heap for the Jenkins JVM and > it was enough. > The subprocesses like Maven need to have much more memory to allocate for > themself rather than Jenkins JVM. > T > > On Wed, Jul 21, 2021 at 6:38 PM Arnaud Héritier <aherit...@gmail.com> > wrote: > > > I am looking at our builds and I try to understand why our agents are > often > > disconnected during the builds. > > We have in general a stacktrace like > > > > maven6 was marked offline: Connection was broken: java.io.IOException: > > Pipe closed after 0 cycles > > at > > > org.apache.sshd.common.channel.ChannelPipedInputStream.read(ChannelPipedInputStream.java:118) > > at > > > org.apache.sshd.common.channel.ChannelPipedInputStream.read(ChannelPipedInputStream.java:101) > > at > > > hudson.remoting.FlightRecorderInputStream.read(FlightRecorderInputStream.java:92) > > at > > hudson.remoting.ChunkedInputStream.readHeader(ChunkedInputStream.java:73) > > at > > > hudson.remoting.ChunkedInputStream.readUntilBreak(ChunkedInputStream.java:103) > > at > > > hudson.remoting.ChunkedCommandTransport.readBlock(ChunkedCommandTransport.java:39) > > at > > > hudson.remoting.AbstractSynchronousByteArrayCommandTransport.read(AbstractSynchronousByteArrayCommandTransport.java:34) > > at > > > hudson.remoting.SynchronousCommandTransport$ReaderThread.run(SynchronousCommandTransport.java:63) > > > > > > > > As far I can see we are using 16Gb "hosts" for linux agents > > > > Something very strange is that the jenkins agent (this small component > > doing the link between the build host and the controller) is configured > > with `-Xms8g -Xmx8g` thus we are reserving for it 50% of the server mem > > (even more because of the non-heap) > > This one in general should require in general really less. 1Gb is > already a > > lot from my exp. > > Due to this, the OS can see it has the biggest process on the host and > > decide to kill it when the rest of the memory is used by the build. > > I think we should decrease this value. > > (I can do it but I don't know how was configured the ci.apache.org > agents > > and I would like to not add more issue if this setting was here in the > past > > > > I don't think it is the root cause of our instabilities (at least all) > and > > there is something else I have to find but it's a cheap fix to try > > > > FYI our agents VMs are ~like this today: > > > > - Java > > + Home: `/usr/local/asfpackages/java/oraclejdk-1.8.0-291/jre` > > + Vendor: Oracle Corporation > > + Version: 1.8.0_291 > > + Maximum memory: 7.67 GB (8232370176) > > + Allocated memory: 7.67 GB (8232370176) > > + Free memory: 6.03 GB (6470953760) > > + In-use memory: 1.64 GB (1761416416) > > + GC strategy: ParallelGC > > + Available CPUs: 4 > > > > 8Gb is reserved, 1Gb is used (because the GC does nothing as the Free mem > > is high) > > > > I would be in favor to try to launch them with -Xms128m > > -Xmx1g -XX:+UseG1GC -XX:+UseStringDeduplication > > > > I think it's enough customization to start with > > > > Cheers > > > > On Wed, Jul 21, 2021 at 1:28 PM Arnaud Héritier <aherit...@gmail.com> > > wrote: > > > > > I am not sure about the setup > > > AFAICS we don't use any JDK installer ( > > > https://ci-maven.apache.org/configureTools/ ) thus I suppose that the > > > different JDKs are supposed to be installed directly on the agent ? > > > I am not sure how it was done on the previous environment > > > > > > On Sun, Jul 18, 2021 at 5:30 PM Tibor Digana <tibordig...@apache.org> > > > wrote: > > > > > >> The new CI system has the following issue: > > >> > > >> /home/jenkins/tools/java/latest1.7/bin/java: not found > > >> > > >> > > >> > > > https://ci-maven.apache.org/job/Maven/job/maven-box/job/maven-surefire/job/master/104/execution/node/183/log/ > > >> > > >> > > >> > > >> On Wed, Jun 30, 2021 at 8:03 PM Gavin McDonald <gmcdon...@apache.org> > > >> wrote: > > >> > > >> > Hi Maven folks. > > >> > > > >> > Infra has decided to separate off the Maven build jobs from > > >> > ci-builds.apache.org over to its very own Jenkins Controller and > > >> Agents. > > >> > > > >> > This means that Maven now has a dedicated Jenkins environment for > > >> itself. > > >> > It > > >> > also means that no other projects build jobs can build on the Maven > > >> nodes; > > >> > and > > >> > then Maven jobs will no longer be able to build on the ci-builds > > jobs. > > >> > > > >> > Your new Controller is set up as https://ci-maven.apache.org and > all > > >> Maven > > >> > Committers > > >> > can login via LDAP and create jobs. > > >> > > > >> > At the time of writing, there is one node/agent attached but I am > > >> building > > >> > 4 more - all > > >> > Ubuntu 20.04 and based in our Azure account. > > >> > > > >> > We can automagically move all your jobs over from ci-builds to > > ci-maven > > >> - I > > >> > just need someone to tell me go ahead and do it. > > >> > > > >> > In the meantime, feel free to have a test. The remaining 4 agents > will > > >> be > > >> > online > > >> > by tomorrow. We will review after a month if 5 is enough nodes. > > >> > > > >> > As with other projects having their own dedicated controller, who > have > > >> > taken advantage > > >> > of this isolation by having some nodes/agents given to the project > as > > a > > >> > 'targeted donation' > > >> > so someone here may know of a Company will to donate 5 - 10 or more > > >> nodes > > >> > specifically > > >> > for Maven Jenkins environment. Infra can afford to hand you over 5 > > right > > >> > now. > > >> > > > >> > Let me know if you have any questions, otherwise let me know when I > > can > > >> > make the > > >> > transfer of your jobs. > > >> > > > >> > Thanks > > >> > > > >> > -- > > >> > > > >> > *Gavin McDonald* > > >> > Systems Administrator > > >> > ASF Infrastructure Team > > >> > > > >> > > > > > > > > > -- > > > Arnaud Héritier > > > Twitter/Skype : aheritier > > > > > > > > > -- > > Arnaud Héritier > > Twitter/Skype : aheritier > > > -- Arnaud Héritier Twitter/Skype : aheritier