Elasticsearch installation - java

As per the install wiki [https://www.elastic.co/guide/en/elasticsearch/reference/current/zip-targz.html#install-targz] I have the elasticsearch-5.4.3 installed.
./bin/elasticsearch gave the following error :
Elasticsearch requires at least Java 8 but your Java version
from /usr/bin/java does not meet this requirement
So I have downloaded the latest version of java as well in the same directory as that of elasticsearch.
But running the following command still errors out
./jre1.8.0_151/bin/java ./elasticsearch-5.4.3/bin/elasticsearch
with error message :
Error: Could not find or load main class ..elasticsearch-5.4.3.bin.elasticsearch
What could be the remedy for this ?

first install your java (version 8+) and set $JAVA_HOME variable or download java. use update-alternative to set default java.
update-alternatives: warning: /etc/alternatives/java is dangling
then, install elasticsearch from rpm file and config /etc/elasticsearch/elasticsearch.yml.
https://www.elastic.co/guide/en/elasticsearch/reference/current/rpm.html
now, you can start elasticseach service by executing :
service elasticsearch start

Possibility 1: don't start with java, run elasticsearch directly
step 1: set the $JAVA_HOME to your latest 1.8 java installation
step 2: run the command ./bin/elasticsearch
Possibility 2: permission issue
step 1: set SELinux to permissive mode
step 2: run the installation command from the same user from which you have
downloaded and extracted the elasticsearch packages.

Related

JMETER non gui: Not able to generate folder using jmeter command line

I am unable to generate a folder/HTML report of jmeter in the command line.
I have previously upgraded to the latest java and somehow it did not work.
I have downloaded jdk8 but encountered this message below:
jmeter: line 128: [: : integer expression expected jmeter: line 199:
/Library/Internet Plug-Ins/JavaAppletPlugin.plugin/Contents/Home -v
1.8.331.09/bin/java: No such file or directory
You're using wrong Java, you need to have JDK (or at least JRE) and you seem to be using Java browser plugin
Follow the instructions from Installation of the JDK on macOS article to get the required version of Java (not earlier than JDK 8) and make sure that it's in your PATH before the one which is provided by the browser plugin.
Also you can consider using Homebrew for installing JMeter.
More information: Get Started With JMeter: Installation & Tests

Spark installation error => Failed to initialize compiler: object java.lang.Object in compiler mirror not found

I have installed Java-11-openjdk-amd64 and ran it in auto in usr/lib/jvm/Java-11-openjdk-amd64/bin/java, and Scala 2.11.12 and spark 2.2.0 with hadoop 2.7 in my desktop having linux mint VM 19.2 running on windows 10. I am getting error opening spark-shell:
Failed to initialize compiler: object java.lang.Object in compiler mirror not found.
I also defined the variables in the .bashrc file in the home directory as follow:
export JAVA_HOME=/usr/lib/jvm/Java-11-openjdk-amd64
export SCALA_HOME=/usr/local/src/scala/scala-2.11.12
export SPARK_HOME=/usr/lib/spark/spark-2.2.0-bin-hadoop2.7
export PATH=$SCALA_HOME/bin:$JAVA_HOME/bin:$SPARK_HOME/bin:$PATH
How can I solve this? Do I have to change it into java 8 to run spark? I am trying to run it on java-8-openjdk-amd64 using update-alternatives --config java but I cannot change the selected java as it gives me another error: permission denied.
How can I move my java 8 to another folder using command line as I cannot do it manually? I am new to Linux and Spark..
You should use Java 8 since Spark depends heavily on some of the Java 8 features that where either made private, deprecated or removed in Java 9 and above.
Copy: https://www.webservertalk.com/copy-directory-folder-linux-cmd

Using OpenJDK 12 in Jenkins (Docker version)

I tried to install OpenJDK 12 in jenkins, with *.tar.gz installer but i get the error Cannot run program "/bin/java"
JAVA_HOME=/var/jenkins_home/tools/hudson.model.JDK/java12
Note I created the directory "hudson.model.JDK" myself.
here is the tool configuration
full error log
JDK 12 has one bug logged
https://bugs.openjdk.java.net/browse/JDK-6746185
according to this Malformed URL is invalid, So jenkins is not able to download JDK
Simple solution is download JDk from this link, or whatever you like and add Open JDK in jenkins as I do
https://download.java.net/java/GA/jdk12.0.1/69cfe15208a647278a19ef0990eea691/12/GPL/openjdk-12.0.1_linux-x64_bin.tar.gz
Download JDK and extract it to one folder.
Manage Jenkins> Global Configurations> Add JDK>
1. Name: Open JDK(Or whatever you want)
2. JAVA_HOME: \Open_JDK\
like in my case
E:\Open_JDK\openjdk-11.0.2_windows-x64_bin\jdk-11.0.2
in jenkins
Save and exit, everything working fine
Happy Jenkins, Happy to help
JDK Tool Plugin in Jenkins only support the automatic download of version up to Java SDK 1.9 so I will write the process made by me in order to config OpenJDK-11(I'm using this specific version but another version can be used) in a Jenkins running in a Docker container:
Login into the host server where the docker container is running using SSH
service.
Check the running containers with the command: docker ps
Get in into the Jenkins container with the command(in my case, the container name is "jenkins"): docker exec -it containerName /bin/bash
Download the OpenJDK 11: cd /usr/local && wget https://download.java.net/openjdk/jdk11/ri/openjdk-11+28_linux-x64_bin.tar.gz
Unpack the downloaded file: tar -zxvf openjdk-11+28_linux-x64_bin.tar.gz
Now you will have a folder "jdk-11" under /usr/local.
Go to Global Tools Configuration in Jenkins and set up the SDK config like the showed image:
Now you can make use of a different version of Java SDK in Jenkins builds using as label "Java SE 11".
JDK 12 is not yet supported by Jenkins.
Link: https://jenkins.io/doc/administration/requirements/java/

Why is my Elasticsearch 1.6.0 missing the plugin manager?

I am trying to run elasticsearch 1.6.0 using cygwin on a 64-bit Windows 7 machine. I downloaded the elasticsearch zip from the elasticsearch home page, and installed the latest version of java and jdk (1.8.0_45) and have set the JAVA_HOME variable to the right path I think. When I try to execute the very first step in the Definitive Guide installation process:
$ ./bin/plugin -i elasticsearch/marvel/latest
I get this error:
Error: Could not find or load main class org.elasticsearch.plugins.PluginManager
I've seen this problem with earlier versions of elastic, but apparently the problem was fixed so I'm not sure why this is happening.

Jenkins, specifying JAVA_HOME

I installed openjdk-6-jdk on my ubuntu box using apt-get.
In system info jenkins is telling me Java.Home is /usr/lib/jvm/java-6-openjdk/jre
However when I specify that directory as JAVA_HOME in Jenkins : "configure system", it returns error message saying that directory does not look like a jdk directory.
it is also failing to pick up my maven install.
Am I missing something obvious ?
Your JAVA_HOME variable must be set to /usr/lib/jvm/java-6-openjdk and it must be available for the user that starts Jenkins.
From Kyle Strand comment:
As of April 2015 (I think), Jenkins requires Java7. Also note that the java binary path (JAVA) must be set to the correct version if the system default is still Java 6. Finally, for anyone wondering where these variables are set, it's in a config file listed with the installation instructions on the Jenkins webpage (e.g. for Debian it's /etc/default/jenkins).
Using Jenkins 2 (2.3.2 in my case), the right way seems to insert the following into your pipeline file:
env.JAVA_HOME="${tool 'jdk1.8.0_111'}"
env.PATH="${env.JAVA_HOME}/bin:${env.PATH}"
"jdk1.8.0_111" beeing the name of the java configuration initially registered into Jenkins
On CentOS 6.x and Redhat 6.x systems, the openjdk-devel package contains the jdk. It's sensible enough if you are familiar with the -devel pattern used in RedHat, but confusing if you're looking for a jdk package that conforms to java naming standards.
I was facing the same issue and for me downgrading the JAVA_HOME from jdk12 was not the plausible option like said in the answer. So I did a trial and error experiment and I got the Jenkins running without even downgrading the version of JAVA_HOME.
Steps:
open configuration $ sudo vi /etc/init.d/jenkins
Comment following line:
#JAVA=`type -p java`
Introduced the line mentioned below. (Note: Insert the specific path of JDK in your machine.)
JAVA=`type -p /usr/lib/jdk8/bin/java`
Reload systemd manager configuration: $ sudo systemctl daemon-reload
Start Jenkins service: $ sudo systemctl start jenkins
● jenkins.service - LSB: Start Jenkins at boot time
Loaded: loaded (/etc/init.d/jenkins; generated)
Active: active (exited) since Sun 2020-05-31 21:05:30 CEST; 9min ago
Docs: man:systemd-sysv-generator(8)
Process: 9055 ExecStart=/etc/init.d/jenkins start (code=exited, status=0/SUCCESS)
I just wanted to add a solution for Windows machines.
Windows Server 2008 R2 Standard, SP1
Jenkins 2.89.4
Java version 8.171
Symptom: Jenkins service starts and immediately stops.
Jenkins.wrapper.log has a line indicating the incorrect path to Java:
- Starting C:\Program Files\Java\jre1.8.0_141\bin\java -Xrs -Xmx6g -Dhudson.lifecycle=hudson.lifecycle.WindowsServiceLifecycle -jar "C:\Program Files (x86)\Jenkins\jenkins.war" --httpPort=8080 --webroot="C:\Program Files (x86)\Jenkins\war"
The fix: Jenkins has the path hard-coded in jenkins.xml. Change the path to the new Java location.
<env name="JENKINS_HOME" value="%BASE%"/>
<!--
if you'd like to run Jenkins with a specific version of Java, specify a full path to java.exe.
The following value assumes that you have java in your PATH.
-->
<executable>C:\Program Files\Java\jre1.8.0_171\bin\java</executable>
<arguments>-Xrs -Xmx256m -Dhudson.lifecycle=hudson.lifecycle.WindowsServiceLifecycle -jar "%BASE%\jenkins.war" --httpPort=8080 --webroot="%BASE%\war"</arguments>
You can also use Windows Environment Variables, but I wasn't successful with that and I don't think the Java installer updates those, so you'd need to update that by hand every time anyway.
<env name="JENKINS_HOME" value="%BASE%"/>
<!--
if you'd like to run Jenkins with a specific version of Java, specify a full path to java.exe.
The following value assumes that you have java in your PATH.
-->
<executable>%JAVA_HOME%\bin\java</executable>
<arguments>-Xrs -Xmx256m -Dhudson.lifecycle=hudson.lifecycle.WindowsServiceLifecycle -jar "%BASE%\jenkins.war" --httpPort=8080 --webroot="%BASE%\war"</arguments>
openjdk-6 is a Java runtime, not a JDK (development kit which contains javac, for example). Install openjdk-6-jdk.
Maven also needs the JDK.
[EDIT] When the JDK is installed, use /usr/lib/jvm/java-6-openjdk for JAVA_HOME (i.e. without the jre part).
This is an old thread but for more recent Jenkins versions (in my case Jenkins 2.135) that require a particular java JDK the following should help:
Note: This is for Centos 7 , other distros may have differing directory locations although I believe they are correct for ubuntu also.
Modify /etc/sysconfig/jenkins and set variable JENKINS_JAVA_CMD="/<your desired jvm>/bin/java" (root access require)
Example:
JENKINS_JAVA_CMD="/usr/lib/jvm/java-1.8.0-openjdk/bin/java"
Restart Jenkins (if jenkins is run as a service sudo service jenkins stop then sudo service jenkins start)
The above fixed my Jenkins install not starting after I upgraded to Java 10 and Jenkins to 2.135
java jenkins java-home ubuntu centos
For those of you coming to this issue and have access to configure your Jenkins Agents, you can set the JAVA_HOME from the Jenkins > Nodes > "the agent name" > Configure page:
Setting "per agent" environment variables
In case anyone has similar problems, I used the default sudo apt-get installs for the relevant packages and here are the correct settings:
JAVA_HOME=/usr/lib/jvm/java-7-openjdk-i386
and
MAVEN_HOME=/usr/share/maven2
In Jenkins try setting JAVA_HOME to /usr/lib/jvm/java-6-openjdk
Upgrading from Ubuntu 10.0.4 to 12.0.4 we got wrong footed.
We had a JDK installation configured (auto-configured?) pointing to /usr/lib/jvm/java-6-openjdk
this no longer contained a JDK,
Changing to /usr/lib/jvm/default-java fixed, and should make for a seamless java-7 upgrade.
So in answer to the question: do not specify JAVA_HOME on Ubuntu.
In Ubuntu 12.04 I had to install
openjdk-7-jdk
then javac was working !
then I could use /usr/lib/jvm/java-7-openjdk-amd64 as path and jenkins didn't complain anymore.
Download package rpm package from http://pkg.jenkins-ci.org/redhat/ you can give additional java location like I have default 1.7 java in my system but I am using /opt/jdk1.8.0_60/bin/java for jenkins. Open jenkins startup script /etc/init.d/jenkins and add additional java here, I m case I have added /opt/jdk1.8.0_60/bin/java,
Search usable Java as /usr/bin/java might not point to minimal version required by Jenkins.
See http://www.nabble.com/guinea-pigs-wanted-----Hudson-RPM-for-RedHat-Linux-td25673707.html
candidates="
/opt/jdk1.8.0_60/bin/java
i saw into
Eclipse > Preferences>installed JREs > JRE Definition
i found the directory of java_home
so it's
/Library/Java/JavaVirtualMachines/jdk1.7.0_17.jdk/Contents/Home

Categories