Body
Issue/Question
How do I deploy a perfSONAR toolkit?
How do I use ansible to deploy perfSONAR?
Environment
Resolution
ITS STAFF ONLY
- Install Centos7 with a GUI
- Setup ansible.svc as a root capable user with the password stored in RDM.
- set the IP address, hostname, and DNS records as appropriate.
- Create a DHCP reservation and DNS record for the new node.
- Copy the public SSH key from usd-ansible.usd.edu for the ansible.svc user
- On usd-ansible.usd.edu, add the hostname to /home/ansible.svc/ansible-playbook-perfsonar/inventory/hosts underneath [Toolkit]
- Ensure that hostnames you do not want to push an update to are commented out typing a # in front of the hostname
- Test ansible by typing ansible all -m ping
Note: A successfully ping will display text like: perfsonarX.usd.edu | SUCCESS
- Navigate to /home/ansible.svc/ansible-playbook-perfsonar on usd-ansible.usd.edu
- Type ansible-playbook perfsonar.yml
Note: It may need to be run several times before all services report "OK"
- SSH to the deployed node
- Gain root by typing sudo su
- When prompted for a new user, hit enter, then, create the ansible user with the password listed in RDM.
- Type setenforce Permissive
- Type sed -i -e 's/^SELINUX=enforcing/SELINUX=permissive/' /etc/selinux/config
- Reboot the machine
- On the node, edit /etc/httpd/conf.d/apache-toolkit_web_gui.conf
- On a new line one line before the line that says RedirectMatch ^/$ /toolkit/, type Redirect permanent / https://nodename.usd.edu. Save the file.
- Navigate to /etc/pki/tls/private/
- Type openssl req -newkey rsa:2048 -keyout PRIVATEKEY.key -out YYYYMMDD.csr
- Request the certificates using the .csr file
- Copy the certificate only file (PEM encoded) and the certificate Root/Intermediate(s) only (PEM encoded) file to /etc/pki/tls/certs
- Edit /etc/httpd/conf.d/ssl.conf file. Set the values for SSLCertificateFile, SSLCertificateKeyFile, and SSLCertificateChainFile
- Type systemctl restart httpd
- In a web browser, navigate to the node's hostname
- Login using the psadmin (Perfsonar Web Admin) credentials in RDM
- Click Configuration
- Enter University of South Dakota in the Organization Name field.
- Enter server@usd.edu in the Administrator email field.
- Enter the city in which the node is located.
- Select the state in which the node is located.
- Enter in the ZIP/Postal code in which the node is located.
- Fill in the Latitude/Longitude with approximate values from a Google Maps pin.
- Set the node role and node access policy as appropriate
- Agree to the privacy policy
- Click Save