Provisioning hosts Red Hat Satellite 6.15 Configure provisioning resources and networking, provision physical machines, provision virtual machines on cloud providers or virtualization infrastructure, create hosts manually or by using the Discovery service Red Hat Satellite Documentation Team satellite-doc-list@redhat.com

Commands:
hammer host list --organization " My_Organization " --location " My_Location "
hammer os create --architectures "x86_64" --description " My_Operating_System " --family "Redhat" --major 8 --media "Red Hat" --minor 8 --name "Red Hat Enterprise Linux" --partition-tables " My_Partition_Table " --provisioning-templates " My_Provisioning_Template "
PARTID=USD(hammer --csv partition-table list | grep "Kickstart default," | cut -d, -f1) PXEID=USD(hammer --csv template list --per-page=1000 | grep "Kickstart default PXELinux" | cut -d, -f1) SATID=USD(hammer --csv template list --per-page=1000 | grep "provision" | grep ",Kickstart default" | cut -d, -f1) for i in USD(hammer --no-headers --csv os list | awk -F, {'print USD1'}) do hammer partition-table add-operatingsystem --id="USD{PARTID}" --operatingsystem-id="USD{i}" hammer template add-operatingsystem --id="USD{PXEID}" --operatingsystem-id="USD{i}" hammer os set-default-template --id="USD{i}" --config-template-id=USD{PXEID} hammer os add-config-template --id="USD{i}" --config-template-id=USD{SATID} hammer os set-default-template --id="USD{i}" --config-template-id=USD{SATID} done
hammer os info --id 1
hammer architecture create --name " My_Architecture " --operatingsystems " My_Operating_System "
hammer model create --hardware-model " My_Hardware_Model " --info " My_Description " --name " My_Hardware_Model_Name " --vendor-class " My_Vendor_Class "
hammer medium list --organization " My_Organization "
http://download.example.com/centos/USDversion/Server/USDarch/os/
hammer medium create --locations " My_Location " --name " My_Operating_System " --organizations " My_Organization " --os-family "Redhat" --path "http://download.example.com/centos/USDversion/Server/USDarch/os/"
zerombr clearpart --all --initlabel autopart
zerombr clearpart --all --initlabel autopart
hammer partition-table create --file " ~/My_Partition_Table " --locations " My_Location " --name " My_Partition_Table " --organizations " My_Organization " --os-family "Redhat" --snippet false
zerombr clearpart --all --initlabel autopart <%= host_param('autopart_options') %>
#Dynamic (do not remove this line) MEMORY=USD((`grep MemTotal: /proc/meminfo | sed 's/^MemTotal: *//'|sed 's/ .*//'` / 1024)) if [ "USDMEMORY" -lt 2048 ]; then SWAP_MEMORY=USD((USDMEMORY * 2)) elif [ "USDMEMORY" -lt 8192 ]; then SWAP_MEMORY=USDMEMORY elif [ "USDMEMORY" -lt 65536 ]; then SWAP_MEMORY=USD((USDMEMORY / 2)) else SWAP_MEMORY=32768 fi cat <<EOF > /tmp/diskpart.cfg zerombr clearpart --all --initlabel part /boot --fstype ext4 --size 200 --asprimary part swap --size "USDSWAP_MEMORY" part / --fstype ext4 --size 1024 --grow EOF
hammer template create --file ~/my-template --locations " My_Location " --name " My_Provisioning_Template " --organizations " My_Organization " --type provision
hammer template create --file " /path/to/My_Snippet " --locations " My_Location " --name " My_Template_Name_custom_pre" \ --organizations "_My_Organization " --type snippet
echo "Calling API to report successful host deployment" install -y curl ca-certificates curl -X POST -H "Content-Type: application/json" -d '{"name": "<%= @host.name %>", "operating_system": "<%= @host.operatingsystem.name %>", "status": "provisioned",}' "https://api.example.com/"
hammer template list
hammer os list
hammer template add-operatingsystem --id My_Template_ID --operatingsystem-id My_Operating_System_ID
hammer compute-profile create --name " My_Compute_Profile "
hammer compute-profile values create --compute-attributes " flavor=m1.small,cpus=2,memory=4GB,cpu_mode=default --compute-resource " My_Compute_Resource " --compute-profile " My_Compute_Profile " --volume size= 40GB
hammer compute-profile values update --compute-resource " My_Compute_Resource " --compute-profile " My_Compute_Profile " --attributes " cpus=2,memory=4GB " --interface " type=network,bridge=br1,index=1 " --volume "size= 40GB "
hammer compute-profile update --name " My_Compute_Profile " --new-name " My_New_Compute_Profile "
python3 -c 'import crypt,getpass;pw=getpass.getpass(); print(crypt.crypt(pw)) if (pw==getpass.getpass("Confirm: ")) else exit()'
firewall-cmd --add-port=5900-5930/tcp firewall-cmd --add-port=5900-5930/tcp --permanent
foreman-rake facts:clean
foreman-rake interfaces:clean
satellite-installer --foreman-proxy-tftp-servername 1.2.3.4
foreman-rake orchestration:dhcp:add_missing subnet_name=NAME
foreman-rake orchestration:dhcp:add_missing subnet_name=NAME perform=1
foreman-rake orchestration:dhcp:remove_offending subnet_name=NAME
foreman-rake orchestration:dhcp:remove_offending subnet_name=NAME perform=1
satellite-installer --foreman-proxy-dhcp true --foreman-proxy-dhcp-gateway " 192.168.140.1 " --foreman-proxy-dhcp-managed true --foreman-proxy-dhcp-nameservers " 192.168.140.2 " --foreman-proxy-dhcp-range " 192.168.140.10 192.168.140.110 " --foreman-proxy-dhcp-server " 192.168.140.2 " --foreman-proxy-dns true --foreman-proxy-dns-forwarders " 8.8.8.8 " --foreman-proxy-dns-forwarders " 8.8.4.4 " --foreman-proxy-dns-managed true --foreman-proxy-dns-reverse " 140.168.192.in-addr.arpa " --foreman-proxy-dns-server " 127.0.0.1 " --foreman-proxy-dns-zone " example.com " --foreman-proxy-tftp true --foreman-proxy-tftp-managed true
hammer capsule list
hammer capsule refresh-features --name " satellite.example.com "
hammer capsule info --name " satellite.example.com "
dhcp::pools: isolated.lan: network: 192.168.99.0 mask: 255.255.255.0 gateway: 192.168.99.1 range: 192.168.99.5 192.168.99.49 dns::zones: # creates @ SOA USD::fqdn root.example.com. # creates USD::fqdn A USD::ipaddress example.com: {} # creates @ SOA test.example.net. hostmaster.example.com. # creates test.example.net A 192.0.2.100 example.net: soa: test.example.net soaip: 192.0.2.100 contact: hostmaster.example.com. # creates @ SOA USD::fqdn root.example.org. # does NOT create an A record example.org: reverse: true # creates @ SOA USD::fqdn hostmaster.example.com. 2.0.192.in-addr.arpa: reverse: true contact: hostmaster.example.com.
firewall-cmd --add-service=tftp
firewall-cmd --runtime-to-permanent
iptables --sport 69 --state ESTABLISHED -A OUTPUT -i eth0 -j ACCEPT -m state -p udp service iptables save
IPTABLES_MODULES="ip_conntrack_tftp"
hammer domain create --description " My_Domain " --dns-id My_DNS_ID --locations " My_Location " --name " my-domain.tld " --organizations " My_Organization "
hammer subnet create --boot-mode "DHCP" --description " My_Description " --dhcp-id My_DHCP_ID --dns-id My_DNS_ID --dns-primary "192.168.140.2" --dns-secondary "8.8.8.8" --domains " my-domain.tld" \ --from "192.168.140.111" \ --gateway "192.168.140.1" \ --ipam "DHCP" \ --locations "_My_Location " --mask "255.255.255.0" --name " My_Network " --network "192.168.140.0" --organizations " My_Organization " --tftp-id My_TFTP_ID --to "192.168.140.250"
update-ca-trust enable openssl s_client -showcerts -connect infoblox.example.com :443 </dev/null | openssl x509 -text >/etc/pki/ca-trust/source/anchors/infoblox.crt update-ca-trust extract
curl -u admin:password https:// infoblox.example.com /wapi/v2.0/network
_ref: network/ZG5zLm5ldHdvcmskMTkyLjE2OC4yMDIuMC8yNC8w: infoblox.example.com /24/default
network: 192.168.202.0/24
network_view: default
satellite-installer --enable-foreman-proxy-plugin-dhcp-infoblox --foreman-proxy-dhcp true --foreman-proxy-dhcp-provider infoblox --foreman-proxy-dhcp-server infoblox.example.com --foreman-proxy-plugin-dhcp-infoblox-username admin --foreman-proxy-plugin-dhcp-infoblox-password infoblox --foreman-proxy-plugin-dhcp-infoblox-record-type fixedaddress --foreman-proxy-plugin-dhcp-infoblox-dns-view default --foreman-proxy-plugin-dhcp-infoblox-network-view default
satellite-installer --enable-foreman-proxy-plugin-dns-infoblox --foreman-proxy-dns true --foreman-proxy-dns-provider infoblox --foreman-proxy-plugin-dns-infoblox-dns-server infoblox.example.com --foreman-proxy-plugin-dns-infoblox-username admin --foreman-proxy-plugin-dns-infoblox-password infoblox --foreman-proxy-plugin-dns-infoblox-dns-view default
hammer host create --build true --enabled true --hostgroup " My_Host_Group " --location " My_Location " --mac " My_MAC_Address " --managed true --name " My_Host_Name " --organization " My_Organization "
hammer host interface update --host "_My_Host_Name_" --managed true --primary true --provision true
hammer host create --build true --enabled true --hostgroup " My_Host_Group " --location " My_Location " --mac " My_MAC_Address " --managed true --name " My_Host_Name " --organization " My_Organization "
hammer host interface update --host " My_Host_Name " --managed true --primary true --provision true
hammer bootdisk host --full true --host My_Host_Name
hammer bootdisk subnet --subnet My_Subnet_Name
satellite-maintain packages update grub2-efi
satellite-installer --foreman-proxy-http true --foreman-proxy-httpboot true --foreman-proxy-tftp true
satellite-maintain packages update grub2-efi
satellite-installer --foreman-proxy-http true --foreman-proxy-httpboot true --foreman-proxy-tftp true
hammer host create --build true --enabled true --hostgroup " My_Host_Group " --location " My_Location " --mac " My_MAC_Address " --managed true --name " My_Host_Name " --organization " My_Organization " --pxe-loader "Grub2 UEFI HTTP"
hammer host interface update --host " My_Host_Name " --managed true --primary true --provision true
<%= snippet('create_users') %>
satellite-installer --foreman-proxy-httpboot true --foreman-proxy-tftp true
satellite-maintain packages install ipxe-bootimgs
cp /usr/share/ipxe/ipxe.lkrn /var/lib/tftpboot/
cp /usr/share/ipxe/undionly.kpxe /var/lib/tftpboot/undionly-ipxe.0
restorecon -RvF /var/lib/tftpboot/
satellite-installer --foreman-proxy-dhcp-ipxefilename "http:// satellite.example.com /unattended/iPXE?bootstrap=1"
satellite-installer --foreman-proxy-dhcp-ipxe-bootstrap true
satellite-installer --enable-foreman-plugin-discovery --enable-foreman-proxy-plugin-discovery
satellite-maintain packages install foreman-discovery-image
satellite-installer --enable-foreman-proxy-plugin-discovery
satellite-maintain packages install foreman-discovery-image
LABEL discovery MENU LABEL Foreman Discovery Image KERNEL boot/fdi-image/vmlinuz0 APPEND initrd=boot/fdi-image/initrd0.img rootflags=loop root=live:/fdi.iso rootfstype=auto ro rd.live.image acpi=force rd.luks=0 rd.md=0 rd.dm=0 rd.lvm=0 rd.bootif=0 rd.neednet=0 nomodeset proxy.url=<%= foreman_server_url %> proxy.type=foreman IPAPPEND 2
menuentry 'Foreman Discovery Image' --id discovery { linuxefi boot/fdi-image/vmlinuz0 rootflags=loop root=live:/fdi.iso rootfstype=auto ro rd.live.image acpi=force rd.luks=0 rd.md=0 rd.dm=0 rd.lvm=0 rd.bootif=0 rd.neednet=0 nomodeset proxy.url=<%= foreman_server_url %> proxy.type=foreman BOOTIF=01-USDmac initrdefi boot/fdi-image/initrd0.img }
proxy.url=https:// capsule.example.com :9090 proxy.type=proxy
fdi.vlan.primary= example_VLAN_ID
hammer discovery list
hammer discovery provision --build true --enabled true --hostgroup " My_Host_Group " --location " My_Location " --managed true --name " My_Host_Name " --new-name " My_New_Host_Name " --organization " My_Organization "
hammer discovery-rule create --enabled true --hostgroup " My_Host_Group " --hostname "hypervisor-<%= rand(99999) %>" --hosts-limit 5 --name " My_Hypervisor " --priority 5 --search "cpu_count > 8"
hammer discovery auto-provision --name "macabcdef123456"
dd bs=4M if=/usr/share/foreman-discovery-image/foreman-discovery-image-3.4.4-5.iso of=/dev/sdb
https://satellite.example.com:9090
discovery-remaster ~/iso/foreman-discovery-image-3.4.4-5.iso "fdi.pxip=192.168.140.20/24 fdi.pxgw=192.168.140.1 fdi.pxdns=192.168.140.2 proxy.url=https:// satellite.example.com :9090 proxy.type=proxy fdi.pxfactname1= customhostname fdi.pxfactvalue1= myhost fdi.pxmac=52:54:00:be:8e:8c fdi.pxauto=1"
dd bs=4M if=/usr/share/foreman-discovery-image/foreman-discovery-image-3.4.4-5.iso of=/dev/sdb
. ├── autostart.d │ └── 01_zip.sh ├── bin │ └── ntpdate ├── facts │ └── test.rb └── lib ├── libcrypto.so.1.0.0 └── ruby └── test.rb
zip -r my_extension.zip .
fdi.zips=zip1.zip,boot/zip2.zip
fdi.ssh=1 fdi.rootpw= My_Password
usermod -a -G libvirt non_root_user
su foreman -s /bin/bash
ssh-keygen
ssh-copy-id root@kvm.example.com
exit
satellite-maintain packages install libvirt-client
su foreman -s /bin/bash -c 'virsh -c qemu+ssh://root@kvm.example.com/system list'
qemu+ssh:// root@kvm.example.com /system
virsh edit your_VM_name <graphics type='vnc' port='-1' autoport='yes' listen='0.0.0.0' passwd=' your_randomly_generated_password '>
hammer compute-resource create --name " My_KVM_Server " --provider "Libvirt" --description "KVM server at kvm.example.com " --url "qemu+ssh://root@ kvm.example.com/system " --locations "New York" --organizations " My_Organization "
/var/lib/libvirt/images/TestImage.qcow2
hammer compute-resource image create --name " KVM Image " --compute-resource " My_KVM_Server " --operatingsystem "RedHat version " --architecture "x86_64" --username root --user-data false --uuid "/var/lib/libvirt/images/ KVMimage .qcow2" \
hammer compute-profile create --name "Libvirt CP"
hammer compute-profile values create --compute-profile "Libvirt CP" --compute-resource " My_KVM_Server " --interface "compute_type=network,compute_model=virtio,compute_network= examplenetwork " --volume "pool_name=default,capacity=20G,format_type=qcow2" --compute-attributes "cpus=1,memory=1073741824"
hammer host create --build true --compute-attributes="cpus=1,memory=1073741824" --compute-resource " My_KVM_Server " --enabled true --hostgroup " My_Host_Group " --interface "managed=true,primary=true,provision=true,compute_type=network,compute_network= examplenetwork " --location " My_Location " --managed true --name " My_Host_Name " --organization " My_Organization " --provision-method "build" --root-password " My_Password " --volume="pool_name=default,capacity=20G,format_type=qcow2"
hammer host create --compute-attributes="cpus=1,memory=1073741824" --compute-resource " My_KVM_Server " --enabled true --hostgroup " My_Host_Group " --image " My_KVM_Image " --interface "managed=true,primary=true,provision=true,compute_type=network,compute_network=examplenetwork" --location " My_Location " --managed true --name " My_Host_Name " --organization " My_Organization " --provision-method "image" --volume="pool_name=default,capacity=20G,format_type=qcow2"
hammer compute-resource create --name " My_RHV " --provider "Ovirt" --description "RHV server at rhv.example.com " --url " https://rhv.example.com/ovirt-engine/api/v4 " --user " Satellite_User " --password " My_Password " --locations "New York" --organizations " My_Organization " --datacenter " My_Datacenter "
dnf install cloud-init
datasource_list: ["NoCloud", "ConfigDrive"]
hammer compute-resource image create --name " RHV_Image " --compute-resource " My_RHV " --operatingsystem "RedHat version " --architecture "x86_64" --username root --uuid "9788910c-4030-4ae0-bad7-603375dd72b1" \
<%# kind: user_data name: Cloud-init -%> #cloud-config hostname: <%= @host.shortname %> <%# Allow user to specify additional SSH key as host parameter -%> <% if @host.params['sshkey'].present? || @host.params['remote_execution_ssh_keys'].present? -%> ssh_authorized_keys: <% if @host.params['sshkey'].present? -%> - <%= @host.params['sshkey'] %> <% end -%> <% if @host.params['remote_execution_ssh_keys'].present? -%> <% @host.params['remote_execution_ssh_keys'].each do |key| -%> - <%= key %> <% end -%> <% end -%> <% end -%> runcmd: - | #!/bin/bash <%= indent 4 do snippet 'subscription_manager_registration' end %> <% if @host.info['parameters']['realm'] && @host.realm && @host.realm.realm_type == 'Red Hat Identity Management' -%> <%= indent 4 do snippet 'freeipa_register' end %> <% end -%> <% unless @host.operatingsystem.atomic? -%> # update all the base packages from the updates repository yum -t -y -e 0 update <% end -%> <% # safemode renderer does not support unary negation non_atomic = @host.operatingsystem.atomic? ? false : true pm_set = @host.puppetmaster.empty? ? false : true puppet_enabled = non_atomic && (pm_set || @host.params['force-puppet']) %> <% if puppet_enabled %> yum install -y puppet cat > /etc/puppet/puppet.conf << EOF <%= indent 4 do snippet 'puppet.conf' end %> EOF # Setup puppet to run on system reboot /sbin/chkconfig --level 345 puppet on /usr/bin/puppet agent --config /etc/puppet/puppet.conf --onetime --tags no_such_tag <%= @host.puppetmaster.blank? ? '' : "--server #{@host.puppetmaster}" %> --no-daemonize /sbin/service puppet start <% end -%> phone_home: url: <%= foreman_url('built') %> post: [] tries: 10pp
hammer compute-profile create --name "Red Hat Virtualization CP"
hammer compute-profile values create --compute-profile "Red Hat Virtualization CP" --compute-resource " My_RHV " --interface "compute_interface= Interface_Type ,compute_name=eth0,compute_network=satnetwork" --volume "size_gb=20G,storage_domain=Data,bootable=true" --compute-attributes "cluster=Default,cores=1,memory=1073741824,start=true""
hammer host create --build true --compute-attributes="cluster=Default,cores=1,memory=1073741824,start=true" --compute-resource " My RHV_" --enabled true --hostgroup " My_Host_Group " --interface "managed=true,primary=true,provision=true,compute_name=eth0,compute_network=satnetwork" --location " My_Location " --managed true --name " My_Host_Name " --organization " My_Organization " --provision-method build --volume="size_gb=20G,storage_domain=Data,bootable=true"
hammer host create --compute-attributes="cluster=Default,cores=1,memory=1073741824,start=true" --compute-resource " My RHV_" --enabled true --hostgroup " My_Host_Group " --image " My RHV_Image_" --interface "managed=true,primary=true,provision=true,compute_name=eth0,compute_network=satnetwork" --location " My_Location " --managed true --name " My_Host_Name " --organization " My_Organization " --provision-method "image" --volume="size_gb=20G,storage_domain=Data,bootable=true"
virsh edit your_VM_name <graphics type='vnc' port='-1' autoport='yes' listen='0.0.0.0' passwd=' your_randomly_generated_password '>
hammer compute-resource create --datacenter " My_Datacenter " --description "vSphere server at vsphere.example.com " --locations " My_Location " --name "My_vSphere" --organizations " My_Organization " --password " My_Password " --provider "Vmware" --server " vsphere.example.com " --user " My_User "
hammer compute-resource image create --architecture " My_Architecture " --compute-resource " My_VMware " --name " My_Image " --operatingsystem " My_Operating_System " --username root --uuid " My_UUID "
hammer compute-profile create --name " My_Compute_Profile "
hammer compute-profile values create --compute-attributes "cpus=1,corespersocket=2,memory_mb=1024,cluster=MyCluster,path=MyVMs,start=true" --compute-profile " My_Compute_Profile " --compute-resource " My_VMware " --interface "compute_type=VirtualE1000,compute_network=mynetwork --volume "size_gb=20G,datastore=Data,name=myharddisk,thin=true"
hammer host create --build true --compute-attributes="cpus=1,corespersocket=2,memory_mb=1024,cluster=MyCluster,path=MyVMs,start=true" --compute-resource " My_VMware " --enabled true --hostgroup " My_Host_Group " --interface "managed=true,primary=true,provision=true,compute_type=VirtualE1000,compute_network=mynetwork" --location " My_Location " --managed true --name " My_Host " --organization " My_Organization " --provision-method build --volume="size_gb=20G,datastore=Data,name=myharddisk,thin=true"
hammer host create --compute-attributes="cpus=1,corespersocket=2,memory_mb=1024,cluster=MyCluster,path=MyVMs,start=true" --compute-resource " My_VMware " --enabled true --hostgroup " My_Host_Group " --image " My_VMware_Image " --interface "managed=true,primary=true,provision=true,compute_type=VirtualE1000,compute_network=mynetwork" --location " My_Location " --managed true --name " My_Host " --organization " My_Organization " --provision-method image --volume="size_gb=20G,datastore=Data,name=myharddisk,thin=true"
dnf install cloud-init open-vm-tools perl-interpreter perl-File-Temp
cat << EOM > /etc/cloud/cloud.cfg.d/01_network.cfg network: config: disabled EOM
cat << EOM > /etc/cloud/cloud.cfg.d/10_datasource.cfg datasource_list: [NoCloud] datasource: NoCloud: seedfrom: https://satellite.example.com/userdata/ EOM
cat << EOM > /etc/cloud/cloud.cfg cloud_init_modules: - bootcmd - ssh cloud_config_modules: - runcmd cloud_final_modules: - scripts-per-once - scripts-per-boot - scripts-per-instance - scripts-user - phone-home system_info: distro: rhel paths: cloud_dir: /var/lib/cloud templates_dir: /etc/cloud/templates ssh_svcname: sshd EOM
update-ca-trust enable
wget -O /etc/pki/ca-trust/source/anchors/cloud-init-ca.crt https:// satellite.example.com /pub/katello-server-ca.crt
update-ca-trust extract
systemctl stop rsyslog systemctl stop auditd
dnf remove --oldinstallonly
package-cleanup --oldkernels --count=1 dnf clean all
logrotate -f /etc/logrotate.conf rm -f /var/log/*-???????? /var/log/*.gz rm -f /var/log/dmesg.old rm -rf /var/log/anaconda cat /dev/null > /var/log/audit/audit.log cat /dev/null > /var/log/wtmp cat /dev/null > /var/log/lastlog cat /dev/null > /var/log/grubby
rm -f /etc/udev/rules.d/70*
rm -f /etc/sysconfig/network-scripts/ifcfg-ens* rm -f /etc/sysconfig/network-scripts/ifcfg-eth*
rm -f /etc/ssh/ssh_host_*
rm -rf ~root/.ssh/known_hosts
rm -f ~root/.bash_history unset HISTFILE
curl -H "Accept:application/json" -H "Content-Type:application/json" -X PUT -u username : password -k https:// satellite.example.com /api/compute_resources/ compute_resource_id /refresh_cache
satellite-installer --enable-foreman-plugin-kubevirt
oc get secrets
oc get secrets MY_SECRET -o jsonpath='{.data.token}' | base64 -d | xargs
hammer compute-resource create --name " My_OpenStack " --provider "OpenStack" --description " My OpenStack environment at openstack.example.com " --url " http://openstack.example.com :5000/v3/auth/tokens" --user " My_Username " --password " My_Password " --tenant " My_Openstack " --domain " My_User_Domain " --project-domain-id " My_Project_Domain_ID " --project-domain-name " My_Project_Domain_Name " --locations "New York" --organizations " My_Organization "
hammer compute-resource image create --name "OpenStack Image" --compute-resource " My_OpenStack_Platform " --operatingsystem "RedHat version " --architecture "x86_64" --username root --user-data true --uuid " /path/to/OpenstackImage.qcow2 "
hammer compute-profile values create --compute-resource " My_Laptop " --compute-profile " My_Compute_Profile " --compute-attributes "availability_zone= My_Zone ,image_ref= My_Image ,flavor_ref=m1.small,tenant_id=openstack,security_groups=default,network= My_Network ,boot_from_volume=false"
hammer host create --compute-attributes="flavor_ref=m1.small,tenant_id=openstack,security_groups=default,network=mynetwork" --compute-resource " My_OpenStack_Platform " --enabled true --hostgroup " My_Host_Group " --image " My_OpenStack_Image " --interface "managed=true,primary=true,provision=true" --location " My_Location " --managed true --name " My_Host_Name " --organization " My_Organization " --provision-method image
satellite-installer --enable-foreman-compute-ec2
hammer compute-resource create --description "Amazon EC2 Public Cloud` --locations " My_Location " --name " My_EC2_Compute_Resource " --organizations " My_Organization " --password " My_Secret_Key " --provider "EC2" --region " My_Region " --user " My_User_Name "
hammer compute-resource image create --architecture " My_Architecture " --compute-resource " My_EC2_Compute_Resource " --name " My_Amazon_EC2_Image " --operatingsystem " My_Operating_System " --user-data true --username root --uuid "ami- My_AMI_ID "
hammer compute-profile values create --compute-resource " My_Laptop " --compute-profile " My_Compute_Profile " --compute-attributes "flavor_id=1,availability_zone= My_Zone ,subnet_id=1,security_group_ids=1,managed_ip=public_ip"
hammer host create --compute-attributes="flavor_id=m1.small,image_id=TestImage,availability_zones=us-east-1a,security_group_ids=Default,managed_ip=Public" --compute-resource " My_EC2_Compute_Resource " --enabled true --hostgroup " My_Host_Group " --image " My_Amazon_EC2_Image " --interface "managed=true,primary=true,provision=true,subnet_id=EC2" --location " My_Location " --managed true --name "My_Host_Name_" --organization " My_Organization " --provision-method image
hammer compute-resource list
su - postgres
psql
postgres=# \c foreman
select secret from key_pairs where compute_resource_id = 3; secret
vim Keyname .pem
chmod 600 Keyname .pem
ssh -i Keyname .pem ec2-user@ example.aws.com
sudo -s << EOS _Template_ _Body_ EOS
scp My_GCE_Key .json root@satellite.example.com:/etc/foreman/ My_GCE_Key .json
chown root:foreman /etc/foreman/ My_GCE_Key .json
chmod 0640 /etc/foreman/ My_GCE_Key .json
restorecon -vv /etc/foreman/ My_GCE_Key .json
hammer compute-resource create --key-path "/etc/foreman/ My_GCE_Key .json" --name " My_GCE_Compute_Resource " --provider "gce" --zone " My_Zone "
hammer compute-resource image create --name ' gce_image_name ' --compute-resource ' gce_cr ' --operatingsystem-id 1 --architecture-id 1 --uuid ' 3780108136525169178 ' --username ' admin '
hammer compute-profile create --name My_GCE_Compute_Profile
hammer compute-profile values create --compute-attributes "machine_type=f1-micro,associate_external_ip=true,network=default" --compute-profile " My_GCE_Compute_Profile " --compute-resource " My_GCE_Compute_Resource " --volume " size_gb=20 "
hammer host create --architecture x86_64 --compute-profile " My_Compute_Profile " --compute-resource " My_Compute_Resource " --image " My_GCE_Image " --interface "type=interface,domain_id=1,managed=true,primary=true,provision=true" --location " My_Location " --name " My_Host_Name " --operatingsystem " My_Operating_System " --organization " My_Organization " --provision-method "image" --puppet-ca-proxy-id My_Puppet_CA_Proxy_ID --puppet-environment-id My_Puppet_Environment_ID --puppet-proxy-id My_Puppet_Proxy_ID --root-password " My_Root_Password "
hammer compute-resource create --app-ident My_Client_ID --name My_Compute_Resource_Name --provider azurerm --region " My_Region " --secret-key My_Client_Secret --sub-id My_Subscription_ID --tenant My_Tenant_ID
hammer compute-resource image create --name Azure_image_name --compute-resource azure_cr_name --uuid ' marketplace://RedHat:RHEL:7-RAW:latest ' --username ' azure_username ' --user-data no
hammer compute-profile create --name compute_profile_name
hammer compute-profile values create --compute-attributes="resource_group= resource_group ,vm_size= Standard_B1s ,username= azure_user ,password= azure_password ,platform=Linux,script_command=touch /var/tmp/text.txt" --compute-profile " compute_profile_name " --compute-resource azure_cr_name --interface="compute_public_ip=Dynamic,compute_network=mysubnetID,compute_private_ip=false" --volume="disk_size_gb= 5 ,data_disk_caching= None "
hammer host create --architecture x86_64 --compute-profile " My_Compute_Profile " --compute-resource " My_Compute_Resource " --domain " My_Domain " --image " My_Azure_Image " --location " My_Location " --name " My_Host_Name " --operatingsystem " My_Operating_System " --organization " My_Organization " --provision-method "image"
#!/bin/bash MANIFEST=USD1 Import the content from Red Hat CDN hammer organization create --name "ACME" --label "ACME" --description "My example organization for managing content" hammer subscription upload --file ~/USDMANIFEST --organization "ACME" hammer repository-set enable --name "Red Hat Enterprise Linux 7 Server (RPMs)" --releasever "7Server" --basearch "x86_64" --product "Red Hat Enterprise Linux Server" --organization "ACME" hammer repository-set enable --name "Red Hat Enterprise Linux 7 Server (Kickstart)" --releasever "7Server" --basearch "x86_64" --product "Red Hat Enterprise Linux Server" --organization "ACME" hammer repository-set enable --name "Red Hat Satellite Client 6 (for RHEL 7 Server) (RPMs)" --basearch "x86_64" --product "Red Hat Enterprise Linux Server" --organization "ACME" hammer product synchronize --name "Red Hat Enterprise Linux Server" --organization "ACME" Create your application lifecycle hammer lifecycle-environment create --name "Development" --description "Environment for ACME's Development Team" --prior "Library" --organization "ACME" hammer lifecycle-environment create --name "Testing" --description "Environment for ACME's Quality Engineering Team" --prior "Development" --organization "ACME" hammer lifecycle-environment create --name "Production" --description "Environment for ACME's Product Releases" --prior "Testing" --organization "ACME" Create and publish your content view hammer content-view create --name "Base" --description "Base operating system" --repositories "Red Hat Enterprise Linux 7 Server RPMs x86_64 7Server,Red Hat Satellite Client 6 for RHEL 7 Server RPMs x86_64" --organization "ACME" hammer content-view publish --name "Base" --description "My initial content view for my operating system" --organization "ACME" hammer content-view version promote --content-view "Base" --version 1 --to-lifecycle-environment "Development" --organization "ACME" hammer content-view version promote --content-view "Base" --version 1 --to-lifecycle-environment "Testing" --organization "ACME" hammer content-view version promote --content-view "Base" --version 1 --to-lifecycle-environment "Production" --organization "ACME"
chmod +x content-init.sh
./content-init.sh manifest_98f4290e-6c0b-4f37-ba79-3a3ec6e405ba.zip
hammer os list
hammer os update --password-hash SHA256 --title " My_Operating_System "
hammer hostgroup set-parameter --hostgroup " My_Host_Group " --name fips_enabled --value "true"
cat /proc/sys/crypto/fips_enabled
yum install virt-manager virt-viewer libvirt qemu-kvm
yum install virt-install libguestfs-tools-c
systemctl enable --now chronyd
chkconfig --add ntpd chkconfig ntpd on service ntpd start
cp My_SSL_CA_file .pem /etc/pki/ca-trust/source/anchors
update-ca-trust
dnf install puppet-agent
yum install puppet-agent
. /etc/profile.d/puppet-agent.sh
puppet config set server satellite.example.com --section agent puppet config set environment My_Puppet_Environment --section agent
puppet resource service puppet ensure=running enable=true
puppet ssl bootstrap
puppet ssl bootstrap
yum update
yum install cloud-utils-growpart cloud-init
vi /etc/cloud/cloud.cfg
- resolv-conf
vi /etc/sysconfig/network
NOZEROCONF=yes
subscription-manager repos --disable=* subscription-manager unregister
poweroff
cd /var/lib/libvirt/images/
virt-sysprep -d rhel7
virt-sparsify --compress rhel7.qcow2 rhel7-cloud.qcow2
yum update
yum install cloud-utils-growpart cloud-init
- resolv-conf
echo "#" > /etc/udev/rules.d/75-persistent-net-generator.rules
NOZEROCONF=yes
subscription-manager repos --disable=* subscription-manager unregister yum clean all
poweroff
virt-sysprep -d rhel6
virt-sparsify --compress rhel6.qcow2 rhel6-cloud.qcow2