Also... Salt does have High Availability options, https://docs.saltproject.io/en/latest/topics/highavailabilit... with Replication/Failover and Multi-Master modes, and there's also "Syndic" which break up how much each master is responsible for in order to create failure domains or separate responsibilities between stacks of infrastructure like having one per datacenter... oh and the underlying data stores that masters and syndic daemons rely on can be setup with highly configurations since you can keep the cached data in Redis, Consul, EtcD, or MySQL...
Salt is a bit complicated, but just can't understand where you're coming from here. I've never used a configuration management system that wasn't a bit complicated in one way or another, their job is to be the sin-eater of the complexity that is inherent in managing computers and software.