mirror of
				https://github.com/xcat2/confluent.git
				synced 2025-10-31 11:22:28 +00:00 
			
		
		
		
	
		
			
				
	
	
		
			118 lines
		
	
	
		
			4.5 KiB
		
	
	
	
		
			Cheetah
		
	
	
	
	
	
			
		
		
	
	
			118 lines
		
	
	
		
			4.5 KiB
		
	
	
	
		
			Cheetah
		
	
	
	
	
	
| nodeattrib(8) -- List or change confluent nodes attributes
 | |
| =========================================================
 | |
| 
 | |
| ## SYNOPSIS
 | |
| 
 | |
| `nodeattrib [-b] <noderange> [all|<nodeattribute>...]`
 | |
| `nodeattrib <noderange> [<nodeattribute1=value1> <nodeattribute2=value2> ...]`  
 | |
| `nodeattrib -c <noderange> <nodeattribute1> <nodeattribute2> ...`  
 | |
| `nodeattrib -e <noderange> <nodeattribute1> <nodeattribute2> ...`  
 | |
| `nodeattrib -p <noderange> <nodeattribute1> <nodeattribute2> ...`  
 | |
| 
 | |
| ## DESCRIPTION
 | |
| 
 | |
| **nodeattrib** manages the attributes of confluent nodes.  In
 | |
| the simplest form, it simply takes the given noderange(5) and lists the
 | |
| matching nodes, one line at a time.
 | |
| 
 | |
| If a list of node attribute names are given, the value of those are also
 | |
| displayed.  If `-b` is specified, it will also display information on
 | |
| how inherited and expression based attributes are defined.  Attributes can be
 | |
| straightforward values, or an expression as documented in nodeattribexpressions(5).
 | |
| For a full list of attributes, run `nodeattrib <node> all` against a node.
 | |
| If `-c` is specified, this will set the nodeattribute to a null value.
 | |
| This is different from setting the value to an empty string.
 | |
| 
 | |
| Attributes may be specified by wildcard, for example `net.*switch` will report
 | |
| all attributes that begin with `net.` and end with `switch`.
 | |
| 
 | |
| If the word all is specified, then all available attributes are given.
 | |
| Omitting any attribute name or the word 'all' will display only attributes
 | |
| that are currently set.
 | |
| 
 | |
| For the `groups` attribute, it is possible to add a group by doing
 | |
| `groups,=<newgroup>` and to remove by doing `groups^=<oldgroup>`
 | |
| 
 | |
| Note that `nodeattrib <group>` will likely not provide the expected behavior.
 | |
| See nodegroupattrib(8) command on how to manage attributes on a group level.
 | |
| 
 | |
| ## OPTIONS
 | |
| 
 | |
| * `-b`, `--blame`:
 | |
|   Annotate inherited and expression based attributes to show their base value.
 | |
|   
 | |
| * `-c`, `--clear`:
 | |
|   Clear specified nodeattributes.
 | |
|   
 | |
| * `-e`, `--environment`:
 | |
|   Set specified attributes based on exported environment variable of matching name. 
 | |
|   Environment variable names may be lower case or all upper case. 
 | |
|   Replace . with _ as needed (e.g. info.note may be specified as either $info_note or $INFO_NOTE
 | |
|   
 | |
| * `-p`, `--prompt`:
 | |
|   Request interactive prompting to provide values rather than the command line
 | |
|   or environment variables.
 | |
|   
 | |
| * `-m MAXNODES`, `--maxnodes=MAXNODES`:
 | |
|   Prompt if trying to set attributes on more than
 | |
|   specified number of nodes.
 | |
| 
 | |
| * `-h`, `--help`:
 | |
|   Show help message and exit
 | |
| 
 | |
| ## EXAMPLES
 | |
| * Listing matching nodes of a simple noderange:
 | |
|     `# nodeattrib n1-n2`  
 | |
|     `n1: console.method: ipmi`  
 | |
|     `n1: hardwaremanagement.manager: 172.30.3.1`  
 | |
|     `n2: console.method: ipmi`  
 | |
|     `n2: hardwaremanagement.manager: 172.30.3.2`  
 | |
| 
 | |
| * Getting an attribute of nodes matching a noderange:
 | |
|     `# nodeattrib n1,n2 hardwaremanagement.manager`  
 | |
|     `n1: hardwaremanagement.manager: 172.30.3.1`  
 | |
|     `n2: hardwaremanagement.manager: 172.30.3.2`  
 | |
| 
 | |
| * Getting a group of attributes while determining what group defines them:
 | |
|     `# nodeattrib n1,n2 hardwaremanagement --blame`  
 | |
|     `n1: hardwaremanagement.manager: 172.30.3.1`  
 | |
|     `n1: hardwaremanagement.method: ipmi (inherited from group everything)`  
 | |
|     `n1: hardwaremanagement.switch: r8e1`  
 | |
|     `n1: hardwaremanagement.switchport: 14`  
 | |
|     `n2: hardwaremanagement.manager: 172.30.3.2`  
 | |
|     `n2: hardwaremanagement.method: ipmi (inherited from group everything)`  
 | |
|     `n2: hardwaremanagement.switch: r8e1`  
 | |
|     `n2: hardwaremanagement.switchport: 2`  
 | |
| 
 | |
| * Listing matching nodes of a simple noderange that are set:
 | |
|     `# nodeattrib n1-n2 current`  
 | |
|     `n1: console.method: ipmi`  
 | |
|     `n1: hardwaremanagement.manager: 172.30.3.1`  
 | |
|     `n2: console.method: ipmi`  
 | |
|     `n2: hardwaremanagement.manager: 172.30.3.2`  
 | |
| 
 | |
| * Change attribute on nodes of a simple noderange:
 | |
|     `# nodeattrib n1-n2 console.method=serial`  
 | |
|     `n1: console.method: serial`  
 | |
|     `n1: hardwaremanagement.manager: 172.30.3.1`  
 | |
|     `n2: console.method: serial`  
 | |
|     `n2: hardwaremanagement.manager: 172.30.3.2`  
 | |
| 
 | |
| * Clear attribute on nodes of a simple noderange, if you want to retain the variable set the attribute to "":
 | |
|     `# nodeattrib n1-n2 -c console.method`  
 | |
|     `# nodeattrib n1-n2 console.method`  
 | |
|     `n1: console.method: `  
 | |
|     `n2: console.method: `  
 | |
| 
 | |
| * List all switches that a node is described as connected to:
 | |
|     `# nodeattrib d1 net.*switch`  
 | |
|     `d1: net.mgt.switch: mgtswitch1`  
 | |
|     `d1: net.pxe.switch: pxeswitch1`  
 | |
|     `d1: net.switch:`  
 | |
| 
 | |
| ## SEE ALSO
 | |
| 
 | |
| nodegroupattrib(8), nodeattribexpressions(5)
 | |
| 
 | |
| ## ATTRIBUTES
 |