Difference between revisions of "Fedora 23 Server"

From FOG Project
Jump to: navigation, search
(Continue installation)
 
(22 intermediate revisions by the same user not shown)
Line 1: Line 1:
Article under construction - below you'll find notes/gibberish on the topic. Expect an article soon.
 
  
 
+
= Installing Fedora 23 server =
<embedvideo service="youtube">https://www.youtube.com/watch?v=_yfpGxF5vMY</embedvideo>
 
 
 
 
 
Create boot, root, images, home, and swap partitions - keep things seperate, prevent OS from crashing if images fill it's partition, likewise with home.
 
 
 
 
 
Fedora 23 minimal.
 
 
 
 
 
setup firewall
 
 
 
<pre>
 
for service in http https tftp ftp mysql nfs mountd rpc-bind proxy-dhcp samba; do firewall-cmd --permanent --zone=public --add-service=$service; done
 
systemctl restart firewalld.service
 
</pre>
 
 
 
 
 
<pre>#Install subversion, a utility used to retrieve versions of fog.
 
dnf install -y subversion
 
 
 
#Move to the current user's home directory.
 
cd ~
 
 
 
#Make a directory called svn, into which we will download Fog's installation files.
 
mkdir svn
 
 
 
#Go into the svn directory.
 
cd svn
 
 
 
#Retrieve the latest developmental version of FOG from SourceForge.
 
svn checkout https://svn.code.sf.net/p/freeghost/code/trunk
 
 
 
#Install needed programs for building an SELinux policy.
 
yum install -y selinux-policy-devel gcc make
 
 
 
#Move into the ~/svn/trunk/SELinux directory.
 
cd ~/svn/trunk/SELinux
 
 
 
#Build the custom SELinux module for FOG.
 
make -f /usr/share/selinux/devel/Makefile fog.pp
 
 
 
#Install the newly built module.
 
semodule -i fog.pp
 
 
 
#reboot the server
 
reboot
 
 
 
#Move to the bin directory to get ready to install fog.
 
cd ~/svn/trunk/bin
 
 
 
#Install FOG.
 
./installfog.sh
 
 
 
</pre>
 
 
 
 
 
 
 
 
 
= Installing Fedora 21 server =
 
  
 
== Configuring partitions for FOG ==
 
== Configuring partitions for FOG ==
Line 72: Line 12:
 
*Optionally delete the <font color="red">/home</font> partition or limit it's size to something very small (perhaps 10GB).
 
*Optionally delete the <font color="red">/home</font> partition or limit it's size to something very small (perhaps 10GB).
  
*Limit <font color="red">/</font> (root) to 20GB instead of 50 (optional but recommended).
+
*Limit <font color="red">/</font> (root) to 20GB instead of 50 (optional but recommended). Please keep in mind that this is also the partition where the snapins are stored. If you plan to use a lot of snapins and don't think that (roughly) 15GB is enough, then leave this at 50.
  
 
*Increase the size of <font color="red">/boot</font> from 500MB to 1GB for breathing room in the future (optional but recommended).
 
*Increase the size of <font color="red">/boot</font> from 500MB to 1GB for breathing room in the future (optional but recommended).
Line 82: Line 22:
 
Another thing to keep in mind is when you install on UEFI enabled hardware, there will be an EFI boot partition made automatically - leave that partition alone.
 
Another thing to keep in mind is when you install on UEFI enabled hardware, there will be an EFI boot partition made automatically - leave that partition alone.
  
 +
(Note: Video plays in Chrome or Firefox with html5 plugin)
 +
 +
External Video Link:
 +
 +
[https://youtu.be/_yfpGxF5vMY Fedora 23 FOG Optimal Partitioning]
 +
 +
Video:
  
<embedvideo service="youtube">https://www.youtube.com/watch?v=uS5JSQiIgTU</embedvideo>
+
<embedvideo service="youtube">https://www.youtube.com/watch?v=_yfpGxF5vMY</embedvideo>
  
 
== Continue installation ==
 
== Continue installation ==
  
*Under network settings, set a static IP with Subnet & router info and a name. DNS entries are comma delimited (no spaces).
+
*Under network settings, set a static IP with Subnet & router info and set a hostname. DNS entries are comma delimited (no spaces). For these to take effect, you can toggle off/on the network adapter. It's a slide switch on the NIC selection page.
  
 
*Set the timezone (and any preferred NTP servers).
 
*Set the timezone (and any preferred NTP servers).
Line 95: Line 42:
 
*Set a root password.
 
*Set a root password.
  
= Fedora 21 server pre-config =
+
= Fedora 23 server pre-config =
  
  
== Update Fedora 21 server ==
+
== Update Fedora 23 server ==
  
 
Update everything installed with this line:
 
Update everything installed with this line:
  
<pre>yum update -y</pre>
+
<pre>dnf update -y</pre>
 
 
 
 
  
 
== Continue pre-config ==
 
== Continue pre-config ==
Line 112: Line 57:
 
*Log in as root with the password you set earlier.
 
*Log in as root with the password you set earlier.
  
*Disable firewalld:
+
*Configure firewalld:
 +
 
 +
<pre>
 +
dnf install firewalld -y
 +
systemctl start firewalld
 +
systemctl enable firewalld
 +
for service in http https tftp ftp mysql nfs mountd rpc-bind proxy-dhcp samba; do firewall-cmd --permanent --zone=public --add-service=$service; done
 +
 
 +
echo "Open UDP port 49152 through 65532, the possible used ports for fog multicast"
 +
firewall-cmd --permanent --add-port=49152-65532/udp
 +
echo "Allow IGMP traffic for multicast"
 +
firewall-cmd --permanent --direct --add-rule ipv4 filter INPUT 0 -p igmp -j ACCEPT
 +
systemctl restart firewalld.service
 +
echo "Done."
 +
</pre>
 +
 
 +
 
 +
*Add firewalld exceptions for DHCP and DNS (if you plan to run DHCP on your FOG server):
 +
 
 +
<pre>
 +
for service in dhcp dns; do firewall-cmd --permanent --zone=public --add-service=$service; done
 +
firewall-cmd --reload
 +
echo Additional firewalld config done.
 +
</pre>
  
<pre>systemctl stop firewalld;systemctl disable firewalld</pre>
 
  
 
*Set SELinux to permissive on boot by editing /etc/selinux/config
 
*Set SELinux to permissive on boot by editing /etc/selinux/config
Line 134: Line 101:
 
= Setup FOG Trunk =
 
= Setup FOG Trunk =
  
This will install the latest developmental version of FOG using the Subversion method found here: [[Upgrade to trunk]]
+
This will install the latest developmental version of FOG using the Git method found here: [[Upgrade to trunk]]
  
We need to use FOG Trunk with Fedora 21 and later because the latest stable release of FOG (currently 1.2.0) does not support any recent versions of Fedora.
+
We need to use FOG Trunk with Fedora 23 and later because the latest stable release of FOG (currently 1.2.0) does not support any recent versions of Fedora.
  
  
<pre>yum install -y subversion
+
<pre>dnf install git -y
 
cd ~
 
cd ~
mkdir svn
+
mkdir git
cd svn
+
cd git
svn checkout https://svn.code.sf.net/p/freeghost/code/trunk
+
git clone --depth 1 https://github.com/FOGProject/fogproject.git
cd trunk/bin
+
cd fogproject/bin
./installfog.sh</pre>
+
./installfog.sh
 +
echo Now you should have fog installed.</pre>
  
 
*Follow the on-screen instructions to setup fog for your environment. If you are unsure about anything, choose the default option.
 
*Follow the on-screen instructions to setup fog for your environment. If you are unsure about anything, choose the default option.
Line 154: Line 122:
 
== Set the FOG services to start 30 seconds after boot ==
 
== Set the FOG services to start 30 seconds after boot ==
  
Necessary with Fedora 21 & r2922 and up. There's an issue with the FOGMulticastManager after a reboot; it's timing related.
+
Necessary with Fedora 23 & r6551 and above (FOG 1.3.0 is above r6551). There can be an issue with the FOGMulticastManager after a reboot; it's timing related. There are also steps included to delay NFS and RPC for 30 seconds as well, this is needed for very fast servers - doing it on all servers won't hurt.
 
 
There are also steps included to delay NFS and RPC for 30 seconds as well, this is needed for very fast servers - doing it on all servers won't hurt.
 
  
  
Line 172: Line 138:
  
 
*Make that file look like below, exactly. This creates a 30 second delay for starting these services at boot.
 
*Make that file look like below, exactly. This creates a 30 second delay for starting these services at boot.
 +
 +
Note: This file may already be created. In such case, you will notice that the line <font color="red">#!/bin/bash</font> is already there. You may add the other lines at the bottom of the file.
  
 
<pre>#!/bin/bash
 
<pre>#!/bin/bash

Latest revision as of 13:38, 24 September 2016

Installing Fedora 23 server

Configuring partitions for FOG

The one thing with using Fedora (or any red-hat based distro) is that the default partitioning isn't optimal for FOG. The default is that "root" only gets 50 GiB and the rest goes to /home. This is not optimal.

You should delete any existing partitions, and then select "create partitions automatically". This is the easiest. Then you can manipulate and delete unneeded partitions. The most simple partitioning setup for FOG is below:

  • Give the swap partition the same amount as the amount of RAM the system has.
  • Optionally delete the /home partition or limit it's size to something very small (perhaps 10GB).
  • Limit / (root) to 20GB instead of 50 (optional but recommended). Please keep in mind that this is also the partition where the snapins are stored. If you plan to use a lot of snapins and don't think that (roughly) 15GB is enough, then leave this at 50.
  • Increase the size of /boot from 500MB to 1GB for breathing room in the future (optional but recommended).
  • Finally, create a /images partition with all remaining space.

Fedora (and most Red-Hat based distributions) auto-adjust partition sizes for you if you go over what is available... meaning.. if you are unsure about how much space is left on the drive to assign to /images, you can leave the size field blank and hit "update" and the installer will auto adjust to what is available.

Another thing to keep in mind is when you install on UEFI enabled hardware, there will be an EFI boot partition made automatically - leave that partition alone.

(Note: Video plays in Chrome or Firefox with html5 plugin)

External Video Link:

Fedora 23 FOG Optimal Partitioning

Video:

Continue installation

  • Under network settings, set a static IP with Subnet & router info and set a hostname. DNS entries are comma delimited (no spaces). For these to take effect, you can toggle off/on the network adapter. It's a slide switch on the NIC selection page.
  • Set the timezone (and any preferred NTP servers).
  • Start installing.
  • Set a root password.

Fedora 23 server pre-config

Update Fedora 23 server

Update everything installed with this line:

dnf update -y

Continue pre-config

After installation is complete and reboot is done, you can work through putty from this point forward. You can get a copy here.

  • Log in as root with the password you set earlier.
  • Configure firewalld:
dnf install firewalld -y
systemctl start firewalld
systemctl enable firewalld
for service in http https tftp ftp mysql nfs mountd rpc-bind proxy-dhcp samba; do firewall-cmd --permanent --zone=public --add-service=$service; done

echo "Open UDP port 49152 through 65532, the possible used ports for fog multicast" 
firewall-cmd --permanent --add-port=49152-65532/udp
echo "Allow IGMP traffic for multicast"
firewall-cmd --permanent --direct --add-rule ipv4 filter INPUT 0 -p igmp -j ACCEPT
systemctl restart firewalld.service
echo "Done."


  • Add firewalld exceptions for DHCP and DNS (if you plan to run DHCP on your FOG server):
for service in dhcp dns; do firewall-cmd --permanent --zone=public --add-service=$service; done
firewall-cmd --reload
echo Additional firewalld config done.


  • Set SELinux to permissive on boot by editing /etc/selinux/config
vi /etc/selinux/config

Instructions on using Vi: Vi

Change the line
SELINUX=enforcing

to

SELINUX=permissive
  • Set SELinux to permissive on the fly (this is not persistent, the above config must be set to be persistent):
setenforce 0

Setup FOG Trunk

This will install the latest developmental version of FOG using the Git method found here: Upgrade to trunk

We need to use FOG Trunk with Fedora 23 and later because the latest stable release of FOG (currently 1.2.0) does not support any recent versions of Fedora.


dnf install git -y
cd ~
mkdir git
cd git
git clone --depth 1 https://github.com/FOGProject/fogproject.git
cd fogproject/bin
./installfog.sh
echo Now you should have fog installed.
  • Follow the on-screen instructions to setup fog for your environment. If you are unsure about anything, choose the default option.

Post Config

Set the FOG services to start 30 seconds after boot

Necessary with Fedora 23 & r6551 and above (FOG 1.3.0 is above r6551). There can be an issue with the FOGMulticastManager after a reboot; it's timing related. There are also steps included to delay NFS and RPC for 30 seconds as well, this is needed for very fast servers - doing it on all servers won't hurt.


  • Disable FOG services with:
systemctl disable FOG{MulticastManager,Scheduler,SnapinReplicator,ImageReplicator}
systemctl disable nfs-server
systemctl disable rpcbind

Create a startup script with:

vi /etc/rc.d/rc.local

Instructions on using Vi: Vi

  • Make that file look like below, exactly. This creates a 30 second delay for starting these services at boot.

Note: This file may already be created. In such case, you will notice that the line #!/bin/bash is already there. You may add the other lines at the bottom of the file.

#!/bin/bash
sleep 30
systemctl start nfs-server
systemctl start rpcbind
systemctl start FOGMulticastManager
systemctl start FOGScheduler
systemctl start FOGSnapinReplicator
systemctl start FOGImageReplicator
exit 0
  • save the file
  • Then Run this command to make that file executable:
chmod +x /etc/rc.d/rc.local