I am building a web app that would track events/transactions made by contracts on the chain. At this point I am considering hosting a geth node on AWS EC2 in order to use in my web3.js initialization object. Would it be possible to use the MetaMask service instead of hosting my own node, just to probe the chain, without requiring my client side users to download the metamask plug in in order to use it?
MetaMask doesn't actually host any nodes! So if you want to write applications without the overhead of hosting your own node in the cloud, you can point your app to Infura. Checkout the site here: https://infura.io/.
You just need to make an account, then point your app to our endpoints. Basically all you need to do is replace http://localhost:8545 with https://"NETWORK".infura.io/"APIKEY", where "NETWORK" is either one mainnet, ropsten, rinkeby, kovan, and where "APIKEY" is the key you will get when you sign up!
You will then be hitting the same endpoints as MetaMask, since they send your transactions to Infura by default.