If you want to be acquiring video from image sensors, you'll need not only the image sensors, but you'll need to machine or buy the housings to couple lenses to the sensors, you'll need to buy the lenses, you'll need to design electronics that consume the image sensor data and compress it, and you'll need to write firmware and software for all of that. For a one-off project, especially if you're not very experienced, this is way more trouble than it's worth unless you really want to tackle a high-tech project and learn everything as you go.
You're quite secretive about how really do you envision your project. Is it one self-contained device with 8 cameras? Cameras in multiple locations on the scale of a building? 8 cameras in orbit? What are the images for? What software do you need to feed the images to? I hope you see the problem.
One simple way to do it is to use IP cameras. Yes, you will have to buy cameras, but it's still an easy way to go about it while having trivial programmability from almost anything with a gigabit ethernet port on it. For 2 megapixels, you're looking at $300-$600 per camera.
If the cameras can be USB and plug into one PC, then you may get by using webcams. You'll have to test this solution, since webcams differ wildly in the quality of the electronics, firmware and drivers. Ideally you want something that supports the standardized USB Video Class, as you then have a choice of not using Windows on the machine that collects the video data.
If you only need to collect the pictures onto a memory card, then using custom firmware on supported Canon digital cameras would be the way to go. You can then also have full programmatic control on picture-taking, either internally within the camera, or remotely over USB.