Creating your own OS image

Any documentation out there that can help guide on creating our own OS image? We are looking for a centOS image to create and deploy it.

Kubernetes version: 1.15
Cloud being used: (put bare-metal if not on a public cloud) AWS
Installation method: Terraform
Host OS: Linux linux
CNI and version:1.5.0 will be upgrading to 1.5.5
CRI and version: