Problems with Monitor and DNS since upgrade

Discussion in 'General' started by drapsag, Feb 25, 2012.

  1. drapsag

    drapsag New Member

    Running ISPConfig 3.0.4.3 on two servers (master/slave). Both servers are running Squeeze and are currently up to date.

    Since upgrading from 3.0.4.2 to 3.0.4.3 my system monitor quit updating. Nothing updates at all in any of the system monitor tab. Might be related to the following bug:

    http://bugtracker.ispconfig.org/index.php?do=details&task_id=2054

    So, I will assume it is and leave it at that until the next update.

    More importantly, since the update, changes in ISPConfig to any DNS Zone will not update the zone files on either server. I have to manually go into both servers and add the changes by hand and restart BIND9 to affect the changes.

    Everything had been working fine before the update and everything else is working fine but not being unable to add DNS records in ISPConfig3 is a pain. I have changed nothing in either server configuration wise in quite a while.
     
    Last edited: Feb 25, 2012
  2. falko

    falko Super Moderator Howtoforge Staff

    I've added this to our bugtracker, so we will check that.
     
  3. till

    till Super Moderator Staff Member ISPConfig Developer

    DNS updates work fine here with 3.0.4.3, on new installed servers as well as on updated systems. You might want to check whats wrong on your servers by debugging the server process:

    http://www.faqforge.com/linux/debugging-ispconfig-3-server-actions-in-case-of-a-failure/
     
  4. drapsag

    drapsag New Member

    The only thing that shows up in the Debug log in both ISPConfig and on the command line is:

    There is already an instance of server.php running. Exiting.

    This is in both server's logs and command line and it happens over and over again.
     
  5. till

    till Super Moderator Staff Member ISPConfig Developer

    Delete the ispconfig lock file and run the command again:

    rm -f /usr/local/ispconfig/server/temp/.ispconfig_lock

    and then run

    /usr/local/ispconfig/server/server.sh
     
  6. drapsag

    drapsag New Member

    Ok, that worked. Sort of.

    Now when I run the server.sh from a command line, this commits all the changes that have been queued up in the Jobqueue, so that's good. There are no errors.

    But, when I make more changes in the panel, they stay in the Jobqueue uncommitted until I go back into the command line and run the server.sh command again. I don't see any errors in the System-Log nor do I get any errors when I run the command from the command line.

    And, my System Monitor is still not working. No updates since I upgraded to 3.0.4.3 on the 13th of Feb.
     
  7. till

    till Super Moderator Staff Member ISPConfig Developer

    This indicates that cron is not working on your server as the server.sh script is normally executed by cron once a minute. Please check that cron is installed and started and that you enabled the cronjob in the root crontab again after your tests.
     
  8. drapsag

    drapsag New Member

    cron is running.

    service cron status on both servers gives me:

    Checking periodic command scheduler...done (running).

    The cronjob is (re)enabled in crontab.

    Still no updates and jobs sit in the Jobqueue in ISPConfig.

    Not sure what to do from here.
     
  9. till

    till Super Moderator Staff Member ISPConfig Developer

    Check the syslog in /var/log, if cron is running correctly, you should see a record once a minute about the excution of the ispconfig server.sh cronjob. If you dont see them, then you have a problem with cron as ispconfig works correctly when you execute it manually.
     
  10. drapsag

    drapsag New Member

    When I tail the syslog, I can see cron running the server.sh shell every minute with the following message:

    There is already an instance of server.php running. Exiting.

    If I rm the lock file, the script will run from the command line over and over again but when I add a new job in ISPconfig, it still sits in the Jobqueue.

    Then when I ssh back into the command line and try to run the script, I get the same error: There is already an instance of server.php running. Exiting.

    It's like the script isn't removing the lock file.
     
  11. drapsag

    drapsag New Member

    Any ideas?

    It's still not working. The ISPConfig server.sh script is not removing the lock file after it runs unless I run it from a command prompt.

    If I remove the file manually, it will run one time from the panel and not again. I keep getting "There is already an instance of server.php running. Exiting." in the System Log every minute (which means cron is running the script every minute like it's supposed to). This is happening on both of my servers. They are both running Squeeze and are up to date. This happened right after the upgrade to ISPConfig 3.0.4.3 but I also did some other updates as well on both servers (the usual apt-get update, apt-get upgrade) at the same time. My systems were working perfectly up to then.
     
  12. till

    till Super Moderator Staff Member ISPConfig Developer

    - Is this a multiserver or single server system?
    - If its a multiserver system: is /var/vmail a local drive or a nfs or cluster filesystem?
    - Do you use courier or imap?
     
  13. drapsag

    drapsag New Member

    2 Servers. One server (the master) runs Web, DNS, File and DB. The Second server runs Mail and DNS only.

    /var/vmail is on a local drive.

    We use Dovecot.
     
  14. till

    till Super Moderator Staff Member ISPConfig Developer

    - How many gigabytes of email do you have approx in /var/vmail?
    - Please post the dovecot.conf file.
     
  15. drapsag

    drapsag New Member

    /var/vmail has 2.7G

    Here is dovecot.conf:

    ## ISPConfig3 Template file.
    ## This file was installed by ISPConfig3
    ## It will be replaced if ISPConfig3 is updated.

    ## Dovecot configuration file
    base_dir = /var/run/dovecot/

    protocols = imap imaps pop3 pop3s
    disable_plaintext_auth = no
    log_timestamp = "%Y-%m-%d %H:%M:%S "

    # ssl_cert_file = /etc/ssl/_.my-domain.tld/_.my-domain.tld.crt
    # ssl_key_file = /etc/ssl/_.my-domain.tld/_.my-domain.tld.key

    ssl_cert_file = /etc/postfix/smtpd.cert
    ssl_key_file = /etc/postfix/smtpd.key

    mail_privileged_group = mail

    login_greeting = ISPConfig3 IMAP server ready...

    ## IMAP specific settings
    protocol imap {
    mail_executable = /usr/lib/dovecot/rawlog /usr/lib/dovecot/imap
    mail_plugins = quota imap_quota
    }

    ## POP3 specific settings
    protocol pop3 {
    mail_executable = /usr/lib/dovecot/rawlog /usr/lib/dovecot/pop3
    pop3_uidl_format = %08Xu%08Xv
    mail_plugins = quota
    }

    ## LDA specific settings
    protocol lda {
    # Address to use when sending rejection mails.
    postmaster_address = [email protected]

    # Support for dynamically loadable plugins. mail_plugins is a space separated
    # list of plugins to load.
    mail_plugin_dir = /usr/lib/dovecot/modules/lda

    # UNIX socket path to master authentication server to find users.
    auth_socket_path = /var/run/dovecot/auth-master

    # Enabling Sieve plugin for server-side mail filtering
    mail_plugins = sieve quota
    }


    ## Plugin settings
    plugin {
    quota = dict:user::file:/var/vmail/%d/%n/.quotausage
    # Because the mail quota is called in the user query
    # the maildir quota does not need to be set.
    # You do not need: quota = maildir

    sieve=/var/vmail/%d/%n/.sieve
    }


    ## Authentication processes

    # Executable location
    #auth_executable = /usr/lib/dovecot/dovecot-auth
    auth default {
    mechanisms = plain login

    # SQL database <doc/wiki/AuthDatabase.SQL.txt>
    passdb sql {
    # Path for SQL configuration file
    args = /etc/dovecot/dovecot-sql.conf
    }

    # new quota support:
    userdb prefetch {
    }

    userdb sql {
    args = /etc/dovecot/dovecot-sql.conf
    }


    ## dovecot-lda specific settings
    ##
    socket listen {
    master {
    path = /var/run/dovecot/auth-master
    mode = 0600
    user = vmail # User running Dovecot LDA
    #group = vmail # Or alternatively mode 0660 + LDA user in this group
    }
    client {
    path = /var/spool/postfix/private/auth
    mode = 0660
    user = postfix
    group = postfix
    }
    }

    }

    mail_location = maildir:/var/vmail/%d/%n/Maildir

    mail_uid = 5000
    mail_gid = 5000
     
  16. till

    till Super Moderator Staff Member ISPConfig Developer

    Thats ok. May you please pos the ls -la output of a mialdir, like:

    ls -la /var/vmail/domain.tld/user/
     
  17. drapsag

    drapsag New Member

    total 24
    drwxr-xr-x 3 vmail vmail 4096 Mar 7 07:58 .
    drwxr-xr-x 10 vmail vmail 4096 Apr 26 2011 ..
    drwx------ 9 vmail vmail 4096 Mar 7 08:03 Maildir
    -rw------- 1 vmail vmail 52 Mar 7 07:58 .quotausage
    -rw-r--r-- 1 root root 48 Apr 26 2011 .sieve
    -rw-r--r-- 1 vmail vmail 96 May 9 2011 .sieve.svbin
     
  18. till

    till Super Moderator Staff Member ISPConfig Developer

    Thats all ok, so its no problem with a long running statistics job.

    Seems as if the php process is somehow dying when run as cronjob so that the lock file cant be removed. Do you get any errors in the ispconfig cron log file (in /var/log/ispconfig )
     
  19. drapsag

    drapsag New Member

    Just a couple of warnings:

    PHP Warning: mysql_connect(): Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2) in /usr/local/ispconfig/server/lib/classes/db_mysql.inc.php on line 78
    PHP Warning: mysql_errno() expects parameter 1 to be resource, boolean given in /usr/local/ispconfig/server/lib/classes/db_mysql.inc.php on line 63
    PHP Warning: mysql_error() expects parameter 1 to be resource, boolean given in /usr/local/ispconfig/server/lib/classes/db_mysql.inc.php on line 64
    PHP Warning: mysql_connect(): Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2) in /usr/local/ispconfig/server/lib/classes/db_mysql.inc.php on line 78
    PHP Warning: mysql_errno() expects parameter 1 to be resource, boolean given in /usr/local/ispconfig/server/lib/classes/db_mysql.inc.php on line 63
    PHP Warning: mysql_error() expects parameter 1 to be resource, boolean given in /usr/local/ispconfig/server/lib/classes/db_mysql.inc.php on line 64
    PHP Warning: mysql_connect(): Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2) in /usr/local/ispconfig/server/lib/classes/db_mysql.inc.php on line 78
    PHP Warning: mysql_errno() expects parameter 1 to be resource, boolean given in /usr/local/ispconfig/server/lib/classes/db_mysql.inc.php on line 63
    PHP Warning: mysql_error() expects parameter 1 to be resource, boolean given in /usr/local/ispconfig/server/lib/classes/db_mysql.inc.php on line 64

    I do have this over and over again in cron.log:

    repquota: Cannot open quotafile //aquota.group: No such file or directory
    repquota: Cannot open quotafile //aquota.user: No such file or directory

    Not sure if that's related.
     
    Last edited: Mar 7, 2012
  20. till

    till Super Moderator Staff Member ISPConfig Developer

    I'am a bit astonished about the line numbers in the error messages as they do not match with the line numbers of the file from 3.0.4.3. May you please post line 63 from the file /usr/local/ispconfig/server/lib/classes/db_mysql.inc.php
     

Share This Page