The replacement of fossil fuel powered base-load electricity generation with fluctuating renewable energy resources is dictating that complementary nuclear power, more than ever before, must extend its traditional role of base-load generation by developing flexible power manoeuvring capabilities. In light water nuclear reactors, fuel pellets are encased in zirconium alloy cladding tubes. The pellet-cladding interaction (PCI) can result in fuel rod failure due to a stress corrosion cracking (SCC) process. Reactor operations are currently stringently bounded by an empirically-based knowledge of PCI. In order to safely relax these overly-conservative operating restrictions, a mechanistic understanding of PCI must be developed. In particular, fission products released from the fuel pellets, such as iodine, can interact aggressively with the inner cladding surface, which is additionally subject to points of high stress concentration due to mechanical contact with the pellets. Such conditions are conducive to SCC, and it has been shown that zirconium grain boundaries (GBs) are important in this process. In this work, we thus focus on simulating from first-principles, grain boundaries in zirconium. We additionally probe the effects of iodine and caesium on GB properties. We build significantly on existing work by including in our analysis the properties of multiple grain boundaries---four symmetric tilt GBs and three twist GBs. In particular we survey the interfacial energetics and explore the microscopic degrees of freedom of each GB. We characterise the GBs according to their effect on the geometric properties of the surrounding atoms. In our defect analysis, we consider the segregation favourability of iodine, caesium and vacancy defects at three distinct sites of four GBs in zirconium. We find both iodine and caesium segregation to the GBs to be energetically favourable, with the preference of caesium being the strongest. We additionally consider the effect of increasing the defect concentration. The data we have generated during this work could be used for the fitting and validation of a zirconium-iodine empirical potential, which would allow accurate simulations at much larger length scales than are currently possible.