We currently have a private IP subnet using the 192.168.1.0/24 range. We are running out of IP addresses and would like to extend this subnet, to something like 192.168.0.0/21.
Is it possible to do such change without significant downtime? if we first change the VLAN configuration on our switch to use the new netmask, will all the connected machines with the old configuration immediately break until we change their configuration? or will they continue to work as before but will only see the previous subnet, and not hosts with IPs on the extended subnet, and then we could gradually change the netmask on each host with no downtime except what's required for a local NIC restart?
Yes, you can do such a change without significant downtime. The first likely risk that comes to mind is a disagreement about the broadcast address.
That said, if you don't see a big problem with that for any of your services (most of them won't care), you can change the settings live. 192.168.1.0/24 is a subset of 192.168.0.0/21, so as long as you change over all the netmask for all machines before adding any addresses outside the 192.168.1.0/24 address space, things should work just find as all machines will know to stay on the local network to talk to each other.
I agree with the answer above, just make sure you release all dhcp leases almost immediately after changing your DHCP scope. That is if you are using DHCP.
Well if you want to not waste time and change to all computers subnet mask you can add one more /24 mask and a router to connect these two networks.