Install Elasticsearch Service in Linux - elasticsearch

We are developing a java (spring boot) based software which depends on Elasticsearch. Right now we integrate elasticsearch via maven (as artifact).
This version seems to be the same as the .zip / .tar.gz version from the elasticsearch website.
As I have noticed there is a service installer for windows (x86 as well as x64).
But it seems that there is no "service installer" for linux in this package. I can use "./bin/elasticsearch -d -p pid" and the corresponding "kill cat pid" command to start/stop elasticsearch but it would be nice to have some form of service installer in this package as well so that elasticsearch is started automatically after an OS reboot.
I know the necessary files for systemd and init.d systems exist (at least in the .deb and .rpm package versions) so I assume it is not such a big deal to have a service installer in the artifact/zip/tar.gz version as well.
Am I right or do I underestimate this issue?

If there are the init.d files already, all you need to do is create the shortcut in rc.3 or rc.5 folders. Using redhat distros you'd simply do:
$ sudo chkconfig elasticdaemonname on
But that's assuming it is a daemon. If not, you'll have to daemonize it yourself. There are various possibilities to do this and I'm ready to bet all of them are documented for elasticsearch. But you could look for daemonize for start.

Related

Can I install linux headers package as non-root?

Ubuntu 20.04 - is it possible to install the Linux headers package as non-root? Perhaps to a different directory under $HOME somewhere?
The reason for asking is I would like to have an Jenkins job that periodically fetches and, if necessary, installs the latest version before building a driver against those headers. The Jenkins job will run as a non-root user, so I don't really want to mess with passwords or keys if I can do the whole thing with 'normal' user permissions.
(I have thought about using DKMS, but the machines where the driver will be installed are very restricted and we can't install build tools on them.)
Thanks.

"Failed loading ClientOU certificate at ..." while running a Hyperledger Fabric sample "Building Your First Network"

I'm trying to test my development environment and keep getting this error while going through the "Building Your First Network". I've installed the prerequisites on a Windows 10 Home edition so I'm using Docker Toolbox. The error is described as follows and happens just after a execute the ./byfn.sh up -l node command:
2019-11-14 17:06:26.982 UTC [msp] loadCertificateAt -> INFO 002 Failed loading ClientOU certificate at [/var/hyperledger/orderer/msp/cacerts\ca.example.com-cert.pem]: [could not read file /var/hyperledger/orderer/msp/cacerts\ca.example.com-cert.pem: open /var/hyperledger/orderer/msp/cacerts\ca.example.com-cert.pem: no such file or directory]
As you can see there is a backslash just before the ca.example.com-cer.pem which I think is causing the problem. Anyone have an idea of how I might solve this issue?
Docker Toolbox for windows doesn't provide a great experience for users. It's limited in how it can share windows directories with linux containers running in the linux VM it creates. I believe it can be made to work but you have to use very specific folders in your home directory and you would have to google it to find all the details but it's a lot more of a hassle.
You have other options of course
Upgrade to Windows Pro and use Docker for Windows (which doesn't have the same sharing limitations, but still not a great experience and you can still encounter problems sharing the directories)
Install a hypervisor such as virtualbox and run a linux desktop distribution such as ubuntu or mint and use that instead (which I would recommend and would suggest ubuntu 18.04 mate edition)
Wait until next year when hopefully microsoft will release WSL2 for everyone (including home edition) and then Docker won't need a linux VM running and it should be a much better experience trying to run linux containers on windows.
As mentioned by lindluni here
Backslash problem in Hyperledger 2.0.1 when orderer/peer look for .pem files
the problem arises when one creates crypto artifacts under Windows since "golang filepath.Join uses the current OS's filepath scheme". Hence, under Windows backslash is used in all the generated config.yaml files found in crypto-config/*. One can replace this backslashes before the deployment to fix the issue.

Ubuntu programs won't run from command line but say they are installed

I am new to Linux and non-Microsoft web development (long time MS developer). I am making some kind of fundamental mistake when I install Linux programs but I don't know what.
I am trying to install spring-boot-cli for use to make a Java microservice. I am just trying to learn how. I followed the installation instructions I found here, ending up using the SDKMAN installation method: https://docs.spring.io/spring-boot/docs/current/reference/html/getting-started-installing-spring-boot.html
When I try to run spring --version, it says spring is not installed. When I go back and try to install it again, sdk says, "STOP! this is already installed."
I am having a similar problem with Maven. I try to run command line commands and it is not recognized, but it claims it is installed.
a bit unusual but at the terminal type:
> which spring
and then
> $PATH
should give you a starting point.

Elasticsearch curator in windows?

I have installed elasticsearch curator in my windows machine by default the location will be in C:\Users\username based on ESdoc.
But i didn't find any .curator files in that location?
May i know where it is stored?
Do i need python to execute curator?
Curator does not install any default files for you. You must build your own. You can create a curator.yml based on the example in the documentation. You can install this at C:\Users\username\.curator\curator.yml to have it be automatically picked up when you execute Curator.
Action files can also be created based on the examples in the documentation.
If you installed from the Windows Binary Zip package or the Windows MSI Installer for Curator, you do not need Python as it is bundled with those packages.

ruby - copy a jar from linux to windows server

We are having a linux build server and the build scripts are written in ruby. All the jars are deployed on linux servers only and are generally copied to the application servers using ssh.
There is a new service which needs to be deployed on a windows server. Is there a way to copy and configure the jar deployment from the linux machine to the windows server.
Using ruby / shell scripting?
If you are already using SSH in your build script I would think the easiest thing to do would be to install an SSH server on the Windows box. You can use sshd via Cygwin or opt for a commercial product like WinSSHD (I'm sure there are numerous other free or paid products out there).
Once you have that running you can more than likely reuse most of the existing script relating to moving files around and use a gem like Win32Utils to do any windows specific tasks.

Resources