Exemplo n.º 1
0
 def prepare(self, context, packages, databases, memory_mb, users,
             device_path=None, mount_point=None, backup_info=None,
             config_contents=None, root_password=None, overrides=None,
             cluster_config=None):
     """
     This is called when the trove instance first comes online.
     It is the first rpc message passed from the task manager.
     prepare handles all the base configuration of the redis instance.
     """
     try:
         app = RedisApp(RedisAppStatus.get())
         RedisAppStatus.get().begin_install()
         if device_path:
             device = volume.VolumeDevice(device_path)
             # unmount if device is already mounted
             device.unmount_device(device_path)
             device.format()
             device.mount(mount_point)
             operating_system.update_owner('redis', 'redis', mount_point)
             LOG.debug('Mounted the volume.')
         app.install_if_needed(packages)
         LOG.info(_('Writing redis configuration.'))
         app.write_config(config_contents)
         app.restart()
         LOG.info(_('Redis instance has been setup and configured.'))
     except Exception:
         LOG.exception(_("Error setting up Redis instance."))
         app.status.set_status(rd_instance.ServiceStatuses.FAILED)
         raise RuntimeError("prepare call has failed.")
Exemplo n.º 2
0
 def update_status(self, context):
     """
     Updates the redis trove instance. It is decorated with
     perodic task so it is automatically called every 3 ticks.
     """
     LOG.debug("Update status called.")
     RedisAppStatus.get().update()
Exemplo n.º 3
0
 def update_status(self, context):
     """
     Updates the redis trove instance. It is decorated with
     perodic task so it is automatically called every 3 ticks.
     """
     LOG.debug("Update status called.")
     RedisAppStatus.get().update()
Exemplo n.º 4
0
 def prepare(self, context, packages, databases, memory_mb, users,
             device_path=None, mount_point=None, backup_info=None,
             config_contents=None, root_password=None, overrides=None):
     """
     This is called when the trove instance first comes online.
     It is the first rpc message passed from the task manager.
     prepare handles all the base configuration of the redis instance.
     """
     try:
         app = RedisApp(RedisAppStatus.get())
         RedisAppStatus.get().begin_install()
         if device_path:
             device = volume.VolumeDevice(device_path)
             # unmount if device is already mounted
             device.unmount_device(device_path)
             device.format()
             device.mount(mount_point)
             operating_system.update_owner('redis', 'redis', mount_point)
             LOG.debug('Mounted the volume.')
         app.install_if_needed(packages)
         LOG.info(_('Securing redis now.'))
         app.write_config(config_contents)
         app.restart()
         LOG.info(_('"prepare" redis call has finished.'))
     except Exception as e:
         LOG.error(e)
         app.status.set_status(rd_instance.ServiceStatuses.FAILED)
         raise RuntimeError("prepare call has failed.")
Exemplo n.º 5
0
 def prepare(self,
             context,
             packages,
             databases,
             memory_mb,
             users,
             device_path=None,
             mount_point=None,
             backup_info=None,
             config_contents=None,
             root_password=None,
             overrides=None):
     """
     This is called when the trove instance first comes online.
     It is the first rpc message passed from the task manager.
     prepare handles all the base configuration of the redis instance.
     """
     app = RedisApp(RedisAppStatus.get())
     RedisAppStatus.get().begin_install()
     if device_path:
         device = volume.VolumeDevice(device_path)
         device.format()
         device.mount(mount_point)
         LOG.debug(_('Mounted the volume.'))
     app.install_if_needed(packages)
     LOG.info(_('Securing redis now.'))
     app.write_config(config_contents)
     app.complete_install_or_restart()
     LOG.info(_('"prepare" redis call has finished.'))
Exemplo n.º 6
0
 def prepare(
     self,
     context,
     packages,
     databases,
     memory_mb,
     users,
     device_path=None,
     mount_point=None,
     backup_info=None,
     config_contents=None,
     root_password=None,
 ):
     """
     This is called when the trove instance first comes online.
     It is the first rpc message passed from the task manager.
     prepare handles all the base configuration of the redis instance.
     """
     app = RedisApp(RedisAppStatus.get())
     RedisAppStatus.get().begin_install()
     if device_path:
         device = volume.VolumeDevice(device_path)
         device.format()
         device.mount(system.REDIS_BASE_DIR)
         LOG.debug(_("Mounted the volume."))
     app.install_if_needed(packages)
     LOG.info(_("Securing redis now."))
     app.write_config(config_contents)
     app.complete_install_or_restart()
     LOG.info(_('"prepare" redis call has finished.'))
Exemplo n.º 7
0
 def start_db_with_conf_changes(self, context, config_contents):
     """
     Start this redis instance with new conf changes.
     """
     LOG.debug("Start DB with conf changes called.")
     app = RedisApp(RedisAppStatus.get())
     app.start_db_with_conf_changes(config_contents)
Exemplo n.º 8
0
 def reset_configuration(self, context, configuration):
     """
     Resets to the default configuration,
     currently this does nothing.
     """
     app = RedisApp(RedisAppStatus.get())
     app.reset_configuration(configuration)
Exemplo n.º 9
0
 def reset_configuration(self, context, configuration):
     """
     Resets to the default configuration,
     currently this does nothing.
     """
     app = RedisApp(RedisAppStatus.get())
     app.reset_configuration(configuration)
Exemplo n.º 10
0
 def start_db_with_conf_changes(self, context, config_contents):
     """
     Start this redis instance with new conf changes.
     """
     LOG.debug("Start DB with conf changes called.")
     app = RedisApp(RedisAppStatus.get())
     app.start_db_with_conf_changes(config_contents)
Exemplo n.º 11
0
 def stop_db(self, context, do_not_start_on_reboot=False):
     """
     Stop this redis instance.
     This method is called when the guest agent
     gets a stop message from the taskmanager.
     """
     app = RedisApp(RedisAppStatus.get())
     app.stop_db(do_not_start_on_reboot=do_not_start_on_reboot)
Exemplo n.º 12
0
 def restart(self, context):
     """
     Restart this redis instance.
     This method is called when the guest agent
     gets a restart message from the taskmanager.
     """
     app = RedisApp(RedisAppStatus.get())
     app.restart()
Exemplo n.º 13
0
 def restart(self, context):
     """
     Restart this redis instance.
     This method is called when the guest agent
     gets a restart message from the taskmanager.
     """
     app = RedisApp(RedisAppStatus.get())
     app.restart()
Exemplo n.º 14
0
 def stop_db(self, context, do_not_start_on_reboot=False):
     """
     Stop this redis instance.
     This method is called when the guest agent
     gets a stop message from the taskmanager.
     """
     app = RedisApp(RedisAppStatus.get())
     app.stop_db(do_not_start_on_reboot=do_not_start_on_reboot)
Exemplo n.º 15
0
 def start_db_with_conf_changes(self, context, config_contents):
     """
     Start this redis instance with new conf changes.
     """
     app = RedisApp(RedisAppStatus.get())
     app.start_db_with_conf_changes(config_contents)
Exemplo n.º 16
0
 def start_db_with_conf_changes(self, context, config_contents):
     """
     Start this redis instance with new conf changes.
     """
     app = RedisApp(RedisAppStatus.get())
     app.start_db_with_conf_changes(config_contents)