Updated from Fog v1.50 to V1.52 issue



  • Hello,

    I have recently upgraded my fog server from version 1.52 from my original version of 1.50. I am running Ubuntu server 16.04 LTS. My old installation of 1.50 was running great until the upgrade.

    Issues:

    1. When I go to the Fog IP <10.0.0.6> it now shows a generic “Index of /” page with the FOG and and HTML folder. The old version would go straight to the Fog server with just the IP address. See image below.
      alt text

    2. After the Upgrade, PCs are not seeing the PXE server. (I assume that it is issue 1 above)

    I can still access the Fog Server web panel by typing 10.0.0.6/fog. It logs in without issues and states that it is on the current version of 1.52.

    If you know a fix for this or If you need any additional information, please let me know.



  • @george1421 Thanks George. That solved my problem.



  • @george1421 Thanks for your assistance George. This resolved both issues that I was experiencing. Nice catch.


  • Moderator

    I found what the installer did incorrectly.

    This is the default config file /etc/apache2/sites-enabled/001-fog.conf.

    <VirtualHost *:80>
        <FilesMatch "\.php$">
            SetHandler "proxy:fcgi://127.0.0.1:9000/"
        </FilesMatch>
        KeepAlive Off
        ServerName 10.0.0.6
        DocumentRoot /var/www/
        RewriteEngine On
        RewriteCond %{REQUEST_METHOD} ^(TRACE|TRACK)
        RewriteRule .* - [F]
        <Directory /var/www/fog/>
            DirectoryIndex index.php index.html index.htm
            RewriteCond %{DOCUMENT_ROOT}/%{REQUEST_FILENAME} !-f
            RewriteCond %{DOCUMENT_ROOT}/%{REQUEST_FILENAME} !-d
            RewriteRule ^/(.*)$ /fog/api/index.php [QSA,L]
        </Directory>
    </VirtualHost>
    

    The closing </Directory> directive is in the wrong place. It should look like this:

    <VirtualHost *:80>
        <FilesMatch "\.php$">
            SetHandler "proxy:fcgi://127.0.0.1:9000/"
        </FilesMatch>
        KeepAlive Off
        ServerName 10.0.0.6
        DocumentRoot /var/www/
        RewriteEngine On
        RewriteCond %{REQUEST_METHOD} ^(TRACE|TRACK)
        RewriteRule .* - [F]
        <Directory /var/www/fog/>
            DirectoryIndex index.php index.html index.htm
        </Directory>
        RewriteCond %{DOCUMENT_ROOT}/%{REQUEST_FILENAME} !-f
        RewriteCond %{DOCUMENT_ROOT}/%{REQUEST_FILENAME} !-d
        RewriteRule ^/(.*)$ /fog/api/index.php [QSA,L]
    </VirtualHost>
    

    Note: I also indent corrected the rewrite rules
    If you correct your /etc/apache2/sites-enabled/001-fog.conf how I listed above FOG 1.5.2 will work correctly.


  • Moderator

    @bigsease30 I can duplicate the issue with 1.5.2 and ubuntu 16.04. Now to understand why…



  • @george1421 OK, Reinstalled everything again. Following the instructions provided. I am now looking at V1.5.2.11. Same issues are present.

    Should I switch from Ubuntu and move to CentOS?


  • Moderator

    @bigsease30 What Tom has said is that he thinks your issue was addressed in the prerelease version of 1.5.3. He would like you to install this prerelease version of 1.5.3 to see if your problems are resolved. If they are not resolved then I suspect they will hold up 1.5.3 (stable) until the devs find the root of your issue.



  • @george1421 I can re-install using this method if you think that would assist in finding the issue?


  • Moderator

    @bigsease30 Yeah, that is the tarball approach, its not as flexible as the github route. I would follow my steps to build a local fog repo and then reinstall FOG from there. That is the only way you can get hot fixes between releases.



  • @george1421 Hello George,

    I used the following steps:

    1. wget https://github.com/FOGProject/fogproject/archive/1.5.2.tar.gz (https://fogproject.org/download)
    2. tar -xzvf 1.5.2.tar.gz
    3. cd fogproject-1.5.2/bin
    4. sudo ./installfog.sh
    5. Followed all steps to completion.

  • Moderator

    If you used the tarball method, make sure your fog server has internet access and then use this process to create a local fog repo on your fog server.

    sudo -i
    git clone https://github.com/FOGProject/fogproject.git /root/fogproject
    cd /root/fogproject
    git checkout working
    cd bin
    ./installfog.sh
    

    Then when FOG 1.5.3 is released you would do this to switch back to the main release.

    cd /root/fogproject
    git checkout master
    cd bin
    ./installfog.sh
    

  • Moderator

    @bigsease30 How did you install FOG on your server? Did you download the tarball or use the preferred github method?



  • @tom-elliott Hello Tom. I am not familiar with the instructions that you provided. From looking it up I was able to find this GitHub Group but it references v1.5.1 and not the current version. Could you kindly point me in the correct direction?

    Regards,


  • Senior Developer

    @bigsease30 mind installing the working branch? There issues and most likely they’re somewhat related to how storage nodes are tested. I’ve made a few changes and also fixed an api related issue that directly handled dealing with the rewrite rules.

    cd /path/to/fog/repo
    git checkout working
    git pull
    cd bin
    ./installfog.sh -y

  • Moderator

    @bigsease30 That is really interesting turning back on apache’s php engine killed apache. FOG 1.5.0 is really slow because of many new features, the developers enabled php-fpm to speed up php execution.

    Try removing the following by commenting it out and restart apache.

       # RewriteCond %{REQUEST_METHOD} ^(TRACE|TRACK)
       # RewriteRule .* - [F]
    

    Moving back to 1.5.0 is not really an option because it has its own issues. 1.5.3 is getting ready for release. If we can figure out what is going on here we can get the fix into 1.5.3. FOG is installed against 8 major linux distributions ever day. All 8 are passing as of yesterday, so we need to understand what is unique about your 2 builds (both of you). If we can identify the root of the issue the devs will surely fix it.



  • @george1421 Adding that line essentially kills the apache server on my machine. I have reinstalled v1.52 again from a new install, verified that the server and GUI were accessible, made the change that was suggested and the server is no longer accessible. Restarting the server nor service has any effect.

    I may just go back to the v1.5.0 since for me, it seemed to be stable and worked. I am open to other suggestions that you may have and would like to try.


  • Moderator

    @bigsease30 said in Updated from Fog v1.50 to V1.52 issue:

    RewriteCond %{REQUEST_METHOD} ^(TRACE|TRACK)
    RewriteRule .* - [F]
    

    I just saw another add on that was released in 1.5.1 in your config file. If the first step I asked you to do didn’t work, revert it (you really will need pphp-fpm working) and then comment out these two lines.

        RewriteCond %{REQUEST_METHOD} ^(TRACE|TRACK)
        RewriteRule .* - [F]
    

    These rules were added to avoid a noted vulnerability attack against the apache server. These were added because of a PCI audit observation.



  • @george1421 Yes, the file exists and contains this:

    <VirtualHost :80>
    <FilesMatch “.php$”>
    SetHandler “proxy:fcgi://127.0.0.1:9000/”
    </FilesMatch>
    KeepAlive Off
    ServerName 10.1.0.111
    DocumentRoot /var/www/
    RewriteEngine On
    RewriteCond %{REQUEST_METHOD} ^(TRACE|TRACK)
    RewriteRule .
    - [F]
    <Directory /var/www/fog/>
    DirectoryIndex index.php index.html index.htm
    RewriteCond %{DOCUMENT_ROOT}/%{REQUEST_FILENAME} !-f
    RewriteCond %{DOCUMENT_ROOT}/%{REQUEST_FILENAME} !-d
    RewriteRule ^/(.*)$ /fog/api/index.php [QSA,L]
    </Directory>
    </VirtualHost>


  • Moderator

    @bigsease30 While I don’t think this is your issue there was a new feature added to 1.5.1 and 1.5.2 which turned on php-pfm (dedicated php engine). We have see this cause a problem with centos 6.9 installs, but never Debian based systems.

    In the config file you posted, I want you to edit it. Update the file match section to look like this

        <FilesMatch "\.php$">
            #SetHandler "proxy:fcgi://127.0.0.1:9000/"
            SetHandler application/x-httpd-php
        </FilesMatch>
    

    Save and then restart apache on your server. What this does is turn off the php-fpm and resumes apache’s built in php engine. I really don’t think this is the issue, but this is one of the major changes introduced in 1.5.1.



  • @george1421 said in Updated from Fog v1.50 to V1.52 issue:

    /etc/apache2/sites-enabled

    Yes George, I have confirmed the file is there. I will post the output below.

    <VirtualHost *:80>
        <FilesMatch "\.php$">
            SetHandler "proxy:fcgi://127.0.0.1:9000/"
        </FilesMatch>
        KeepAlive Off
        ServerName 10.0.0.6
        DocumentRoot /var/www/
        RewriteEngine On
        RewriteCond %{REQUEST_METHOD} ^(TRACE|TRACK)
        RewriteRule .* - [F]
        <Directory /var/www/fog/>
            DirectoryIndex index.php index.html index.htm
            RewriteCond %{DOCUMENT_ROOT}/%{REQUEST_FILENAME} !-f
            RewriteCond %{DOCUMENT_ROOT}/%{REQUEST_FILENAME} !-d
            RewriteRule ^/(.*)$ /fog/api/index.php [QSA,L]
        </Directory>
    </VirtualHost>
    <VirtualHost *:80>
        <FilesMatch "\.php$">
    
    

Log in to reply
 

361
Online

6.0k
Users

13.4k
Topics

126.2k
Posts