Bahmni 0.92 Install on CentOS 7.6 Minimal Fails

Hi @jahtoe

Could you please share the current systemd version. (after downgrade)

Thanks Santosh

Hi @bhiravabhatla

Oh I’m seeing that I missed that I need to downgrade a second time. I’ll try that. I had downgraded to 0:219-67.el7_7.1

I’ve corrected that with this installation script that installs without error however openelis is not available.

Installation Script

yum -y update
yum -y downgrade systemd.x86_64 systemd-libs.x86_64 systemd-sysv.x86_64
yum -y downgrade systemd.x86_64 systemd-libs.x86_64 systemd-sysv.x86_64
yum -y install yum-plugin-versionlock
yum versionlock systemd*
yum versionlock libgudev1-219-67.el7
yum versionlock list 


sudo dd if=/dev/zero of=/swapfile bs=1024 count=4096k
chmod 600 /swapfile
mkswap /swapfile
swapon /swapfile
swapon -s
sysctl vm.swappiness=10
echo 'vm.swappiness = 10' >> /etc/sysctl.conf
echo '/swapfile swap swap defaults 0 0' | tee --append /etc/fstab


#Prerequisite for the fresh installation of Bahmni
yum -y install https://kojipkgs.fedoraproject.org//packages/zlib/1.2.11/18.fc30/x86_64/zlib-1.2.11-18.fc30.x86_64.rpm


# Install the bahmni command line program (Choose the version you want).
yum -y install https://dl.bintray.com/bahmni/rpm/rpms/bahmni-installer-0.92-142.noarch.rpm

# Confirm that the bahmni command is correctly installed (you should see a help message for the command)
bahmni --help

# Now setup a configuration file for bahmni command in /etc/bahmni-installer.
curl -L https://tinyurl.com/yyoj98df >> /etc/bahmni-installer/setup.yml

# Confirm the contents of the file. It should look like this file: (https://goo.gl/R8ekg5)

sed -i 's/Asia/Etc/g' /etc/bahmni-installer/setup.yml
sed -i 's/Kolkata/GMT/g' /etc/bahmni-installer/setup.yml
cat /etc/bahmni-installer/setup.yml

# The above setup.yml, has a timezone entry. You can change it to suit your timezone if you like. For valid options
# please read this document: https://bahmni.atlassian.net/wiki/display/BAH/List+Of+Configurable+Installation+Variables

# Set the inventory file name to local in BAHMNI_INVENTORY environment variable. This way you won't need to use the '-i local' switch every time you use the 'bahmni' command
#You can also configure custom inventory file instead of local.
echo "export BAHMNI_INVENTORY=local" >> ~/.bashrc
source ~/.bashrc

# Now fire the installer
bahmni install 

Result

PLAY RECAP ***********************************************************************************************************************************

localhost : ok=298 changed=202 unreachable=0 failed=0

yum list installed | grep bahmni

atomfeed-console.noarch               1.1-1                      @bahmni        
bahmni-emr.noarch                     0.92-183                   @bahmni        
bahmni-erp.noarch                     0.92-133                   @bahmni        
bahmni-erp-connect.noarch             0.92-133                   @bahmni        
bahmni-implementer-interface.noarch   0.92-30                    @bahmni        
bahmni-installer.noarch               0.92-142                   @/bahmni-installer-0.92-142.noarch
bahmni-lab.noarch                     0.92-54                    @bahmni        
bahmni-lab-connect.noarch             0.92-183                   @bahmni        
bahmni-reports.noarch                 0.92-25                    @bahmni        
bahmni-web.noarch                     0.92-183                   @bahmni  

systemctl status bahmni-erp-connect.service

● bahmni-erp-connect.service - (null)
   Loaded: loaded (/etc/rc.d/init.d/bahmni-erp-connect; bad; vendor preset: disabled)
   Active: inactive (dead) since Wed 2019-12-04 11:20:43 GMT; 3min 34s ago
     Docs: man:systemd-sysv-generator(8)

Dec 04 11:20:43 G2 systemd[1]: Starting (null)...
Dec 04 11:20:43 G2 bahmni-erp-connect[17169]: Starting bahmni-erp-connect
Dec 04 11:20:43 G2 su[17180]: (to bahmni) root on none
Dec 04 11:20:43 G2 systemd[1]: Permission denied while opening PID file or unsafe symlink chain: /var/run/bahmni-erp-connect/bahmn...nnect.pid
Dec 04 11:20:43 G2 bahmni-erp-connect[17185]: Terminating bahmni-erp-connect
Dec 04 11:20:43 G2 systemd[1]: Started (null).

journalctl -xe

Dec 04 11:23:24 G2 yum[21988]: Installed: perl-DBD-Pg-2.19.3-4.el7.x86_64
Dec 04 11:23:24 G2 yum[21988]: Installed: centos-release-scl-2-3.el7.centos.noarch
Dec 04 11:23:24 G2 yum[21988]: Installed: perl-JSON-PP-2.27202-2.el7.noarch
Dec 04 11:23:24 G2 yum[21988]: Installed: perl-JSON-2.59-2.el7.noarch
Dec 04 11:23:26 G2 ansible-command[22054]: Invoked with warn=True executable=None _uses_shell=True _raw_params=wget -q -O - \https://github.co
Dec 04 11:23:26 G2 ansible-command[22054]: [WARNING] Consider using get_url or uri module rather than running wget
Dec 04 11:23:28 G2 ansible-file[22078]: Invoked with directory_mode=None force=False remote_src=None path=/usr/bin/pgbackrest owner=None follo
Dec 04 11:23:29 G2 ansible-file[22096]: Invoked with directory_mode=None force=False remote_src=None path=/usr/bin/pg_backrest owner=None foll
Dec 04 11:23:29 G2 ansible-file[22112]: Invoked with directory_mode=None force=False remote_src=None path=/usr/lib/perl5/BackRest owner=None f
Dec 04 11:23:29 G2 ansible-file[22128]: Invoked with directory_mode=None force=False remote_src=None path=/usr/share/perl5/BackRest owner=None
Dec 04 11:23:30 G2 ansible-file[22144]: Invoked with directory_mode=None force=False remote_src=None path=/usr/lib/perl5/pgbackrest owner=None
Dec 04 11:23:30 G2 ansible-file[22161]: Invoked with directory_mode=None force=False remote_src=None path=/usr/share/perl5/pgBackRest owner=No
Dec 04 11:23:30 G2 ansible-command[22178]: Invoked with warn=True executable=None _uses_shell=False _raw_params=cp -R "/home/bahmni/pgbackrest
Dec 04 11:23:30 G2 ansible-command[22197]: Invoked with warn=True executable=None _uses_shell=True _raw_params=find /usr/share/perl5/pgBackRes
Dec 04 11:23:31 G2 ansible-command[22217]: Invoked with warn=True executable=None _uses_shell=True _raw_params=find /usr/share/perl5/pgBackRes
Dec 04 11:23:31 G2 ansible-command[22238]: Invoked with warn=True executable=None _uses_shell=True _raw_params=cp -R "/home/bahmni/pgbackrest-
Dec 04 11:23:31 G2 ansible-file[22259]: Invoked with directory_mode=None force=False remote_src=None path=/var/log/pgbackrest owner=postgres f
Dec 04 11:23:32 G2 ansible-file[22277]: Invoked with directory_mode=None force=False remote_src=None path=/var/lib/pgbackrest owner=postgres f
Dec 04 11:23:32 G2 ansible-file[22295]: Invoked with directory_mode=None force=False remote_src=None path=/etc/pgbackrest.conf owner=postgres 
Dec 04 11:23:32 G2 ansible-stat[22314]: Invoked with checksum_algorithm=sha1 get_checksum=True path=/etc/pgbackrest.conf checksum_algo=sha1 fo
Dec 04 11:23:33 G2 ansible-copy[22326]: Invoked with directory_mode=None force=True remote_src=None owner=None follow=False local_follow=None 
Dec 04 11:23:33 G2 ansible-systemd[22344]: Invoked with no_block=False name=postgresql-9.6 enabled=None daemon_reload=False state=restarted us
Dec 04 11:23:33 G2 systemd[1]: Stopping PostgreSQL 9.6 database server...
-- Subject: Unit postgresql-9.6.service has begun shutting down
-- Defined-By: systemd
-- Support: http://lists.freedesktop.org/mailman/listinfo/systemd-devel
-- 
-- Unit postgresql-9.6.service has begun shutting down.
Dec 04 11:23:37 G2 systemd[1]: Stopped PostgreSQL 9.6 database server.
-- Subject: Unit postgresql-9.6.service has finished shutting down
-- Defined-By: systemd
-- Support: http://lists.freedesktop.org/mailman/listinfo/systemd-devel
-- 
-- Unit postgresql-9.6.service has finished shutting down.
Dec 04 11:23:37 G2 systemd[1]: Starting PostgreSQL 9.6 database server...
-- Subject: Unit postgresql-9.6.service has begun start-up
...skipping...
Dec 04 11:23:24 G2 yum[21988]: Installed: centos-release-scl-2-3.el7.centos.noarch
Dec 04 11:23:24 G2 yum[21988]: Installed: perl-JSON-PP-2.27202-2.el7.noarch
Dec 04 11:23:24 G2 yum[21988]: Installed: perl-JSON-2.59-2.el7.noarch
Dec 04 11:23:26 G2 ansible-command[22054]: Invoked with warn=True executable=None _uses_shell=True _raw_params=wget -q -O - \https://github.co
Dec 04 11:23:26 G2 ansible-command[22054]: [WARNING] Consider using get_url or uri module rather than running wget
Dec 04 11:23:28 G2 ansible-file[22078]: Invoked with directory_mode=None force=False remote_src=None path=/usr/bin/pgbackrest owner=None follo
Dec 04 11:23:29 G2 ansible-file[22096]: Invoked with directory_mode=None force=False remote_src=None path=/usr/bin/pg_backrest owner=None foll
Dec 04 11:23:29 G2 ansible-file[22112]: Invoked with directory_mode=None force=False remote_src=None path=/usr/lib/perl5/BackRest owner=None f
Dec 04 11:23:29 G2 ansible-file[22128]: Invoked with directory_mode=None force=False remote_src=None path=/usr/share/perl5/BackRest owner=None
Dec 04 11:23:30 G2 ansible-file[22144]: Invoked with directory_mode=None force=False remote_src=None path=/usr/lib/perl5/pgbackrest owner=None
Dec 04 11:23:30 G2 ansible-file[22161]: Invoked with directory_mode=None force=False remote_src=None path=/usr/share/perl5/pgBackRest owner=No
Dec 04 11:23:30 G2 ansible-command[22178]: Invoked with warn=True executable=None _uses_shell=False _raw_params=cp -R "/home/bahmni/pgbackrest
Dec 04 11:23:30 G2 ansible-command[22197]: Invoked with warn=True executable=None _uses_shell=True _raw_params=find /usr/share/perl5/pgBackRes
Dec 04 11:23:31 G2 ansible-command[22217]: Invoked with warn=True executable=None _uses_shell=True _raw_params=find /usr/share/perl5/pgBackRes
Dec 04 11:23:31 G2 ansible-command[22238]: Invoked with warn=True executable=None _uses_shell=True _raw_params=cp -R "/home/bahmni/pgbackrest-
Dec 04 11:23:31 G2 ansible-file[22259]: Invoked with directory_mode=None force=False remote_src=None path=/var/log/pgbackrest owner=postgres f
Dec 04 11:23:32 G2 ansible-file[22277]: Invoked with directory_mode=None force=False remote_src=None path=/var/lib/pgbackrest owner=postgres f
Dec 04 11:23:32 G2 ansible-file[22295]: Invoked with directory_mode=None force=False remote_src=None path=/etc/pgbackrest.conf owner=postgres 
Dec 04 11:23:32 G2 ansible-stat[22314]: Invoked with checksum_algorithm=sha1 get_checksum=True path=/etc/pgbackrest.conf checksum_algo=sha1 fo
Dec 04 11:23:33 G2 ansible-copy[22326]: Invoked with directory_mode=None force=True remote_src=None owner=None follow=False local_follow=None 
Dec 04 11:23:33 G2 ansible-systemd[22344]: Invoked with no_block=False name=postgresql-9.6 enabled=None daemon_reload=False state=restarted us
Dec 04 11:23:33 G2 systemd[1]: Stopping PostgreSQL 9.6 database server...
-- Subject: Unit postgresql-9.6.service has begun shutting down
-- Defined-By: systemd
-- Support: http://lists.freedesktop.org/mailman/listinfo/systemd-devel
-- 
-- Unit postgresql-9.6.service has begun shutting down.
Dec 04 11:23:37 G2 systemd[1]: Stopped PostgreSQL 9.6 database server.
-- Subject: Unit postgresql-9.6.service has finished shutting down
-- Defined-By: systemd
-- Support: http://lists.freedesktop.org/mailman/listinfo/systemd-devel
-- 
-- Unit postgresql-9.6.service has finished shutting down.
Dec 04 11:23:37 G2 systemd[1]: Starting PostgreSQL 9.6 database server...
-- Subject: Unit postgresql-9.6.service has begun start-up
-- Defined-By: systemd
-- Support: http://lists.freedesktop.org/mailman/listinfo/systemd-devel
-- 
-- Unit postgresql-9.6.service has begun starting up.
Dec 04 11:23:37 G2 postmaster[22362]: LOG:  redirecting log output to logging collector process
Dec 04 11:23:37 G2 postmaster[22362]: HINT:  Future log output will appear in directory "pg_log".
Dec 04 11:23:37 G2 systemd[1]: Started PostgreSQL 9.6 database server.
-- Subject: Unit postgresql-9.6.service has finished start-up
-- Defined-By: systemd
-- Support: http://lists.freedesktop.org/mailman/listinfo/systemd-devel
-- 
-- Unit postgresql-9.6.service has finished starting up.
-- 
-- The start-up result is done.
Dec 04 11:23:37 G2 sudo[22388]:     root : TTY=pts/0 ; PWD=/opt/bahmni-installer/bahmni-playbooks ; USER=postgres ; COMMAND=/bin/sh -c echo BE
Dec 04 11:23:37 G2 sudo[22388]: pam_unix(sudo:session): session opened for user postgres by root(uid=0)
Dec 04 11:23:37 G2 ansible-command[22392]: Invoked with warn=True executable=None _uses_shell=True _raw_params=pgbackrest --stanza=bahmni-post
Dec 04 11:23:39 G2 sudo[22388]: pam_unix(sudo:session): session closed for user postgres

Thanks for your support Regards Jahtoe

1 Like

we are trying to get a patch out next week, but in the meantime, you can do the following

  1. edit /etc/init.d/bahmni-erp-connect
  2. change the start() function … and the line

“su -s /bin/bash $BAHMNI_ERP_CONNECT_USER $BAHMNI_ERP_CONNECT_RUN” to runuser -u $BAHMNI_ERP_CONNECT_USER $BAHMNI_ERP_CONNECT_RUN"

  1. save and do

systemctl daemon-reload

  1. restart service

service bahmni-erp-connect start

Similar things need to do be done for bahmni-lab, if you are facing starting “bahmni-lab” service as well.

1 Like

Okay thanks very much for the update.

I made those changes and the lab interface is now running, however the clinical service interface continues to not open.

https://167.99.91.209/

Adjusted start function

start(){
    pid=$(bahmni_erp_connect_pid)
    if [ -n "$pid" ]
    then
        echo -e "\e[00;31mService bahmni-erp-connect is already running (pid: $pid)\e[00m"
    else
        # Start bahmni-erp-connect
        create_dirs
        echo -e "\e[00;32mStarting bahmni-erp-connect\e[00m"
        if [ `user_exists $BAHMNI_ERP_CONNECT_USER` = "1" ]  && [ "$CUR_USER" != "$BAHMNI_ERP_CONNECT_USER" ] ;
        then
            	runuser -u $BAHMNI_ERP_CONNECT_USER $BAHMNI_ERP_CONNECT_RUN
        else
                sh $BAHMNI_ERP_CONNECT_RUN
        fi
  fi
  exit 0
}

Let me know your thoughts

Firewall maybe?

Hi @bhiravabhatla,

Also I note that openMRS, which I also converted to runuser -u is generating the following error

07-12-2019 11:14:00 [ERROR] PanelController - No panel concept found with uuid 12f404d7-7615-412d-abb8-9273608c12e5
org.openmrs.module.emrapi.encounter.exception.ConceptNotFoundException: No panel concept found with uuid 12f404d7-7615-412d-abb8-9273608c12e5
	at org.bahmni.module.referencedata.web.controller.PanelController.getPanel(PanelController.java:33)

I see that’s a known error: https://talk.openmrs.org/t/error-in-installing-bahmni-0-92-in-vagrant-box/24884/36

After reading that post, I find it odd that the openmrs was working for me prior to downgrading the systemd and not after. However downgrading solved the other error during installation process.

Hi @mstreeton unless the script install another firewall, there is no firewall setup at the moment on this test installation.

Having said all that I suppose i should wait for the official patch at this point. Regards Jahtoe

I found this thread very useful to getting my system up and running, but I am still facing a problem: My system: 0.92 on a Fresh CentOS 7.6 Minimal

I downgraded systemd and was able to get the bahmni install process to complete and the everything comes up.

HOWEVER, upon rebooting the machine, the services all show that they are up, but the webpages are inaccessible until I run bahmni install again (Page Timed Out).

I’ve tried bahmni stop and bahmni start, I’ve tried manually stopping and starting the services. None of that brings the web interface up. Please Help!

Immediately after reboot:

bahmni ~]# service --status-all
atomfeed-console is running with pid: 3570
Service bahmni-erp-connect is running with pid: 3526
Service bahmni-lab is running with pid: 3527
Service bahmni-reports is running with pid: 3529
Checking jexec statusnetconsole module not loaded
Configured devices:
lo ens160
Currently active devices:
lo ens160
mkdir: cannot create directory ‘odoo’: File exists
odoo-server is stopped
Service openmrs is running with pid: 3528

How long do you wait for it after boot? I was seeing a good 5 minutes on a vps when testing this, some cases even nearing 10 minutes.

Yes indeed. When you monitoring the cpu usage immediately after system up, it’s rise to 100% quickly for a couple of minutes. So my suggestion is, wait for the initialization of all the service to complete, at least the cpu usage was not 100% anymore, especailly if you put all bahmni component on a single machine.

Thanks. I hadn’t thought of that, but alas, that is not the problem. I wrote that message last night, and went to bed. The server has been running for 8 hours and the webpages are still reading “The connection has timed out”

When I re-run the install script the webpages come up within 1 minute of the script finishing.

I think this has to do with the init.d scripts. I edited all the ones I could to use runuser -r instead of su -s /bin/bash, but maybe there is one for the web server component that is still not running properly?

I’m a bit confused by the overall problem with the 0.92 installer on 7.6 minimal. Is it a problem with systemd version? or is it a problem with how the the scripts are being run as different users? or both? or …?

What logs can I post to help debug?

I think I found it!

My default CentOS 7.6 minimal install was running firewalld.service, but after running installer the firewall is being stopped but not disabled. I learned this by comparing the output of

systemctl status

from a fresh reboot and after running bahmni install

So, I added http and https to the firewall rule and I can access the webpages.
I guess alternatively I should disable the firewall, as I have a network level firewall.

If I leave the firewall open, are there any other ports or services that I need to open? Is there a way to tweak the bahmni install scripts to properly disable (or configure) the firewall?

List of ports depending on what you have:

Hi all. I have try to install Bahmni 0.92 on my CentOS 7.7 VPS and it’s fail at some point in the installation. here is the error:

Can someone help me?

1 Like

Refer to my post here >> Bahmni 0.92 ,pgdg-centos92-9.2-7.noarch.rpm deprecated.

pgdg-centos92-9.2-7.noarch.rpm is deprecated ,

override the default postgress rpm repo name in
/etc/bahmni-installer/setup.yml
with the latest available release

postgres_repo_rpm_name: pgdg-redhat-repo-latest.noarch.rpm

Thanks you. I already did that, and it’s work. But i get another error now: odoo service failed to start. I had already try what @bhiravabhatla suggested but it still not working.

Try this solution as shared by @mupagasi

please i need help installing bahmni 0.92 on digital oceanAnnotation 2020-05-31 065536

Hey @smokeakag Were you able to solve the issue?

Dear Bahmni Team,

We were able to setup bahmni 0.92 a month ago. However, now we are getting this issue (exact log as shared by @smokeakag ) while installing bahmni 0.92 on cent os… Could you please help us with this.

Kindly post the errorlog or the error screenshot for us to investigate this further.

@mksd Could you please help with this. The error log is as below