cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 
Michael.Perlstein
AppDynamics Team (Retired)

Table of Contents

Description

Requirements

Reason

Overview

Steps

 

Description

This article walks through how to add required edits toevents-service.vmoptions if you are using the Enterprise Console Discovery process. This is a temporary workaround in order to succeed with the Discovery process, therefore allowing you to administer your Events Service node/cluster using the Enterprise Console.

 

Requirements

  • If there is an existing (4.4.x/4.5.x) Events Service node/cluster that requires specific options be added to the events-service.vmoptions in order to start. A system which has noexec for their /tmp directory will likely qualify.
  • If you are discovering an existing Events Service node/cluster and the process is unsuccessful due to failed health checks.

 

Reason

When the Enterprise Console's Discovery process is used to find an existing Events Service cluster/node, the tasks will fail to complete due to the events-service.vmoptions file being reset to their defaults on each of the nodes. Once the vmoptions are reset, the node will fail to start, leading to the node(s) failing the health check required by the Discovery process.

 

Overview

In short, what you'll do is take the prepackaged vanilla events-service.zip  file that comes with the Enterprise Console (ex: [ENTERPRISE_CONSOLE_HOME_DIR]/platform-admin/archives/events-service/4.5.2.20561/events-service.zip), unpack the archive, add the required  vmoptions ​ file to the events-service.vmoptions file​, recompress the modified events-service directory, and then run the Discovery process with the Enterprise Console.

Before you start, please make a backup copy of the existing Events Service installation.

 

If you have any doubts or are unsure about whether these steps are needed for your deployment -- PLEASE STOP HERE.

 

Steps

1.   From the terminal of the Enterprise Console host, please navigate to the following directory (or whatever is the latest 4.4.x/4.5.x version directory available).

cd [ENTERPRISE_CONSOLE_HOME_DIR]/platform-admin/archives/events-service/4.5.2.20561

 

2.   The directory should have the following contents:

....4.5.2.20561]# ls -1 events-service.zip
pa-es.jar
playbooks
service.yml

 

3.  Backup the original events-service.zip ​.

cp events-service.zip events-service.zip.bk

 

4. Unzip the original archive and remove the archive.

unzip events-service.zip -d ./modified
rm events-service.zip

 

5.  At this stage, your present working directory listing should look like 

....4.5.2.20561]# ls -1
events-service.zip.bk
modified
pa-es.jar
playbooks
service.yml

and the modified ​subdirectory will contain the unzipped events-service ​directory.

4.5.2.20561]# find ./modified -maxdepth 2
./modified
./modified/events-service
./modified/events-service/bin
./modified/events-service/plugins
./modified/events-service/elasticsearch
./modified/events-service/version.txt
./modified/events-service/lib
./modified/events-service/conf

 

6.   Navigate to ./modified/events-service/conf ​and using your editor of choice, please update the events-service.vmoptions ​file to include your required options. In our example, the options that can be added are either

-Djna.tmpdir=/new/tmp/location​or -Djava.io.tmpdir=/new/tmp/location​where /new/tmp/location is a path on the host machine which is has exec permissions

-Djava.net.preferIPv4Stack=true
-Dfile.encoding=UTF-8
-Djna.tmpdir=/new/tmp/location​
-XX:+UseParNewGC
-XX:+UseConcMarkSweepGC
-XX:CMSInitiatingOccupancyFraction=75
-XX:+UseCMSInitiatingOccupancyOnly
-XX:+DisableExplicitGC
-XX:+PrintGCDetails
-XX:+PrintGCDateStamps
-XX:+PrintGCTimeStamps
-XX:+PrintClassHistogram
-XX:+PrintTenuringDistribution
-XX:+PrintGCApplicationStoppedTime
-XX:+PrintPromotionFailure
-verbose:gc
-XX:GCLogFileSize=64m
-XX:NumberOfGCLogFiles=4
-XX:+UseGCLogFileRotation
-XX:CompileCommand=exclude,org/apache/lucene/lucene54/Lucene54DocValuesConsumer.addSortedNumericField
-XX:CompileCommand=exclude,org/apache/lucene/lucene54/Lucene54DocValuesConsumer.addBinaryField
-XX:CompileCommand=exclude,org/elasticsearch/search/aggregations/metrics/percentiles/tdigest/AbstractTDigestPercentilesAggrega$
-XX:CompileCommand=exclude,org/apache/lucene/index/SortedNumericDocValuesWriter.flush
-XX:CompileCommand=exclude,org/apache/lucene/codecs/PushPostingsWriterBase.writeTerm

 

7.  Save out the file and navigate to the version directory if you've navigated away.

cd [ENTERPRISE_CONSOLE_HOME_DIR]/platform-admin/archives/events-service/4.5.2.20561


8.   Move the modified events-service directory one level up and then r ecompress the events-service ​directory containing the edits

mv ./modified/events-service ./events-service
zip -r events-service.zip ./events-service

 

9.  At this point, the version directory listing should look like the following:

4.5.2.20561]# ls -1
events-service.zip      <---modified events-service.zip
events-service.zip.bk   <---original events-service.zip
modified
pa-es.jar
playbooks
service.yml

 

10.   Remove the directory modified ​now that the edits have been made

rm -rf ./modified

 

11.   Feel free to backup the modified archive to a temp directory in the event you wish to save time if you are running multiple tests.


12.   In the Enterprise Console UI, run the Discovery task again.


13.  The hope is that the full Discovery process will now complete, allowing you to administer this cluster using the Enterprise Console.

 

14. If the Discovery process completes, one can assume the required options have not been reset. To be extra sure, you can verify all the required options are present in the events-service.vmoptions by running the following command on each node:

cat [EVENTS_SERVICE_HOME_DIR]/processor/conf/events-service.vmoptions

 

Comments
Shaun.Dolan
AppDynamics Team

If you don't mind remounting /tmp with exec and you have sufficient permissions, this may be an easier approach.

mount -o remount, exec /tmp
OR more permanently, you could update /etc/fstab entries for /tmp.

Claudia.Landivar
AppDynamics Team (Retired)

@Shaun.Dolan, thank you for adding this helpful tip to the article.

Anonymous
Not applicable

Hi,

 

The file is unavailable. events-service.zip

 

Thanks,

Fernando

Jeanie.Kedia
AppDynamics Team (Retired)

Thanks @Anonymous  for catching that and letting the community know. This is helpful! @Claudia.Landivar and team are working on getting this updated... they will report back when it's fixed. 

Claudia.Landivar
AppDynamics Team (Retired)

Hi, @Anonymous. We've done some investigating and have updated the article accordingly. The events.service.zip file wasn't supposed to be linked. You should have what you need in the revised document.

Anonymous
Not applicable

@Claudia.Landivar  thank you for you for update the article.

 

 

Claudia.Landivar
AppDynamics Team (Retired)

@fernando.Oliveira, you're welcome! @michael.Perlstein was instrumental in getting it updated. Grateful to you for pointing out this area of improvement. It helps the whole community.

Version history
Last update:
‎03-25-2020 10:56 PM
Updated by:
Join Us On December 10
Learn how Splunk and AppDynamics are redefining observability


Register Now!

Observe and Explore
Dive into our Community Blog for the Latest Insights and Updates!


Read the blog here