Long story short, I screwed up in the process of migrating to a new datastore and removed the original one from the config file before I was ready causing some issues. Luckily, this is a new cluster build and not yet production.
It appears that the hosts are looking for master IDs that are not accurate causing the election to fail. Host 1 is looking for the correct IDs that exist in the cluster however host 2 and 3 are now looking for incorrect IDs. I assume new IDs were generated during my failed migration and then reverted when I re-attached the original datastore. Is there a way to set the IDs that the hosts look for?
This is my last ditch effort before I run unsafe-bootstrap on host 1 and then migrate the other hosts to the "new" cluster.
Here are the logs from each host.
HOST 1 - DATA NODE
[2020-11-20T16:40:23,125][WARN ][o.e.c.c.ClusterFormationFailureHelper] [vpelasticsearch01] master not discovered or elected yet, an election requires at least 2 nodes with ids from [hV7KOY-hTQye3MuY-E2axQ, pK5DiXRERLGrRdS4_q0ZZQ, KIPbHxcSTbK5evRQFSMRbA], have discovered [
{vpelasticsearch01}{KIPbHxcSTbK5evRQFSMRbA}{YhFHFbX4SwyDH9LPPoHf8Q}{10.156.5.174}{10.156.5.174:9300}{dilmrt}{ml.machine_memory=16644874240, xpack.installed=true, transform.node=true, ml.max_open_jobs=20},
{vpelasticsearch02}{pK5DiXRERLGrRdS4_q0ZZQ}{X3e4-6ZHQxSUVCrjmrRAtg}{10.156.5.175}{10.156.5.175:9300}{dilmrt}{ml.machine_memory=16644874240, ml.max_open_jobs=20, xpack.installed=true, transform.node=true},
{vpelasticsearch03}{hV7KOY-hTQye3MuY-E2axQ}{igzhfquWTriaWmub6-jbJA}{10.156.5.177}{10.156.5.177:9300}{dilmrtv}{ml.machine_memory=3962003456, ml.max_open_jobs=20, xpack.installed=true, transform.node=true}] which is a quorum;
discovery will continue using [10.156.5.175:9300, 10.156.5.177:9300] from hosts providers and [{vpelasticsearch01}{KIPbHxcSTbK5evRQFSMRbA}{YhFHFbX4SwyDH9LPPoHf8Q}{10.156.5.174}{10.156.5.174:9300}{dilmrt}{ml.machine_memory=16644874240, xpack.installed=true, transform.node=true, ml.max_open_jobs=20}] from last-known cluster state; node term 175, last-accepted version 116049 in term 175
HOST 2 - DATA NODE
[2020-11-20T16:40:25,535][WARN ][o.e.c.c.ClusterFormationFailureHelper] [vpelasticsearch02] master not discovered or elected yet, an election requires at least 2 nodes with ids from [***A8E0pA1NQp24mby8Wexqiw***, hV7KOY-hTQye3MuY-E2axQ, pK5DiXRERLGrRdS4_q0ZZQ], have discovered [
{vpelasticsearch02}{pK5DiXRERLGrRdS4_q0ZZQ}{X3e4-6ZHQxSUVCrjmrRAtg}{10.156.5.175}{10.156.5.175:9300}{dilmrt}{ml.machine_memory=16644874240, xpack.installed=true, transform.node=true, ml.max_open_jobs=20},
{vpelasticsearch01}{KIPbHxcSTbK5evRQFSMRbA}{YhFHFbX4SwyDH9LPPoHf8Q}{10.156.5.174}{10.156.5.174:9300}{dilmrt}{ml.machine_memory=16644874240, ml.max_open_jobs=20, xpack.installed=true, transform.node=true},
{vpelasticsearch03}{hV7KOY-hTQye3MuY-E2axQ}{igzhfquWTriaWmub6-jbJA}{10.156.5.177}{10.156.5.177:9300}{dilmrtv}{ml.machine_memory=3962003456, ml.max_open_jobs=20, xpack.installed=true, transform.node=true}] which is a quorum;
discovery will continue using [10.156.5.174:9300, 10.156.5.177:9300] from hosts providers and [{vpelasticsearch02}{pK5DiXRERLGrRdS4_q0ZZQ}{X3e4-6ZHQxSUVCrjmrRAtg}{10.156.5.175}{10.156.5.175:9300}{dilmrt}{ml.machine_memory=16644874240, xpack.installed=true, transform.node=true, ml.max_open_jobs=20}] from last-known cluster state; node term 177, last-accepted version 116081 in term 177
HOST3 - VOTING ONLY
[2020-11-20T16:40:30,264][WARN ][o.e.c.c.ClusterFormationFailureHelper] [vpelasticsearch03] master not discovered or elected yet, an election requires at least 2 nodes with ids from [***A8E0pA1NQp24mby8Wexqiw***, hV7KOY-hTQye3MuY-E2axQ, ***dYmdCf-eRKaU8U2XJ80DiQ***], have discovered [
{vpelasticsearch03}{hV7KOY-hTQye3MuY-E2axQ}{igzhfquWTriaWmub6-jbJA}{10.156.5.177}{10.156.5.177:9300}{dilmrtv}{ml.machine_memory=3962003456, xpack.installed=true, transform.node=true, ml.max_open_jobs=20},
{vpelasticsearch01}{KIPbHxcSTbK5evRQFSMRbA}{YhFHFbX4SwyDH9LPPoHf8Q}{10.156.5.174}{10.156.5.174:9300}{dilmrt}{ml.machine_memory=16644874240, ml.max_open_jobs=20, xpack.installed=true, transform.node=true},
{vpelasticsearch02}{pK5DiXRERLGrRdS4_q0ZZQ}{X3e4-6ZHQxSUVCrjmrRAtg}{10.156.5.175}{10.156.5.175:9300}{dilmrt}{ml.machine_memory=16644874240, ml.max_open_jobs=20, xpack.installed=true, transform.node=true}] which is not a quorum;
discovery will continue using [10.156.5.174:9300, 10.156.5.175:9300] from hosts providers and [{vpelasticsearch03}{hV7KOY-hTQye3MuY-E2axQ}{igzhfquWTriaWmub6-jbJA}{10.156.5.177}{10.156.5.177:9300}{dilmrtv}{ml.machine_memory=3962003456, xpack.installed=true, transform.node=true, ml.max_open_jobs=20}] from last-known cluster state; node term 179, last-accepted version 116210 in term 179
Edit: Asterisks placed around IDs that do not match the cluster.