Do I need to disable logins while upgrading SQL Server?
SQL Server certainly doesn't require you to disable the logins in order to upgrade, but it is going to terminate any sessions that are connected because it will stop the SQL Server service.  If you are going to install a service pack, and then a CU, for example, this will result in stopping, starting, stopping, and starting the SQL Server service.  So if you are concerned about users logging in and being disappointed because their query didn't finish, then yes, you might want to disable their logins first.

You can generate a T-SQL script to do this by running a query similar to the following:

SELECT 'ALTER LOGIN [' + name + '] DISABLE' 
FROM sys.server_principals WHERE TYPE = 'S' 
    AND  [name] NOT IN ('sa', '##MS_PolicyTsqlExecutionLogin##', 
       '##MS_PolicyEventProcessingLogin##')


You may need to add some more logins to the NOT IN list--just be sure that you don't end up disabling the login(s) you need to administer the system!

A similar script to enable the logins can be generated by replacing DISABLE in the script above with ENABLE.

If there is a poorly designed application using a database on the server, it's possible that a user could start something that doesn't get properly finished before their session is terminated by the service shutdown.  This could happen if something that should be done in one transaction is instead being done in multiple transactions.  If the first transaction succeeds, but one or more of the related transactions fail, then you might have something half-baked.  Typically this is not something to be concerned about, but just including this because it's certainly possible.