MongoDB cluster instances missing 'key'
The rebase of https://review.openstack.org/#/c/187734/21..22 undid the changes to the cluster strategy api for mongodb. This means the instances are being started without the correct cluster configuration data. Change-Id: I12d7d65a03295a1153215e132ad8807ff4e70dac Closes-bug: #1476283
This commit is contained in:
@@ -121,11 +121,13 @@ class MongoDbCluster(models.Cluster):
|
||||
task_status=ClusterTasks.BUILDING_INITIAL)
|
||||
|
||||
replica_set_name = "rs1"
|
||||
key = utils.generate_random_password()
|
||||
|
||||
member_config = {"id": db_info.id,
|
||||
"shard_id": utils.generate_uuid(),
|
||||
"instance_type": "member",
|
||||
"replica_set_name": replica_set_name}
|
||||
"replica_set_name": replica_set_name,
|
||||
"key": key}
|
||||
for i in range(0, num_instances):
|
||||
instance_name = "%s-%s-%s" % (name, replica_set_name, str(i + 1))
|
||||
inst_models.Instance.create(context, instance_name,
|
||||
@@ -140,7 +142,8 @@ class MongoDbCluster(models.Cluster):
|
||||
cluster_config=member_config)
|
||||
|
||||
configsvr_config = {"id": db_info.id,
|
||||
"instance_type": "config_server"}
|
||||
"instance_type": "config_server",
|
||||
"key": key}
|
||||
for i in range(1, num_configsvr + 1):
|
||||
instance_name = "%s-%s-%s" % (name, "configsvr", str(i))
|
||||
inst_models.Instance.create(context, instance_name,
|
||||
@@ -155,7 +158,8 @@ class MongoDbCluster(models.Cluster):
|
||||
cluster_config=configsvr_config)
|
||||
|
||||
mongos_config = {"id": db_info.id,
|
||||
"instance_type": "query_router"}
|
||||
"instance_type": "query_router",
|
||||
"key": key}
|
||||
for i in range(1, num_mongos + 1):
|
||||
instance_name = "%s-%s-%s" % (name, "mongos", str(i))
|
||||
inst_models.Instance.create(context, instance_name,
|
||||
@@ -200,10 +204,15 @@ class MongoDbCluster(models.Cluster):
|
||||
check_quotas(self.context.tenant, deltas)
|
||||
new_replica_set_name = "rs" + str(num_unique_shards + 1)
|
||||
new_shard_id = utils.generate_uuid()
|
||||
dsv_manager = (datastore_models.DatastoreVersion.
|
||||
load_by_uuid(db_insts[0].datastore_version_id).manager)
|
||||
manager = task_api.load(self.context, dsv_manager)
|
||||
key = manager.get_key(a_member)
|
||||
member_config = {"id": self.id,
|
||||
"shard_id": new_shard_id,
|
||||
"instance_type": "member",
|
||||
"replica_set_name": new_replica_set_name}
|
||||
"replica_set_name": new_replica_set_name,
|
||||
"key": key}
|
||||
for i in range(1, num_members_per_shard + 1):
|
||||
instance_name = "%s-%s-%s" % (self.name, new_replica_set_name,
|
||||
str(i))
|
||||
@@ -219,9 +228,7 @@ class MongoDbCluster(models.Cluster):
|
||||
cluster_config=member_config)
|
||||
|
||||
self.update_db(task_status=ClusterTasks.ADDING_SHARD)
|
||||
manager = (datastore_models.DatastoreVersion.
|
||||
load_by_uuid(db_insts[0].datastore_version_id).manager)
|
||||
task_api.load(self.context, manager).mongodb_add_shard_cluster(
|
||||
manager.mongodb_add_shard_cluster(
|
||||
self.id,
|
||||
new_shard_id,
|
||||
new_replica_set_name)
|
||||
|
||||
Reference in New Issue
Block a user