Package ganeti :: Package tools :: Module burnin :: Class Burner
[hide private]
[frames] | no frames]

Class Burner

source code


Burner class.

Instance Methods [hide private]
 
__init__(self)
Constructor.
source code
 
ParseOptions(self)
Parses the command line options.
source code
 
GetState(self)
Read the cluster state from the master daemon.
source code
 
FindMatchingDisk(self, instance)
Find a disk whose nodes match the instance's disk nodes.
source code
 
BurnCreateInstances(self)
Create the given instances.
source code
 
BurnModifyRuntimeMemory(self)
Alter the runtime memory.
source code
 
BurnGrowDisks(self)
Grow both the os and the swap disks by the requested amount, if any.
source code
 
BurnReplaceDisks1D8(self)
Replace disks on primary and secondary for drbd8.
source code
 
BurnReplaceDisks2(self)
Replace secondary node.
source code
 
BurnFailover(self)
Failover the instances.
source code
 
BurnMove(self)
Move the instances.
source code
 
BurnMigrate(self)
Migrate the instances.
source code
 
BurnImportExport(self)
Export the instance, delete it, and import it back.
source code
 
BurnStopStart(self)
Stop/start the instances.
source code
 
BurnRemove(self)
Remove the instances.
source code
 
BurnRename(self, name_check, ip_check)
Rename the instances.
source code
 
BurnReinstall(self)
Reinstall the instances.
source code
 
BurnReboot(self)
Reboot the instances.
source code
 
BurnRenameSame(self, name_check, ip_check)
Rename the instances to their own name.
source code
 
BurnActivateDisks(self)
Activate and deactivate disks of the instances.
source code
 
BurnAddRemoveNICs(self)
Add, change and remove an extra NIC for the instances.
source code
 
ConfdCallback(self, reply)
Callback for confd queries
source code
 
DoConfdRequestReply(self, req) source code
 
BurnConfd(self)
Run confd queries for our instances.
source code
 
BurnAddDisks(self)
Add an extra disk to every instance and then detach it.
source code
 
BurnRemoveDisks(self)
Attach a previously detached disk to an instance and then remove it.
source code
 
_CheckInstanceAlive(self, instance)
Check if an instance is alive by doing http checks.
source code
 
BurninCluster(self)
Test a cluster intensively.
source code

Inherited from JobHandler: CommitQueue, ExecJobSet, ExecOp, ExecOrQueue, MaybeRetry, StartBatch

Inherited from JobHandler (private): _ExecOp

Inherited from FeedbackAccumulator: ClearFeedbackBuf, Feedback, GetFeedbackBuf

Inherited from object: __delattr__, __format__, __getattribute__, __hash__, __new__, __reduce__, __reduce_ex__, __repr__, __setattr__, __sizeof__, __str__, __subclasshook__

Static Methods [hide private]
 
StopInstanceOp(instance)
Stop given instance.
source code
 
StartInstanceOp(instance)
Start given instance.
source code
 
RenameInstanceOp(instance, instance_new, name_check, ip_check)
Rename instance.
source code
Class Variables [hide private]

Inherited from JobHandler: queue_retry, queued_ops

Inherited from FeedbackAccumulator: opts

Inherited from FeedbackAccumulator (private): _feed_buf

Properties [hide private]

Inherited from object: __class__

Method Details [hide private]

__init__(self)
(Constructor)

source code 

Constructor.

Overrides: object.__init__

ParseOptions(self)

source code 

Parses the command line options.

In case of command line errors, it will show the usage and exit the program.

BurnCreateInstances(self)

source code 

Create the given instances.

Decorators:
  • @_DoCheckInstances
  • @_DoBatch(False)

BurnModifyRuntimeMemory(self)

source code 

Alter the runtime memory.

Decorators:
  • @_DoBatch(False)

BurnGrowDisks(self)

source code 

Grow both the os and the swap disks by the requested amount, if any.

Decorators:
  • @_DoBatch(False)

BurnReplaceDisks1D8(self)

source code 

Replace disks on primary and secondary for drbd8.

Decorators:
  • @_DoBatch(True)

BurnReplaceDisks2(self)

source code 

Replace secondary node.

Decorators:
  • @_DoBatch(True)

BurnFailover(self)

source code 

Failover the instances.

Decorators:
  • @_DoCheckInstances
  • @_DoBatch(False)

BurnMove(self)

source code 

Move the instances.

Decorators:
  • @_DoCheckInstances
  • @_DoBatch(False)

BurnMigrate(self)

source code 

Migrate the instances.

Decorators:
  • @_DoBatch(False)

BurnImportExport(self)

source code 

Export the instance, delete it, and import it back.

Decorators:
  • @_DoCheckInstances
  • @_DoBatch(False)

BurnStopStart(self)

source code 

Stop/start the instances.

Decorators:
  • @_DoCheckInstances
  • @_DoBatch(True)

BurnRemove(self)

source code 

Remove the instances.

Decorators:
  • @_DoBatch(False)

BurnRename(self, name_check, ip_check)

source code 

Rename the instances.

Note that this function will not execute in parallel, since we only have one target for rename.

BurnReinstall(self)

source code 

Reinstall the instances.

Decorators:
  • @_DoCheckInstances
  • @_DoBatch(True)

BurnReboot(self)

source code 

Reboot the instances.

Decorators:
  • @_DoCheckInstances
  • @_DoBatch(True)

BurnRenameSame(self, name_check, ip_check)

source code 

Rename the instances to their own name.

Decorators:
  • @_DoCheckInstances
  • @_DoBatch(True)

BurnActivateDisks(self)

source code 

Activate and deactivate disks of the instances.

Decorators:
  • @_DoCheckInstances
  • @_DoBatch(True)

BurnAddRemoveNICs(self)

source code 

Add, change and remove an extra NIC for the instances.

Decorators:
  • @_DoBatch(False)

BurnConfd(self)

source code 

Run confd queries for our instances.

The following confd queries are tested:

  • CONFD_REQ_PING: simple ping
  • CONFD_REQ_CLUSTER_MASTER: cluster master
  • CONFD_REQ_NODE_ROLE_BYNAME: node role, for the master

BurnAddDisks(self)

source code 

Add an extra disk to every instance and then detach it.

Decorators:
  • @_DoCheckInstances
  • @_DoBatch(False)

BurnRemoveDisks(self)

source code 

Attach a previously detached disk to an instance and then remove it.

Decorators:
  • @_DoCheckInstances
  • @_DoBatch(False)

_CheckInstanceAlive(self, instance)

source code 

Check if an instance is alive by doing http checks.

This will try to retrieve the url on the instance /hostname.txt and check that it contains the hostname of the instance. In case we get ECONNREFUSED, we retry up to the net timeout seconds, for any other error we abort.

BurninCluster(self)

source code 

Test a cluster intensively.

This will create instances and then start/stop/failover them. It is safe for existing instances but could impact performance.