Rainwater harvesting is a concept of permaculture in which as much rain as possible is caught by various design features and stored for future use. Harvesting rainwater is only one of many permaculture tactics that lead to greater efficiency and conservation regarding water usage.
Many people are familiar with the basic rain barrels that can be used to catch a small amount of water for use in the garden. Permaculture's concept of rainwater harvesting goes far beyond barrels. Permaculturists have identified methods for storing huge volumes of water... and sometimes the water is stored in places you would not expect.
Rain can be captured from your gutters and stored in barrels. Barrels designed for this purpose typically store between 50-100 gallons of water. This is a great idea, and by all means you should be doing it as much as possible. But, as any gardener can tell you, 50 gallons does not go very far when you have many plants that need to be watered frequently.
To get around the volume limitation of rain barrels, permaculturists use a variety of tactics. One low-budget solution involves daisy-chaining many barrels together to create a system that can hold many hundreds of gallons. Homeowners with more money to spend can invest in above ground tanks which are capable of holding 1,500 gallons or more. And those tanks can be daisy-chained together as well to create a system that holds tens of thousands of gallons.
The roof is not the only place where you can catch and make use of rainwater. While this water is probably the cleanest, and therefore best for watering your edible plants, there are plenty of ways to harvest and make use of rainwater runoff on the ground as well.
Natural ponds and pools can be constructed in such a way as to catch rainwater runoff and hold it in place where it can be used by wildlife and domestic livestock, and then slowly released into the surrounding terrain as the ground dries. A common practice in permaculture is to create several ponds or pools in a row, with each one overflowing into the next one downhill.
Ponds and pools serve the domestic livestock and the local wildlife. And they can also be put to use by the permaculturist to generate new streams of food, products, and income by using them to cultivate fish.
Depending on how familiar you are with the principles of permaculture, it might sound silly to suggest that you can harvest rainwater by storing it in the ground. But, believe it or not, this might be the best form of rainwater harvesting that you can do - and it's easy.
Because permaculture emphasizes perennial food sources like fruit and nut trees, deep and thorough watering is especially beneficial in a permaculture garden or food forest. And because permaculture uses planting guilds to create a diverse ecosystem, when the trees in a permaculture garden are happy the other plants are more happy as well.
Permaculture has a variety of tactics that can be used to capture rainwater runoff and sink it deep into the ground. The most common method is the use of berms and swales to interrupt runoff streams, holding them in place long enough for the ground to absorb huge volumes of water that would normally wash away downhill.
Rainwater harvesting is a very big subject, and there are many resources available that go into detail regarding the various tactics that can be used. Try to identify the type of rainwater harvesting you want to do, and then find a resource that is specifically relevant to the tactics you have in mind.
If you're looking for a general overview of the various methods that permaculture offers for conserving water and harvesting rainwater, check out Toby Hemenway's online training about Water Conservation.
If you're looking for detailed information about specific tactics for rainwater harvesting, see Brad Lancaster's authoritative Rainwater Harvesting for Drylands and Beyond Volume 1 and Volume 2.