Changes

From Amahi Wiki
Jump to: navigation, search
{{WorkInProgress}}
'''Last Update:''' May 22, 2022
=Objective=
This is a project to update and modernize the infrastructure that keeps the Amahi web sites and services running.
* KVM Network Interface
* RAID Controller
<br>
'''Operating System (OS):''' CentOS 7.6.1810<br>
<br>
'''Server #1 (CURRENT):'''
* OpenStack release SteinYoga* Operating System: CentOS 8 Stream
* 32GB PC2-5300 RAM (8x4)
* Quick Swap Drive Bays
** 1 - 1 TB1TB** 2 - 120 GB SSD750GB (Backup)** 3 - 750 GB (Backup)EMPTY
** 4 - EMPTY
<br>
'''Server #2 (BACKUP):'''
* OpenStack release RockyWallaby* Operating System: CentOS 8 Stream
* 24GB PC2-5300 RAM (4x2/8x2)
* Quick Swap Drive Bays
** 1 - 128GB SSD 850GB (LVM)** 2 - 800GB HD (LVM)EMPTY** 3 - EMPTY120GB SSD (Backup)
** 4 - EMPTY
<br>
=Setup=
The following guidance is based on the latest release of OpenStack (Yoga):
<ul>
<li> Download [https://www.centos.org/download/ CentOS8 Stream] minmal image and install following [https://linuxhint.com/install_centos8_netboot_iso/ Installing CentOS 8 using NetBoot ISO Image] tutorial(use LVM, but remove ''/home'' partition and redistribute space to ''/''). </li><li> [https://linuxconfig.org/rhel-8-configure-static-ip-address Set Static IP Address] and [https://techjourney.net/how-to-set-change-hostname-fqdn-fully-qualified-domain-name-in-rhel-centos-7/ Configure configure Fully Qualified Domain Name] and , then reboot</li><li> Follow step 0 - 2 3 of the [https://www.rdoproject.org/install/packstack/ RDO Packstack Quickstart] for the OpenStack installation (ensure step 0 prerequisites are completed first).</li><li> At step 34, follow the [https://www.rdoproject.org/networking/neutron-with-existing-external-network/ Neutron with existing network guidance]:</li>
<ul>
<li> Use command : <code>packstack --cinderallinone --volumesprovision-createdemo=y n --cinder-volumes-size=100G --provision-demo=n --oskeystone-heatadmin-installpasswd=y --os-ceilometer-install=y --os-horizon-ssl=n {set password} --os-neutron-ml2-mechanism-drivers=openvswitch --os-neutron-ml2-tenant-network-types=vxlan --os-neutron-ml2-type-drivers=vxlan,flat,vlan --os-neutron-l2-agent=openvswitch --os-neutron-ovs-bridge-mappings=extnet:br-ex --os-neutron-ovs-bridge-interfaces=br-ex:eth0 --nova-libvirt-virt-type=kvm</code> (replace {set password} and ''eth0'' with appropriate interfacevalues)</li>
<li> Skip down to ''Now, create the external network with Neutron.'' and follow guidance.</li>
<li> Next move to ''Then create a router and set its gateway using the external network...'' and follow remaining guidance.</li>
<li> TCP / 443 (<i>Optional</i>)</li>
</ul>
<li> Set Cinder Volumes to 100GB</li>
<li> Add users and private keys for SSH login</li>
<li> Disable SSH password and root login</li>
<b>NOTE:</b> A terminal script has been created developed to automate the installation steps above for OpenStack after CentOS is installed.
=Naming Convention=
The following is recommended for standardization:
* Instances: '''os-function''' (i.e. ''f24-bot'', ''f24-repo'', ''f24-dev'', etc)
* Images: '''os-type''' (i.e. ''f24-cd'', ''f24-dvd'', etc)
* Snapshot: '''os-function-ss#''' (i.e. ''f24-repo-ss1'', ''f24-bot-ss2'', etc)
* Volumes: '''instance-vol''' (i.e. ''f24-repo-vol'', ''mirrormgr-vol'', ''dl-masterdlmaster-vol'', etc)
=Build Images=
** If using a clone, start the VM
* Open a console window for the VM
** Log in and as <code>root </code> do the following
*** <code>dd if=/dev/zero of=/mytempfile bs=1M</code> (zero out any unused space)
*** <code>rm -f /mytempfile</code>
=Create Instance=
* This is a nice straightforward tutorial on [https://www.tecmint.com/create-deploy-and-launch-virtual-machines-in-openstack/ how to deploy and launch an instance (VM)].
* Also refer to [https://docs.openstack.org/mitaka/user-guide/cli_nova_launch_instance_using_ISO_image.html launch instance from ISO] for an alternate method.
=Backup=
* '''Last Backup completed:'''** Instances - ''09 Jun 201904 Jul 2021''** Volumes - '' 09 Jun 201904 Jul 2021''  '''NOTES:'''
* Back up scripts have been created to synchronize instances, volumes, and snapshots to a secondary drive on demand.
* Minimal of monthly back ups be done in case of catastrophic failure.
=Tips=
==Command Line==
[https://docs.openstack.org/python-openstackclient/ussuri/ OpenStack Command Line Guide]
==Network Issues==
If the DNS server is changed or networking appears inoperable, check the following to ensure the DNS is correct:
==Update/Reboot/Shutdown Process==
Follow guidelines below to prevent corruption:
* Shutdown/Disconnect
** Stop all instances
** Verify all instances stopped
** Perform Update/Reboot/Shutdown<br> 
* Once system Started/Rebooted:
** Start all needed instances
* Create the instance and boot via command-line vs the web UI:
<code>
:openstack server create --image IMAGE_NAME --flavor amahi.small --nic port-id=NETWORK_ID_FROM_ABOVE_COMMAND VM_NAMEINSTANCE_NAME
</code>
See [https://docs.openstack.org/newton/user-guide/cli-change-the-size-of-your-server Change the size of your server] for command line guidance.
==Fedora Cloud Base Images==See [https://wwwalt.linuxtechifedoraproject.comorg/use-fedora-23-cloud-image-redhat-openstack/ Launch Fedora 23 Cloud imageBase Images] for guidance.
== Migration ==
Ref: [https://ask.openstack.org/en/question/91352/openstack-mitaka-can-not-access-dashboard/ OpenStack cannot access Dashboard]
 
==Miscellaneous==
Refer to [https://bugs.amahi.org/issues/2050 Amahi Bug #2050] for some OpenStack Command-Line syntax.
=Known Issues=
* Cannot use multiple SSH keys via Dashboard ([https://bugs.launchpad.net/nova/+bug/1499751 OpenStack Bug #1499751])
<br>
12,424

edits