According to Home Guides at SFGate, the reason hot water heaters make noise is because debris has gathered in the bottom of the tank. There are some ways homeowners can clean this problem on their own, or they can hire a professional.
According to Home Guides at SFGate, the noise can be fixed in the water heater by flushing out the debris at the bottom of the tank. To do this, homeowners first need to set the gas control of the heater on the pilot setting, or if the heater is electric powered, shut off the circuit breaker that powers the tank. Then, the owner must shut off the tank's cold water supply by turning its shut-off valve. The homeowner then attaches a hose to the tank's drain valve and opens it by turning its handle, letting the tank drain into a bucket or tub until the water coming out runs clear. Then the owner must close the drain valve.
If the drain valve will not close, it is likely it is clogged with some of the draining debris. Refilling the water heater by turning on the tank's cold water is necessary. The homeowner should turn on the hot water faucet for a sink, and when the hot water is pouring fully from the faucet, he must turn it off and then turn the gas control back on again. If the tank makes a rushing water or sloshing sound, the water pressure of the tank may need to be checked.