Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
18 commits
Select commit Hold shift + click to select a range
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
16 changes: 16 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -2,6 +2,22 @@

This file is used to list changes made in each version of the aix cookbook.

## 2.3.1 (2018-05-16)

- Don't .to_s strings
- Use the chef shell_out mixin vs. mixlib_shellout
- Properties that are Strings default to nil so we can remove the nil defaults
- Remove empty load_current_value method which isn't doing anything
- Load current resource properly instead of tracking state in properties
- Remove redundant default_action
- Use new_resource instead of @new_resource in several resources
- Fix strings in the examples to properly interpolate
- Fix error message to actually output the error
- Update the rubocop rules we disable
- Resolve FC019 warnings in the examples
- Disable FC0113 for now since we still support Chef 12
- Fix loading current_resource in the inittab resource

## 2.3.0 (2018-05-10)

- Resolve incompatibilities with Chef 13 & 14
Expand Down
89 changes: 88 additions & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -506,6 +506,11 @@ In some cases a metadata operation is performed to discover the oslevel build nu

The location directory is automatically created if it does not exist.

The following user process resource limits are recommended to run a suma recipe:
- fsize = -1
- nofiles = 20000 (or greater)
- data = -1

The NIM lpp_source resource is automatically created if needed. It meets the following requirement. Name contains build number and ends with the type of resource:

- 7100-04-00-0000-lpp_source
Expand Down Expand Up @@ -650,6 +655,7 @@ If space is needed, filesystem is automatically extended by increment of 100MB.
- `filesets` - filter on fileset name
- `csv` - custom apar csv file
- `path` - directory where the report is saved
- `force` - if true, installed interim fixes will be automatically removed (default: false)
- `clean` - clean temporary files and remove nim lpp_source resource (default: true)
- `verbose` - save and display the report in verbose mode (default: false)
- `check_only` - generate report only, no fixes are downloaded nor installed (default: false)
Expand Down Expand Up @@ -717,7 +723,7 @@ action_list:
* altdisk_copy: will make an alternate rootvg on an available disk
* update: install software on VIOSes from existing NIM lpp source
* altdisk_cleanup: to remove the altinst_rootvg

#### Properties

- `lpp_source` - Name of NIM lpp_source resource to install
Expand Down Expand Up @@ -776,6 +782,87 @@ aix_nimviosupdate "check VIOSes tuples, make alternate rootvg, update VIOSes, re
end
```

### viosupgrade

Use viosupgrade to upgrade a VIOS or a couple of VIOSes by installing the specifed image from the NIM server.
Performs the operations of backing up the virtual and logical configuration data, installing the specified image,
and restoring the virtual and logical configuration data of the Virtual I/O Server (VIOS).
Each action from the action list can be executed independently or together: check, altdisk_copy, validate, upgrade, altdisk_cleanup
action_list:
* check: verify the redundancy of the 2 VIOSes for the upgrade
* altdisk_copy: will make an alternate rootvg on an available disk
* validate: will make a verification about upgrade operation
* upgrade: install image on VIOSes from existing NIM mksysb iamge and restoring the virtual and logical configuration data
* altdisk_cleanup: to remove the altinst_rootvg

#### Properties

- `targets` - Comma separated list of single or dual VIOSes to manage in a tuple format (required)
- `ios_mksysb_name` - IOS_MKSYSB resource name on the NIM Master server for the specified VIOS installation
- `viosupgrade_type` - Instalation type - values: bosinst (installation on rootvg) or altdisk (installation on an alternative disk)
- `installdisks` - List of hdisks for the installation (used only for an altdisk installation)
- `altdisks` - List of hdisks on which the alternate disk copy will be created. A disk is automatically searched when no disk is specified for a VIOS
- `action_list` - Comma separated list of actions to perform on VIOSes(default: "validate,upgrade") possible values: check, altdisk_copy, validate, upgrade, altdisk_cleanup
- `resources` - List of configuration resources to be applied after the installation. Per VIOSes.
- `common_resources` - List of configuration resources to be applied after the installation. For all VIOSes.
- `preview` - (values: yes or no) (default: no) To select the install preview mode - validate operation.
- `viosupgrade_alt_disk_copy` -(values: yes or no) (default: no) - yes to use viosupgrade command to make an alternate disk copy (altdisks property will be used for the disks)

#### Actions

- `upgrade` - check, altdisk copy, validate, upgrade, cleanup depending on the action_list parameter.

#### Examples

```ruby
aix_viosupgrade "check the vios redundancy" do
targets "(vios1,vios2),(vios3,vios4)"
action_list "check"
action :upgrade
end

aix_viosupgrade "build an alternate rootvg" do
targets "(vios1,vios2),(vios3,vios4),(vios5)"
altdisks "(hdisk1,hdisk2)(hdisk1,)()"
action_list "altdisk_copy"
action :upgrade
end

aix_viosupgrade 'viosupgrade VIOSES on current rootvg' do
targets '(vios1,vios1),(vios3,vios4)'
ios_mksysb_name 'ios_1844B_72M'
viosupgrade_type 'bosinst'
common_resources 'master_net_conf'
action_list 'validate,upgrade'
end

aix_viosupgrade 'viosupgrade VIOSES on alternate disks ' do
targets '(vios1,vios1),(vios3,vios4)'
ios_mksysb_name 'ios_1844B_72M'
viosupgrade_type 'altdisk'
installdisks '(hdisk2,hdisk2),(hdisk0,hdisk4)'
common_resources 'master_net_conf'
action_list 'validate,upgrade'
end

aix_viosupgrade 'viosupgrade VIOSES on current rootvg using viosupgrade for building altinst_rootvg' do
targets '(vios1,vios1),(vios3,vios4)'
ios_mksysb_name 'ios_1844B_72M'
viosupgrade_type 'bosinst'
altdisks '(hdisk1,hdisk1),(hdisk2,hdisk2)'
common_resources 'master_net_conf'
action_list 'validate,upgrade'
viosupgrade_alt_disk_copy 'yes'
end

aix_viosupgrade "remove alternate rootvg" do
targets "(vios1,vios2),(vios3,vios4),(vios5)"
action_list "altdisk_cleanup"
action :update
end

```

### niminit

Use niminit to configure the nimclient package. This will look if /etc/niminfo exists and create it if it does not exist. You can the use nimclient provider after niminiting the client.
Expand Down
Binary file not shown.
Binary file not shown.
Binary file not shown.
22 changes: 22 additions & 0 deletions examples/vios_upgrade.rb
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
# upgrade the VIOSES using viosupgrade command

Chef::Recipe.send(:include, AIX::PatchMgmt)

aix_viosupgrade 'viosupgrade VIOSES on alternate disks ' do
targets '(vios1,vios1),(vios3,vios4)'
ios_mksysb_name 'ios_1844B_72M'
viosupgrade_type 'altdisk'
installdisks '(hdisk2,hdisk2),(hdisk0,hdisk4)'
common_resources 'master_net_conf'
action_list 'validate,upgrade'

end

# aix_viosupgrade 'viosupgrade VIOSES on current rootvg' do
# targets '(vios1,vios1),(vios3,vios4)'
# ios_mksysb_name 'ios_1844B_72M'
# viosupgrade_type 'bosinst'
# common_resources 'master_net_conf'
# action_list 'validate,upgrade'
# end

Loading