Rumbling sounds coming from a water heater are an indication that sediment has built up on the bottom of the water heater. What you are hearing is water that is trapped in the sediment and is boiling. This is an indication that the water heater is not operating efficiently. Sediment will not allow the heat to transfer to the water in the tank, which sends the heat up the flue.
You may try draining a few gallons of water off the bottom of the water heater tank. This is done by attaching a drain hose to the valve at the bottom of the tank. Allow it to drain for about five minutes.
WARNING: HOT WATER IS DANGEROUS. DISCHARGE THE WATER INTO A FLOOR DRAIN, LAUNDRY TUB OR BATHTUB. HOT WATER WILL KILL YOUR GRASS IF DISCHARGED ONTO THE LAWN. HOT WATER WILL CRACK A TOILET BOWL IF DISCHARGED INTO THE TOILET.
If you have severe sediment build-up it may be cost effective to replace go ahead and replace your water heater. Having your water heater drained as least once a year will not only prevent sediment build-up, but it will also increase the life span and efficiency of your water heater.