Informix

 View Only
Expand all | Collapse all

IDS EE in Docker

  • 1.  IDS EE in Docker

    Posted Thu November 05, 2020 06:43 AM
    I'm playing around with Docker (podman) on Centos.
    I've installed IDS 14.10.FC4W1 in the container and  when I run I get:

    $ $INFORMIXDIR/bin/onstat -V
    IBM Informix Dynamic Server Version 14.10.FC4W1DE

    I used the IFMX_ENT_ED_LIC_INSTAL14.10.FC4W1.zip to install the enterprise edition. The install was a total success (according to the log file) but  the server still claims to be Dev. Edition.
    From the log:

    USER_INSTALL_DIR=/opt/informix
    Summary
    -------
    Installation: Successful.

    14 Successes
    0 Warnings
    0 NonFatalErrors
    0 FatalErrors


    I'm wandering if this is supported (running EE in Docker)?  
    Thanks in advance,
    -Snorri

    ------------------------------
    Snorri Bergmann
    ------------------------------

    #Informix


  • 2.  RE: IDS EE in Docker

    Posted Mon November 09, 2020 03:02 AM
    Hi Snorri,

    Here is the tech note saying it's supported.
    https://www.ibm.com/support/pages/node/1073580

    Regards,
    Gaurav

    ------------------------------
    Gaurav Kumar
    ------------------------------



  • 3.  RE: IDS EE in Docker

    Posted Mon November 09, 2020 03:20 AM

    Hi Snorri, we were meant to meet: Yesterday, on another channel, I was submitting the idea of sharing experiences and findings about IFMX on Docker in Production environments.
    According to some benchmarks, IFMX on Docker seems to be faster than IFMX on VM (Vmware apparently) environments. 

    Does anyone have real life stories in production about this topic ? Including eventual global performance comparisons ?

    Curious about this

    BR
    Eric



    ------------------------------
    [eric] [Vercelletto] []
    [Founder]
    [kandooerp.org]
    [Pont l'Abbé] [France]
    [+33 626 52 50 68]

    Disclaimer: My own opinions are my own opinions and do not reflect on the IIUG, nor any other organization with which I am associated either explicitly, implicitly, or by inference. Neither do those opinions reflect those of other individuals affiliated with any entity with which I am affiliated nor those of the entities themselves.
    ------------------------------



  • 4.  RE: IDS EE in Docker

    Posted Tue November 10, 2020 04:52 AM
    Hi Eric.

    Here is a doc (somewhat old) that compares performance of Docker vs. KVM.

    https://dominoweb.draco.res.ibm.com/reports/rc25482.pdf

    In my case, the overhead of a VM vs. the lightweight Docker is the main issue. No pre-allocated resources etc.

    Best regards,
    -Snorri

    ------------------------------
    Snorri Bergmann
    ------------------------------



  • 5.  RE: IDS EE in Docker

    IBM Champion
    Posted Mon November 09, 2020 04:08 AM
    Morning Snorri,

    I'd assume there should be no reason why Informix should behave anyhow differently, in this regard, in a docker environment vs. any other linux environment.
    Trying the (14.10.xC2) EE edition installer in a container running ibmcom/informix-developer-database:latest image just - persistently - turned my 14.10.FC2DE into 14.10.FC2 (surviving 'docker stop'/'docker start').

    I'm wondering what "playing around with Docker" and "I've installed IDS 14.10.FC4W1 in the container" actually means, and where in that process you've ran that edition installer.
    Are you creating your own Informix docker image? And if so, are you doing this on your own, or maybe using/following things like https://github.com/informix/informix-server-dockerfiles?

    BR,
     Andreas

    ------------------------------
    Andreas Legner
    ------------------------------



  • 6.  RE: IDS EE in Docker

    Posted Mon November 09, 2020 04:32 AM
    Thanks Andreas.

    Maybe I was not clear enough. I actually created a ticket with IBM because of this. 
    Here is what I wrote:

    I'm trying to run IDS Enterprise Edition 14.10.FC4W1 in a Docker (podman) container on Centos 8. I just pulled the default docker CentOs image (called centos).

    I've installed this on a machine called ndev and the container hostname is joaktest.

    Installation was fine and I use a volume from the host within the container. It was started with the command:

    $ podman run -it -v /data:/data --privileged --name joaktest --network host --hostname joaktest centos

    The problem is this: From the container, IDS insists it's running the DE, but from the host it claims to be the EE.
    From the host:
    [informix@ndev ~]$ echo $INFORMIXDIR
    /data/informix.14.10.FC4W1/
    [informix@ndev ~]$ onstat -V
    IBM Informix Dynamic Server Version 14.10.FC4W1


    From the container:
    [informix@joaktest ~]$ echo $INFORMIXDIR
    /data/informix.14.10.FC4W1/
    [informix@joaktest ~]$ onstat -V
    IBM Informix Dynamic Server Version 14.10.FC4W1DE

    /data is a shared directory between the host and the container.

    I run the IFMX_ENT_ED_LIC_INSTAL14.10.FC4W1.zip from the container and the logfile indicated a total success. 

    Best regards,
    -Snorri

    ------------------------------
    Snorri Bergmann
    ------------------------------



  • 7.  RE: IDS EE in Docker

    IBM Champion
    Posted Mon November 09, 2020 09:09 AM
    So the physically same installation, shared between two machines (in this case docker/podman host and container), appears as DE on one machine and EE on the other one?  Interesting ...

    Anyway, may I ask what's the point in such setup, i.e. software provided to a container from external mounted file system, rather than using the container/image for providing the software?

    ------------------------------
    Andreas Legner
    ------------------------------



  • 8.  RE: IDS EE in Docker

    Posted Mon November 09, 2020 09:32 AM

    Please check that gskit has been installed in the container.

    /usr/local/ibm/gsk8_64/bin/gsk8ver_64



    ------------------------------
    Vladimir Kolobrodov
    ------------------------------



  • 9.  RE: IDS EE in Docker

    Posted Mon November 09, 2020 10:02 AM
    Hi Vladimir.

    gskit is installed.

    [informix@joaktest tmp]$ ls -l /usr/local/ibm/gsk8_64/bin/
    total 14764
    -rwxr-xr-x. 1 root sys 15105768 Jun 28 2019 gsk8capicmd_64
    -rwxr-xr-x. 1 root sys 10032 Jun 28 2019 gsk8ver_64




    ------------------------------
    Snorri Bergmann
    ------------------------------



  • 10.  RE: IDS EE in Docker

    Posted Mon November 09, 2020 10:28 AM

    Just to confirm - no errors when executing either 

        /usr/local/ibm/gsk8_64/bin/gsk8capicmd_64 -version

    or

        /usr/local/ibm/gsk8_64/bin/gsk8ver_64

    ?

    And

        ldd /usr/local/ibm/gsk8_64/bin/gsk8capicmd_64

    does not show any missing libraries?

    GSKit install on RH creates some links too -

    /bin/ls -l /lib64/ | grep -i gsk


    lrwxrwxrwx. 1 root root 50 Jan 28 2020 libgsk8acmeidup_64.so -> /usr/local/ibm/gsk8_64/lib64/libgsk8acmeidup_64.so
    lrwxrwxrwx. 1 root root 45 Jan 28 2020 libgsk8cms_64.so -> /usr/local/ibm/gsk8_64/lib64/libgsk8cms_64.so
    lrwxrwxrwx. 1 root root 46 Jan 28 2020 libgsk8dbfl_64.so -> /usr/local/ibm/gsk8_64/lib64/libgsk8dbfl_64.so
    lrwxrwxrwx. 1 root root 46 Jan 28 2020 libgsk8drld_64.so -> /usr/local/ibm/gsk8_64/lib64/libgsk8drld_64.so
    lrwxrwxrwx. 1 root root 46 Jan 28 2020 libgsk8iccs_64.so -> /usr/local/ibm/gsk8_64/lib64/libgsk8iccs_64.so
    lrwxrwxrwx. 1 root root 46 Jan 28 2020 libgsk8kicc_64.so -> /usr/local/ibm/gsk8_64/lib64/libgsk8kicc_64.so
    lrwxrwxrwx. 1 root root 45 Jan 28 2020 libgsk8km2_64.so -> /usr/local/ibm/gsk8_64/lib64/libgsk8km2_64.so
    lrwxrwxrwx. 1 root root 44 Jan 28 2020 libgsk8km_64.so -> /usr/local/ibm/gsk8_64/lib64/libgsk8km_64.so
    lrwxrwxrwx. 1 root root 46 Jan 28 2020 libgsk8ldap_64.so -> /usr/local/ibm/gsk8_64/lib64/libgsk8ldap_64.so
    lrwxrwxrwx. 1 root root 45 Jan 28 2020 libgsk8p11_64.so -> /usr/local/ibm/gsk8_64/lib64/libgsk8p11_64.so
    lrwxrwxrwx. 1 root root 45 Jan 28 2020 libgsk8ssl_64.so -> /usr/local/ibm/gsk8_64/lib64/libgsk8ssl_64.so
    lrwxrwxrwx. 1 root root 45 Jan 28 2020 libgsk8sys_64.so -> /usr/local/ibm/gsk8_64/lib64/libgsk8sys_64.so
    lrwxrwxrwx. 1 root root 46 Jan 28 2020 libgsk8valn_64.so -> /usr/local/ibm/gsk8_64/lib64/libgsk8valn_64.so

    Depending on how it was installed - it's possible that 14.10.FC4W1 "thinks" it needs to use openssl instead of GSKit, in which case someone more familiar with this can diagnose it better.

    If you have proper mapping  of informix user between host and container, INFORMIXDIR is defined and crypto setup is OK - Informix should be able to determine the edition properly.

    Is my understanding correct - you did not actually install Informix in the container, but provided volume from host where Informix has been already installed?



    ------------------------------
    Vladimir Kolobrodov
    ------------------------------



  • 11.  RE: IDS EE in Docker

    Posted Mon November 09, 2020 12:24 PM
    Thanks Vladimir.

    The issue is solved. I created the symbolic links and now it works.

    You are right, it was preinstalled, so these links were missing on the container side.

    Thank you very much for your assistance.
    However, I've had problems in the past with the edition installer (like using the wrong version etc.) but it reported success. I thought this might be a similar issue. 

    Thanks again,
    -Snorri

    ------------------------------
    Snorri Bergmann
    ------------------------------



  • 12.  RE: IDS EE in Docker

    Posted Mon November 09, 2020 09:48 AM
    HI Andreas.

    Well, the reason I'm experimenting with this is I want to create a test instance of our main database on our production server. Rather than having two instances, I would like to isolate the instances as much as possible and I thought Docker was a good idea. 

    We are not running kvm on this server so VM'a are out of the question (and I think it does not work either from a license point of view in a VM).

    Best regards,
    -Snorri

    ------------------------------
    Snorri Bergmann
    ------------------------------