Storage Nodes & Disk Info Pie Chart
-
Thanks for that. It appears there is an issue connecting to the database. I thought I had set the database to use “root” w/no password. No matter what combination of user/pass I try I get access denied. How do I go about fixing this?
Here is the relevant section from Config.class.php:
/** * db_settings() * Defines the database settings for FOG * @return void */ private static function db_settings() { define('DATABASE_TYPE', 'mysql'); // mysql or oracle define('DATABASE_HOST', 'xxx.xxx.xxx.xxx'); define('DATABASE_NAME', 'fog'); define('DATABASE_USERNAME', 'root'); define('DATABASE_PASSWORD', ''); }
-
@Neil-Underwood It’s the config of your Storage Node ?
-
No, sorry. This is the config of the mysql server on the master. However they are identical on both master and node.
Except for the host IP address. The master uses ‘localhost’ -
@Neil-Underwood On each server you can connect to your Mysql with the root user without password ?
-
I’ve only got the one server, but yes, I can connect to the database locally as the root user, no password.
-
Try this:
mysql -u root -h <IPOFFOGSERVER> fog
-
These machines are all on different subnets and are communicating over an MPLS network + VPN. The subnets are being advertised by a Meraki MX80 firewall at the same location as the server and are all part of one big VLAN, in a sense.
I notice when I try:
mysql -u root -h <IPOFFOGSERVER> fog
it appends the local IP address to the username.sradmin@mid-fog-node ~ $ mysql -u root -h 192.168.xxx.200 fog ERROR 1045 (28000): Access denied for user 'root'@'192.168.yyy.200' (using password: NO)
Could this be causing the authentication failure?
-
And you need to look at turning off bind address for that other eye peas can communicate to your SQL Server
-
@Neil-Underwood said:
These machines are all on different subnets and are communicating over an MPLS network + VPN. The subnets are being advertised by a Meraki MX80 firewall at the same location as the server and are all part of one big VLAN, in a sense.
I notice when I try:
mysql -u root -h <IPOFFOGSERVER> fog
it appends the local IP address to the username.sradmin@mid-fog-node ~ $ mysql -u root -h 192.168.xxx.200 fog ERROR 1045 (28000): Access denied for user 'root'@'192.168.yyy.200' (using password: NO)
Could this be causing the authentication failure?
The MySQL database is only on the FOG server (sorry for my crap messages to check if node reply to MySQL requests)
Now, if you use MPLS it’s layer 2 network, ans there is nothing that drop your traffic…
If you can not connect the MySQL server from node storage, you have a network restriction in your MySQL server configuration.
-
OK. I believe I have enough info now to straighten this out. It definitely appears that I need to add some GRANTS. Thank you for pointing me in the right direction. SQL is very foreign to me. I will return once I have fixed this to share my final solution. Thanks guys.
-
Whoa boy did I muck this up. Somehow I managed to get myself locked out of the web interface, only to be met with the schema updater and a failure to update anything from there. Not sure exactly what I did to piss it off, but I’m back to where I started now. I dumped my current mysql database, completely removed FOG ( except for images ), reinstalled FOG, then re-imported the database and I’m back up.
I can most definitely log in to the mysql database from the storage nodes now, but I’m still not getting any disk info. At this point I think I’m OK with that. That was 3 hours of panic that I do not wish to encounter again. Of course this all had to happen on the day we received a dozen new PC’s, just to make it more stressful.
So to recap:
FTP access - check
MySQL access - check
Disk Info - NopeTime for some sleep.
-
@Neil-Underwood The fix is very simple. All you really need to do is edit the my.cnf file in /etc/mysql/my.cnf. And comment the bind-address line with the # symbol. Once commented and saved, restart the mysql service. That should be it.
-
@Tom-Elliott said:
@Neil-Underwood The fix is very simple. All you really need to do is edit the my.cnf file in /etc/mysql/my.cnf. And comment the bind-address line with the # symbol. Once commented and saved, restart the mysql service. That should be it.
For me, it’s normally two part… Maybe I was doing it wrong the whole time?
GRANT ALL PRIVILEGES ON . TO ‘fog’@‘%’ IDENTIFIED BY ‘PassHere’ WITH GRANT OPTION;
and inside my.cnf, I set
bind-address = * -
@Wayne-Workman said:
@Tom-Elliott said:
@Neil-Underwood The fix is very simple. All you really need to do is edit the my.cnf file in /etc/mysql/my.cnf. And comment the bind-address line with the # symbol. Once commented and saved, restart the mysql service. That should be it.
For me, it’s normally two part… Maybe I was doing it wrong the whole time?
GRANT ALL PRIVILEGES ON . TO ‘fog’@‘%’ IDENTIFIED BY ‘PassHere’ WITH GRANT OPTION;
and inside my.cnf, I set
bind-address = *All you need to do is comment the bind-address. The * does the exact same thing as the comment will do. You also don’t need to set a wildcard user as one already exists (AKA fogstorage found in FOG Configuration Page->FOG Settings)
-
-
I’ve had bind-address commented out from the inception of this issue. If I uncomment it I get a whole different set of problems.
The problem now is with tftp it seems. My clients are getting a file not found error when attempting to PXE boot. I thought I straightened out all the usernames/passwords.
Config.class.php TFTP_FTP_USERNAME/PASSWORD and STORAGE__FTP_USERNAME/PASSWORD both match the username/pw in the TFTP Server settings on the web interface. The username, ‘fog’, has the same unix password as what is in the aformentioned settings and has full access to /tftp.
The only conflict I now see is the Fog Storage Nodes credentials. I have one set in the web interface fr user “fogstorage”, and in Config.class.php I have this:
define('DATABASE_TYPE', 'mysql'); // mysql or oracle define('DATABASE_HOST', 'localhost'); define('DATABASE_NAME', 'fog'); define('DATABASE_USERNAME', 'root'); define('DATABASE_PASSWORD', 'xxxxxx'); }
Should these settings match? I’m confused because updating one doesn’t seems to change the other and I’m unclear on which settings correlate to one another from the config files to the web interface.
-
Check this out: https://wiki.fogproject.org/wiki/index.php/Troubleshoot_TFTP
Let us know if you need help.
-
I got it working! I’m really uncertain exactly what it was that finally did it though
Basically I made the password for user ‘fog’ the same on all 3 machines. I then made sure this user/pass combo was the same for the mysql ‘fog’ user, as well as the tftp & ftp storage user/pass. So in short everything has the same login credentials across the board.
I also created specific grants for each remote user, e.g.
GRANT ALL PRIVILEGES ON *.* TO 'fog'@'192.168.xxx.200' IDENTIFIED BY 'xxxxxxxx' WITH GRANT OPTION;
for each remote ip address.
Thanks to everyone for your assistance. Special thanks to Tom for taking the time to have a private chat session with me to help me get this figured out. You guys are awesome.
PS - Not sure how to mark solved on this forum…
-
OK so I’m left with a lingering issue now. I’m trying to deploy an image to make sure everything is working, but the image is only being pushed out from one of the remote nodes to a local machine over the MPLS, giving me a horrible transfer rate of ~ 80MB/min. Why would it not deploy the image from the local server? I’ve witnessed this system deploy an image in under 6.5 minutes. What logs should I be checking to figure this out?
-
Are you using the Location Plugin ? If so, double-check those settings. It’s really easy to orphan settings in there when you change things around. If you’re using the location plugin, maybe even re-configure it.