Clean any oil from the aggregate concrete using a concrete degreaser. Spread the degreaser over the oil stain and allow it to sit for the period of time recommended by the manufacturer. Scrub the degreaser and oil away with a sponge.
Clean the surface of the aggregate concrete thoroughly with a power washer. Go over the surface of the concrete with the water spray, removing any dirt or debris. Wash from one end of the surface to the other, using a back-and-forth motion that drives the water and dirt in front of you. Allow the concrete to dry completely before applying the sealant.
Pour concrete sealant into a hand-pump sprayer. Spray the surface of the concrete with the sealant, using a back-and-forth motion to ensure an even coverage over the surface. Spray on a solid layering of the sealant, stopping just short of leaving puddles on the concrete, so that there's enough sealant to fill all of the small spaces around the aggregate.
Spread the applied sealant into the aggregate, using a paint roller on an extension pole. Go over the surface of the concrete with the roller, applying pressure as you spread the sealant. Work in overlapping rows to avoid missing any spots and to even out the coverage.
Wait overnight and then apply a second layer of the sealant using the same methods to get any spots missed in the first application. Wait an additional 48 hours before using the surface.