A. SQL Server is just like any other NT service in that it can be defined to run using the credentials of an NT user account. It can also run under localsystem account, but if you are getting this error then you must have defined a user account.

Related: Automate detection of Logon failure in a domain environment 

Go to control panel/services. Choose the mssqlserver service (or SQLExecutive/SQLAgent if they are failing) and then choose startup. Check what NT account is being used. Make sure that the password is correct and check with NT user manager that the account has not been deleted or expired.

If the account details seem ok, then check that it has "logon as a service" user right (again with user manager).

If this doesn't resolve the issue then try logging on locally to the NT box with the same NT account and see what error(s) you get.

Related: Logon failures on BDC due to secure channel problem