So I got in over my head by signing up for an unmanaged VPS- I'm a web developer and haven't dealt a whole lot with server administration. I'm stuck on creating zone files, which I've been told needs to be done via SSH. Anyway, one extremely confusing point is creating an A Record. I noticed that this exists both in vps zone files and for my domain control panel. What's the difference? Which one do I need to modify? Thanks!
Seeing as you have an A record in your domain control panel, change the A record on both your VPS and your domain control panel. Alternatively, have your domains DNS managed by CloudFlare (which makes things much easier).
There are lots of free DNS services out there. Sign up with one of them and host your DNS offsite. It'll be so much easier for you in the long run. Check the registrar you have your domain through and see if they offer the service.
I can vouch what Localnode has said, I instruct my clients to use Cloudflare or Incapsula. It makes DNS management so much easier and propagation basically instant. If you need help with this i'd be more than happy to assist. Drop me a PM
I wouldn't necessarily recommend hosting DNS offsite, that kinda defeats the purpose of a VPS and will add another possible failure point. I would instead recommend you install the DNS version of cPanel, its 100% free and will let you manage all your DNS records and nameserver services. To answer the question "What's the difference between A Record for domains and servers" - my answer is NOTHING - all A records are the same. They just allow the conversion of a hostname or domain name to an IP address. Note a servers hostname is just another form of a domain name.