This is the happy path. Node is ejected from cluster in an orderly manner and then kubectl is used to spawn a replacement Pod. Although not shown in the output, the new Pod has the same IP address as the old Pod.
In this scenario, everything works as expected.
$ psql -W -h mydb-0.mydb -U arepuser -d mydb -c 'select * from bdr.bdr_nodes'
node_sysid | node_timeline | node_dboid | node_status | node_name | node_local_dsn | node_init_from_dsn | node_read_only
---------------------+---------------+------------+-------------+----------------------------+--------------------------------------------------------------------------+----------------------------------------------------------------------------+----------------
6395635580046348310 | 1 | 16387 | r | mydb-0-11ac0600-1489099948 | host=/var/run/postgresql dbname=mydb user=arepuser password=areppassword | | f
6395635628273594388 | 1 | 16387 | r | mydb-1-11ac0700-1489099959 | host=/var/run/postgresql dbname=mydb user=arepuser password=areppassword | port=5432 dbname=mydb host=mydb-0.mydb user=arepuser password=areppassword | f
6395635633776132116 | 1 | 16387 | r | mydb-2-11ac0800-1489099960 | host=/var/run/postgresql dbname=mydb user=arepuser password=areppassword | port=5432 dbname=mydb host=mydb-0.mydb user=arepuser password=areppassword | f
(3 rows)
$ psql -W -h mydb-0.mydb -U arepuser -d mydb -c "SELECT bdr.bdr_part_by_node_names(ARRAY['mydb-2-11ac0800-1489099960']);"
bdr_part_by_node_names
------------------------
(1 row)
$ psql -W -h mydb-0.mydb -U arepuser -d mydb -c 'select * from bdr.bdr_nodes'
node_sysid | node_timeline | node_dboid | node_status | node_name | node_local_dsn | node_init_from_dsn | node_read_only
---------------------+---------------+------------+-------------+----------------------------+--------------------------------------------------------------------------+----------------------------------------------------------------------------+----------------
6395635580046348310 | 1 | 16387 | r | mydb-0-11ac0600-1489099948 | host=/var/run/postgresql dbname=mydb user=arepuser password=areppassword | | f
6395635628273594388 | 1 | 16387 | r | mydb-1-11ac0700-1489099959 | host=/var/run/postgresql dbname=mydb user=arepuser password=areppassword | port=5432 dbname=mydb host=mydb-0.mydb user=arepuser password=areppassword | f
6395635633776132116 | 1 | 16387 | k | mydb-2-11ac0800-1489099960 | host=/var/run/postgresql dbname=mydb user=arepuser password=areppassword | port=5432 dbname=mydb host=mydb-0.mydb user=arepuser password=areppassword | f
(3 rows)
$ psql -W -h mydb-0.mydb -U arepuser -d mydb -c "delete from bdr.bdr_nodes where node_name='mydb-2-11ac0800-1489099960';"
DELETE 1
$ psql -W -h mydb-0.mydb -U arepuser -d mydb -c 'select * from bdr.bdr_nodes'
node_sysid | node_timeline | node_dboid | node_status | node_name | node_local_dsn | node_init_from_dsn | node_read_only
---------------------+---------------+------------+-------------+----------------------------+--------------------------------------------------------------------------+----------------------------------------------------------------------------+----------------
6395635580046348310 | 1 | 16387 | r | mydb-0-11ac0600-1489099948 | host=/var/run/postgresql dbname=mydb user=arepuser password=areppassword | | f
6395635628273594388 | 1 | 16387 | r | mydb-1-11ac0700-1489099959 | host=/var/run/postgresql dbname=mydb user=arepuser password=areppassword | port=5432 dbname=mydb host=mydb-0.mydb user=arepuser password=areppassword | f
(2 rows)
$ k8s delete pod mydb-2
pod "mydb-2" deleted
$ k8s get pod mydb-2
NAME READY STATUS RESTARTS AGE
mydb-2 1/1 Running 0 8s
$ psql -W -h mydb-0.mydb -U arepuser -d mydb -c 'select * from bdr.bdr_nodes'
node_sysid | node_timeline | node_dboid | node_status | node_name | node_local_dsn | node_init_from_dsn | node_read_only
---------------------+---------------+------------+-------------+----------------------------+--------------------------------------------------------------------------+----------------------------------------------------------------------------+----------------
6395635580046348310 | 1 | 16387 | r | mydb-0-11ac0600-1489099948 | host=/var/run/postgresql dbname=mydb user=arepuser password=areppassword | | f
6395635628273594388 | 1 | 16387 | r | mydb-1-11ac0700-1489099959 | host=/var/run/postgresql dbname=mydb user=arepuser password=areppassword | port=5432 dbname=mydb host=mydb-0.mydb user=arepuser password=areppassword | f
6395638050813399062 | 1 | 16387 | r | mydb-2-11ac0800-1489100523 | host=/var/run/postgresql dbname=mydb user=arepuser password=areppassword | port=5432 dbname=mydb host=mydb-0.mydb user=arepuser password=areppassword | f
(3 rows)
$ psql -W -h mydb-2.mydb -U arepuser -d mydb -c 'select * from bdr.bdr_nodes'
node_sysid | node_timeline | node_dboid | node_status | node_name | node_local_dsn | node_init_from_dsn | node_read_only
---------------------+---------------+------------+-------------+----------------------------+--------------------------------------------------------------------------+----------------------------------------------------------------------------+----------------
6395635580046348310 | 1 | 16387 | r | mydb-0-11ac0600-1489099948 | host=/var/run/postgresql dbname=mydb user=arepuser password=areppassword | | f
6395635628273594388 | 1 | 16387 | r | mydb-1-11ac0700-1489099959 | host=/var/run/postgresql dbname=mydb user=arepuser password=areppassword | port=5432 dbname=mydb host=mydb-0.mydb user=arepuser password=areppassword | f
6395638050813399062 | 1 | 16387 | r | mydb-2-11ac0800-1489100523 | host=/var/run/postgresql dbname=mydb user=arepuser password=areppassword | port=5432 dbname=mydb host=mydb-0.mydb user=arepuser password=areppassword | f
(3 rows)