We have application running on aws-eks which is deployed using the Terraform module. this module deploys the self managed nodes for workers which are using the latest bottle rocket AMIs.
So every time there is a new updates for the bottle rockets instances we should update the latest version. For that we are planning to use bottle rocket update operator - BRUPOP.
If we use this operator and it automatically updates the instances, will the instances be replaced or it updates on the exiting servers. If it replaces the existing ones how the Terraform state file will be updated?
If you are using the bottlerocket-update-operator
(aka Brupop), nodes are not entirely replaced, but they are restarted in order to reboot into the new update. Currently, it is not possible to do an in place update without draining workloads on the bottlerocket nodes, applying the update, and rebooting.
The 1.0.0 deep dive gives a good overview of how updates work in Bottlerocket and how Brupop integrates with the upgrade APIs.