[size=125]I would like some insight from the developers as to what they think and where things are at with a Linux 64bit OS and Java form a production environment stability standpoint.
Hopefully my notes can help others get Ignition setup on Ubuntu Server and I can benefit from some feed back on the concerns I have.
This is how I got Ignition-7.6.4-linux-x64 setup and running on a headless Ubuntu Server 12.04.3 LTS 64 bit Edition.
I did a fresh install of Ubuntu Server 12.04.3 “Precise” LTS 64bit Edition and selected to have ssh installed during the initial setup and left everything else at the default options. Once I had Ubuntu installed I did a
$ sudo apt-get update && sudo apt-get dist-upgrade and then I had a fresh up to date Ubuntu Serve ready to install Ignition-7.6.4-linux-x64 on and these were a few of the issues I had and was able to get them all sorted out and everything is successfully up and running. I was also able to launch the “OEE/DT/Schedule demonstration application” after I installed the “JDBC Driver for MySQL (Connector/J)” on my other Ubuntu server that has MySQL installed on it, it was as simple as running this command:
$ sudo apt-get install libmysql-java
According to the quick start Linux installation guide that I used; http://www.inductiveautomation.com/support/quickstart/linux these are the out of date documentation and 64bit issues I had.
The fist step of installing Java is completely out of date, Java has now been re-branded as Oracle Java and using Canonical’s ‘partner’ repository doesn’t include the Oracle (Sun) Java packages anymore and note that “maverick” is an old 10.10 version of Ubuntu and according to this site: http://ubuntuguide.org/wiki/Ubuntu:Maverick
I tried uncommenting my Canonical’s ‘partner’ repository in my /etc/apt/source.list file and did a sudo apt-get update just to see if there was an Oracle (Sun) package in the repo and there wasn’t. So you need to install Oracle Java by adding a new PPA according to this website: http://www.webupd8.org/2012/11/oracle-sun-java-6-installer-available.html
But first you must run this command or the following “add-apt-repository” command won’t work
$ sudo apt-get install python-software-properties
Then following the instructions
$ sudo add-apt-repository ppa:webupd8team/java
$ sudo apt-get update
$ sudo apt-get install oracle-java6-installer
I continued with the rest of the install and everything else seemed to go fine and finished without any errors.
When I pointed my browser to: http://localhost:8088 I got this;
[quote][ul]Apache Tomcat/6.0.36 - Error report – Chromium (this was on the title bar of the browser)
HTTP Status 404 -
type Status report
description The requested resource is not available.
I stopped the Ignition service and searched the forums for “http://localhost:8088 Not working” and ran across a couple of post referring to errors in the “wrapper.log” file so I did a:
$sudo cat /var/log/ignition/wrapper.log | grep Error
and this is what I found:
[quote]INFO | jvm 1 | 2014/01/23 02:32:33 | java.lang.UnsatisfiedLinkError: /usr/lib/jvm/java-6-oracle/jre/lib/amd64/xawt/libmawt.so: libXtst.so.6: cannot open shared object file: No such file or directory
INFO | jvm 1 | 2014/01/23 02:32:33 | SEVERE: Error filterStart
INFO | jvm 1 | 2014/01/23 02:34:22 | java.lang.UnsatisfiedLinkError: /usr/lib/jvm/java-6-oracle/jre/lib/amd64/xawt/libmawt.so: libXtst.so.6: cannot open shared object file: No such file or directory
INFO | jvm 1 | 2014/01/23 02:34:22 | SEVERE: Error filterStart
INFO | jvm 1 | 2014/01/23 03:00:22 | java.lang.UnsatisfiedLinkError: /usr/lib/jvm/java-6-oracle/jre/lib/amd64/xawt/libmawt.so: libXtst.so.6: cannot open shared object file: No such file or directory
INFO | jvm 1 | 2014/01/23 03:00:22 | SEVERE: Error filterStart
INFO | jvm 1 | 2014/01/23 03:09:46 | java.lang.UnsatisfiedLinkError: /usr/lib/jvm/java-6-oracle/jre/lib/amd64/xawt/libmawt.so: libXi.so.6: cannot open shared object file: No such file or directory
INFO | jvm 1 | 2014/01/23 03:09:46 | SEVERE: Error filterStart
So it looks like a problem with “libXtst.so.6” and “libXi.so.6”, Is this because it’s 32bit Java on a 64bit OS???
I was able to find a solution that fixed the problem here: http://stackoverflow.com/questions/17355863/cant-find-install-libxtst-so-6
$ sudo apt-get install libxtst6
$ sudo apt-get install libxi6
To verify that they were installed properly and in the right location run these commands to check
$ sudo updatedb
$ sudo locate libXtst
It should return something like:
If you do not have libXtst.so.6 but do have libXtst.so.6.X.X create a symbolic link:
$ sudo cd /usr/lib/x86_64-linux-gnu/
$ sudo ln -s libXtst.so.6 libXtst.so.6.X.X
Next check for libXi
$ sudo locate libXi
It should return something like this
Then clear the log file
$ sudo truncate -s0 /var/log/ignition/wrapper.log
Restart the Ignition service
$ sudo /etc/init.d/ignition start
I pointed my browser to: http://localhost:8088 and BINGO IT WORKS!!
After reading this forum post: http://inductiveautomation.com/forum/viewtopic.php?f=72&t=7410&start=0&st=0&sk=t&sd=a&hilit=unitronics about connecting a Unitronics PLC/HMI to the OPC server like I want, I ran across this note;
[quote]“*Note: I don’t recommend installing the 64-bit core components linked to above. We currently only support the OPC-COM module in 32-bit environments. Using 64-bit Java and the 64-bit core components will make it “appear” to work, but we’ve found significant stability problems with that environment.”[/quote]
I got to thinking if what I did was the right thing or not with setting up Java the way I did but I realize that post was from Dec 21, 2011 and don’t know if this is the state of things anymore or not? Have I fixed one problem but created a much bigger one for down the road???
Is the Java package that I installed a 32bit package running on a 64bit system?, does Oracle (Sun) make 64bit Java?, should I try OpenJDK? Is OpenJDK 64bit? Or should I plan on installing a base OS that is 32bit for a production environment, for stability? I also read that some have had success using OpenJDK.
These are the major questions that I need to figure out if my client decides to go with this software for their SCADA/HMI/OEE integration project that I’m working on.