I manually migrated the settings.yaml and it seems to pass validation:
[root@netman cobbler]# cobbler-settings -c /etc/cobbler/settings.yaml validate
Settings file successfully validated!
But cobblerd still fails.
File "/usr/lib/python3.6/site-packages/cobbler/items/distro.py", line 335, in
remote_boot_initrd
raise TypeError("remote_boot_initrd must be of type str!")
TypeError: remote_boot_initrd must be of type str!
The above exception was the direct cause of the following exception:
Traceback (most recent call last):
File "/usr/bin/cobblerd", line 92, in main
execute_settings_automigration=options.automigration)
File "/usr/lib/python3.6/site-packages/cobbler/api.py", line 105, in __init__
self.deserialize()
File "/usr/lib/python3.6/site-packages/cobbler/api.py", line 1797, in
deserialize
return self._collection_mgr.deserialize()
File "/usr/lib/python3.6/site-packages/cobbler/cobbler_collections/manager.py",
line 215, in deserialize
% (collection.collection_type(), e)) from e
cobbler.cexceptions.CX: 'serializer: error loading collection distro:
remote_boot_initrd must be of type str!. Check /etc/cobbler/modules.conf’
-jeremy
On Wednesday, Jul 27, 2022 at 5:05 PM, Jeremy Hansen
<jeremy(a)skidrow.la (mailto:jeremy@skidrow.la)> wrote:
I’m trying to upgrade from 3.1.2 to 3.3.3. Running in to these errors:
Jul 27 17:00:11 netman.la1.clx.corp systemd[1]: Started Cobbler Helper Daemon.
Jul 27 17:00:11 netman.la1.clx.corp cobblerd[2528659]: Traceback (most recent call
last):
Jul 27 17:00:11 netman.la1.clx.corp cobblerd[2528659]: File
"/usr/bin/cobblerd", line 92, in main
Jul 27 17:00:11 netman.la1.clx.corp cobblerd[2528659]:
execute_settings_automigration=options.automigration)
Jul 27 17:00:11 netman.la1.clx.corp cobblerd[2528659]: File
"/usr/lib/python3.6/site-packages/cobbler/api.py", line 93, in __init__
Jul 27 17:00:11 netman.la1.clx.corp cobblerd[2528659]: execute_settings_automigration)
Jul 27 17:00:11 netman.la1.clx.corp cobblerd[2528659]: File
"/usr/lib/python3.6/site-packages/cobbler/api.py", line 156, in
__generate_settings
Jul 27 17:00:11 netman.la1.clx.corp cobblerd[2528659]: normalized_settings =
settings.migrate(yaml_dict, settings_path)
Jul 27 17:00:11 netman.la1.clx.corp cobblerd[2528659]: File
"/usr/lib/python3.6/site-packages/cobbler/settings/__init__.py", line 389, in
migrate
Jul 27 17:00:11 netman.la1.clx.corp cobblerd[2528659]: return
migrations.migrate(yaml_dict, settings_path)
Jul 27 17:00:11 netman.la1.clx.corp cobblerd[2528659]: File
"/usr/lib/python3.6/site-packages/cobbler/settings/migrations/__init__.py", line
252, in migrate
Jul 27 17:00:11 netman.la1.clx.corp cobblerd[2528659]: return auto_migrate(yaml_dict,
settings_path)
Jul 27 17:00:11 netman.la1.clx.corp cobblerd[2528659]: File
"/usr/lib/python3.6/site-packages/cobbler/settings/migrations/__init__.py", line
226, in auto_migrate
Jul 27 17:00:11 netman.la1.clx.corp cobblerd[2528659]: raise
RuntimeError("Automigration not possible due to undiscoverable settings!")
Jul 27 17:00:11 netman.la1.clx.corp cobblerd[2528659]: RuntimeError: Automigration not
possible due to undiscoverable settings!
Jul 27 17:00:11 netman.la1.clx.corp systemd[1]: cobblerd.service: Main process exited,
code=exited, status=1/FAILURE
Jul 27 17:00:11 netman.la1.clx.corp systemd[1]: cobblerd.service: Failed with result
'exit-code’.
If I turn off automigrate:
Jul 27 17:04:00 netman.la1.clx.corp systemd[1]: Started Cobbler Helper Daemon.
Jul 27 17:04:00 netman.la1.clx.corp cobblerd[2529201]: Traceback (most recent call
last):
Jul 27 17:04:00 netman.la1.clx.corp cobblerd[2529201]: File
"/usr/lib/python3.6/site-packages/cobbler/api.py", line 161, in
__generate_settings
Jul 27 17:04:00 netman.la1.clx.corp cobblerd[2529201]: normalized_settings =
settings.validate_settings(yaml_dict)
Jul 27 17:04:00 netman.la1.clx.corp cobblerd[2529201]: File
"/usr/lib/python3.6/site-packages/cobbler/settings/__init__.py", line 283, in
validate_settings
Jul 27 17:04:00 netman.la1.clx.corp cobblerd[2529201]: return
migrations.normalize(settings_content)
Jul 27 17:04:00 netman.la1.clx.corp cobblerd[2529201]: File
"/usr/lib/python3.6/site-packages/cobbler/settings/migrations/__init__.py", line
291, in normalize
Jul 27 17:04:00 netman.la1.clx.corp cobblerd[2529201]: return
VERSION_LIST[version].normalize(settings)
Jul 27 17:04:00 netman.la1.clx.corp cobblerd[2529201]: File
"/usr/lib/python3.6/site-packages/cobbler/settings/migrations/V3_3_3.py", line
258, in normalize
Jul 27 17:04:00 netman.la1.clx.corp cobblerd[2529201]: return schema.validate(settings)
Jul 27 17:04:00 netman.la1.clx.corp cobblerd[2529201]: File
"/usr/lib/python3.6/site-packages/schema.py", line 415, in validate
Jul 27 17:04:00 netman.la1.clx.corp cobblerd[2529201]: raise SchemaWrongKeyError(message,
e)
Jul 27 17:04:00 netman.la1.clx.corp cobblerd[2529201]: schema.SchemaWrongKeyError: Wrong
key 'remote_boot_initrd' in {'auto_migrate_settings': False,
'allow_duplicate_hostnames': False, 'allow_duplicate_ips': False,
'allow_duplicate_macs': False, 'allow_dynamic_settings': False,
'anamon_enabled': False, 'authn_pam_service': 'login',
'auth_token_expiration': 3600, 'autoinstall_snippets_dir':
'/var/lib/cobbler/snippets', 'autoinstall_templates_dir':
'/var/lib/cobbler/templates', 'boot_loader_conf_template_dir':
'/etc/cobbler/boot_loader_conf', 'bootloaders_dir':
'/var/lib/cobbler/loaders', 'bootloaders_formats': {'aarch64':
{'binary_name': 'grubaa64.efi'}, 'arm': {'binary_name':
'bootarm.efi'}, 'arm64-efi': {'binary_name':
'grubaa64.efi', 'extra_modules': ['efinet']}, 'i386-efi':
{'binary_name': 'bootia32.efi'}, 'i386-pc-pxe':
{'binary_name': 'grub.0', 'mod_dir': 'i386-pc',
'extra_modules': ['chain', 'pxe', 'biosdisk']},
'i686': {'binary_name': 'bootia32.efi'}, 'IA64':
{'binary_name': 'bootia64.efi'}, 'powerpc-ieee1275':
{'binary_name': 'grub.ppc64le', 'extra_modules': ['net',
'ofnet']}, 'x86_64-efi': {'binary_name': 'grubx86.efi',
'extra_modules': ['chain', 'efinet']}},
'bootloaders_modules': ['btrfs', 'ext2', 'xfs',
'jfs', 'reiserfs', 'all_video', 'boot', 'cat',
'configfile', 'echo', 'fat', 'font', 'gfxmenu',
'gfxterm', 'gzio', 'halt', 'iso9660', 'jpeg',
'linux', 'loadenv', 'minicmd', 'normal',
'part_apple', 'part_gpt', 'part_msdos', 'password_pbkdf2',
'png', 'reboot', 'search', 'search_fs_file',
'search_fs_uuid', 'search_label', 'sleep', 'test',
'true', 'video', 'mdraid09', 'mdraid1x', 'lvm',
'serial', 'regexp', 'tr', 'tftp', 'http',
'luks', 'gcry_rijndael', 'gcry_sha1', 'gcry_sha256'],
'syslinux_dir': '/usr/share/syslinux', 'syslinux_memdisk_folder':
'/usr/share/syslinux', 'syslinux_pxelinux_folder':
'/usr/share/syslinux', 'grub2_mod_dir': '/usr/lib/grub',
'bootloaders_shim_folder': '/boot/efi/EFI/*/',
'bootloaders_shim_file': 'shim[a-zA-Z0-9]*\\.efi',
'bootloaders_ipxe_folder': '/usr/share/ipxe/',
'build_reporting_enabled': True, 'build_reporting_sender':
'cobbler(a)skidrow.la', 'build_reporting_email':
['cobbler(a)skidrow.la'], 'build_reporting_smtp_server':
'cmx01.la1.clx.corp', 'build_reporting_subject': 'Cobbler Build',
'build_reporting_ignorelist': [], 'cheetah_import_whitelist':
['random', 're', 'time', 'netaddr'],
'createrepo_flags': '-c cache -s sha', 'autoinstall':
'sample.ks', 'default_name_servers': [],
'default_name_servers_search': [], 'default_ownership': ['admin'],
'default_password_crypted': '$1$Q1fXNs7z$OCQxmmjHDWVeZBHwCykTm0',
'default_template_type': 'cheetah', 'default_virt_bridge':
'xenbr0', 'default_virt_file_size': 5.0, 'default_virt_ram': 512,
'default_virt_type': 'xenpv', 'enable_ipxe': True,
'enable_menu': True, 'http_port': 80, 'kernel_options': {},
'ldap_server': 'ldap.example.com', 'ldap_base_dn':
'DC=example,DC=com', 'ldap_port': 389, 'ldap_tls': True,
'ldap_anonymous_bind': True, 'ldap_search_bind_dn': '',
'ldap_search_passwd': '', 'ldap_search_prefix': 'uid=',
'ldap_tls_cacertfile': '', 'ldap_tls_keyfile': '',
'ldap_tls_certfile': '', 'ldap_tls_cacertdir': '',
'ldap_tls_cipher_suite': '', 'ldap_tls_reqcert': '',
'mgmt_classes': [], 'mgmt_parameters': {'from_cobbler': True},
'puppet_auto_setup': False, 'sign_puppet_certs_automatically': False,
'puppetca_path': '/usr/bin/puppet',
'remove_old_puppet_certs_automatically': False,
'puppet_parameterized_classes': True, 'manage_dhcp': True,
'manage_dhcp_v6': False, 'manage_dhcp_v4': True, 'next_server_v4':
'192.168.10.10', 'next_server_v6': '::1', 'manage_dns':
True, 'bind_chroot_path': '', 'bind_zonefile_path':
'/var/named', 'bind_master': '127.0.0.1',
'remote_boot_initrd': '127.0.0.1', 'manage_forward_zones':
['subtraverse.intra', 'subtraverse.oob', 'coldlogix.intra',
'sifu.intra', 'clx.corp', 'clx.oob', 'subtraverse.iot',
'dcdpr.intra', 'metascopic.com'], 'manage_reverse_zones':
['192.168.10', '192.168.30', '192.168.40', '192.168.50',
'192.168.60', '192.168.70', '192.168.80', '192.168.100',
'192.168.200', '10.0.80'], 'manage_tftpd': True,
'tftpboot_location': '/var/lib/tftpboot', 'manage_rsync': True,
'power_management_default_type': 'ipmilanplus', 'pxe_just_once':
True, 'nopxe_with_triggers': True, 'redhat_management_server':
'xmlrpc.rhn.redhat.com', 'redhat_management_permissive': False,
'redhat_management_key': '', 'register_new_installs': True,
'reposync_flags': '--newest-only --delete --refresh --remote-time',
'reposync_rsync_flags': '-rltDv --copy-unsafe-links',
'restart_dns': True, 'restart_dhcp': True, 'run_install_triggers':
True, 'scm_track_enabled': False, 'scm_track_mode': 'git',
'scm_track_author': 'cobbler <cobbler@localhost>',
'scm_push_script': '/bin/true', 'server':
'netman.la1.clx.corp', 'client_use_localhost': False,
'client_use_https': False, 'virt_auto_boot': True, 'webdir':
'/var/www/cobbler', 'webdir_whitelist': ['misc', 'web',
'webui', 'localmirror', 'repo_mirror', 'distro_mirror',
'images', 'links', 'pub', 'repo_profile',
'repo_system', 'svc', 'rendered', '.link_cache'],
'xmlrpc_port': 25151, 'yum_post_install_mirror': True,
'yum_distro_priority': 1, 'yumdownloader_flags': '--resolve',
'serializer_pretty_json': False, 'replicate_rsync_options':
'-avzH', 'replicate_repo_rsync_options': '-avzH',
'always_write_dhcp_entries': False, 'proxy_url_ext': '',
'proxy_url_int': '', 'jinja2_includedir':
'/var/lib/cobbler/jinja2', 'convert_server_to_ip': False,
'buildisodir': '/var/cache/cobbler/buildiso', 'cobbler_master':
'', 'default_virt_disk_driver': 'raw', 'grubconfig_dir':
'/var/lib/cobbler/grub_config', 'iso_template_dir':
'/etc/cobbler/iso', 'puppet_server': '', 'puppet_version':
2, 'signature_path': '/var/lib/cobbler/distro_signatures.json',
'signature_url': 'https://cobbler.github.io/signatures/3.0.x/latest.json',
'include': ['/etc/cobbler/settings.d/*.settings'],
'bind_manage_ipmi': True, 'manage_genders': False,
'nsupdate_enabled': False, 'nsupdate_tsig_algorithm':
'hmac-sha512', 'nsupdate_tsig_key': ['cobbler_update_key.',
'hvnK54HFJXFasHjzjEn09ASIkCOGYSnofRq4ejsiBHz3udVyGiuebFGAswSjKUxNuhmllPrkI0HRSSmM2qvZug=='],
'nsupdate_log': '/var/log/cobbler/nsupdate.log',
'windows_enabled': False, 'windows_template_dir':
'/etc/cobbler/windows', 'samba_distro_share': 'DISTRO'}
Jul 27 17:04:00 netman.la1.clx.corp cobblerd[2529201]: The above exception was the direct
cause of the following exception:
Jul 27 17:04:00 netman.la1.clx.corp cobblerd[2529201]: Traceback (most recent call
last):
Jul 27 17:04:00 netman.la1.clx.corp cobblerd[2529201]: File
"/usr/bin/cobblerd", line 92, in main
Jul 27 17:04:00 netman.la1.clx.corp cobblerd[2529201]:
execute_settings_automigration=options.automigration)
Jul 27 17:04:00 netman.la1.clx.corp cobblerd[2529201]: File
"/usr/lib/python3.6/site-packages/cobbler/api.py", line 93, in __init__
Jul 27 17:04:00 netman.la1.clx.corp cobblerd[2529201]: execute_settings_automigration)
Jul 27 17:04:00 netman.la1.clx.corp cobblerd[2529201]: File
"/usr/lib/python3.6/site-packages/cobbler/api.py", line 164, in
__generate_settings
Jul 27 17:04:00 netman.la1.clx.corp cobblerd[2529201]: from error
Jul 27 17:04:00 netman.la1.clx.corp cobblerd[2529201]: ValueError: Settings are invalid
and auto-migration is disabled. Please correct this manually!
Jul 27 17:04:00 netman.la1.clx.corp systemd[1]: cobblerd.service: Main process exited,
code=exited, status=1/FAILURE
Jul 27 17:04:00 netman.la1.clx.corp systemd[1]: cobblerd.service: Failed with result
'exit-code’.
The new settings file didn’t include any reference to remote_boot_initrd, so I wasn’t
exactly sure how to configure this setting. When I take it out:
Jul 27 17:05:28 netman.la1.clx.corp cobblerd[2529539]: cobbler.cexceptions.CX:
'serializer: error loading collection distro: remote_boot_initrd must be of type str!.
Check /etc/cobbler/modules.conf'
Jul 27 17:05:28 netman.la1.clx.corp systemd[1]: cobblerd.service: Main process exited,
code=exited, status=1/FAILURE
Jul 27 17:05:28 netman.la1.clx.corp systemd[1]: cobblerd.service: Failed with result
'exit-code’.
Any suggestions?
Thanks!
-jeremy