Uploaded image for project: 'Ambari'
  1. Ambari
  2. AMBARI-9227

ambari-server startup with non-root user causes a ulimit error Operation not permitted.

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Open
    • Minor
    • Resolution: Unresolved
    • None
    • None
    • ambari-server
    • None

    Description

      When you are starting ambari-server with non-root users (you can set so during amari-server setup (1)), it attempts to modify ulimit -n (the max open files to ) 10000 by default, you get a permission error. (2)

      Bad thing is the server process is started "successfully" without actually effecting the max number of open file descriptor. (some non user friendly error is shown though)

      Our customers tend to run applications with an non-root user so we'd like to clean up here a bit.

      The challenge is, ulimit is a bash command like 'cd', and only root can execute. See (3) to find ulimit behavior.

      My possible solution is
      1. if root user, do the current behavior
      2. if non-root, then the startup checks ulimit -a and if the current max number meets the requirement, if it does not meet, the server startup halts. End users have to fix through limits.conf.

      Let me know if this works.

      (1) setup to customize ambari daemon user

      bash-4.1# ambari-server setup
      Using python  /usr/bin/python2.6
      Setup ambari-server
      Checking SELinux...
      SELinux status is 'disabled'
      Customize user account for ambari-server daemon [y/n] (n)? y
      Enter user account for ambari-server daemon (root):pivotal
      

      (2) permission error

      bash-4.1# ambari-server start
      Using python  /usr/bin/python2.6
      Starting ambari-server
      Ambari Server running with 'root' privileges.
      Organizing resource files at /var/lib/ambari-server/resources...
      Server PID at: /var/run/ambari-server/ambari-server.pid
      Server out at: /var/log/ambari-server/ambari-server.out
      Server log at: /var/log/ambari-server/ambari-server.log
      Waiting for server start....sh: line 0: ulimit: open files: cannot modify limit: Operation not permitted
      ................
      Ambari Server 'start' completed successfully.
      

      (3)

      [root@node1 init.d]# where ulimit
      -bash: where: command not found
      [root@node1 init.d]# sudo ulimit
      sudo: ulimit: command not found
      [root@node1 init.d]# ulimit
      unlimited
      

      Attachments

        Activity

          People

            Unassigned Unassigned
            jaoki Jun Aoki
            Votes:
            0 Vote for this issue
            Watchers:
            4 Start watching this issue

            Dates

              Created:
              Updated: