In an effort to get this into hands of people that will break it and or make it useful, I’m sharing this ISO and some notes about how to use it. Note this is a work in progress, and I will build upon these notes to make what will ultimately be the release notes.
Last caveat, there’s nothing secret here. Everything on the ISO is available in a repo, including the build scripts. I’m not going to go into how to build this, but a curious little rhino could likely figure it out without too much trouble poking around the source tree.
Download the ISO indicated in Using the ISO, complete the installation and reboot. Upon login, run /opt/rocknsm/rock/ansible/deploy_rock.sh
to accept all the defaults.
Read on for more details and configuration options.
Download the ISO from the Releases page
This section is based on using VMware Fusion on a Mac, but these steps provide a general template. I’ve tested the ISO booting mostly in a VMware VM, which uses BIOS. I’ve also burned it to a USB thumbdrive (I used the 16 GB USB3 from MicroCenter) and installed it in BIOS mode on my home test sensor.
-
Prep Install Media
-
dd
command via terminal
-
diskutil list
diskutil unmountDisk /dev/disk#
sudo dd bs=8M if=path/to/rockiso of=/dev/disk#
Note
|
etcher.io is a solid gui-based burning utility |
-
New VM Setup
-
in the top left corner click add > new… then custom machine
-
select the Linux > RedHat Enterprise 64 template
-
create new virtual disk
-
name your VM, save
-
Lets customize some settings, change based on hardware available.
-
Processors & Memory
-
Processors - 4 cores
-
Memory - 8192MB (8GB)
-
-
Hard Disk
-
increase the disk to 20GB
-
customize settings
-
save as name
-
-
Network Adapter
-
By default the vm is created with one interface - this will be for management.
-
lets add a second (listening) interface:
-
add device (top right), net adapter, add, “private to my mac”
-
-
-
Boot device
-
click CD/DVD (IDE)
-
check the "Connect CD/DVD Drive" box
-
expand advanced options and browse to the latest ROCK iso
-
-
Install
Once the above changes are made, we’re ready to install:
-
click the "Start Up" button while holding the
esc
key -
hit
tab
for full config options-
add the following values, speparated by spaces:
-
biosdevname=0
-
net.ifnames=0
This will ensure you get interface names likeeth0
. If you have physical hardware, I highly recommend that you do not use this function. -
vga=773
-
-
-
ENTER, and ROCK install script will install
-
create *admin* user acct
-
REBOOT when install process is complete
Tip
|
The root account is locked by default and rockadmin has sudo access.
|
You’re now ready for Configuration
You can also clone the ROCK repository. The instructions for the ISO above use a snapshot of the devel
repo. You can clone this repo and simply run the /opt/rocknsm/rock/ansible/generate_defaults.sh
script with sudo
. This will generate the file /etc/rocknsm/config.yml
.
You’re now ready for Configuration
Note
|
VMware Fusion will allow local ssh, while Virtualbox will require port forwarding |
Log in with the admin credentials used during the install process, and lets get this box current:
sudo yum update -y && reboot
sudo yum install -y epel-release
sudo yum install -y git ansible
git clone https://github.com/rocknsm/rock.git
cd rock
sudo ./generate_defaults.sh
If you wish to run an offline install (the ISO sets you up for this already) edit /etc/rocknsm/config.yml
and change the following setting as shown:
rock_online_install: False
If this value is set to True
, Ansible will configure your system for the yum repositories listed and pull packages and git repos directly from the URLs given. You could easily point this to local mirrors, if needed.
If this value is set to False
, Ansible will look for the cached files in /srv/rocknsm
. There is another script called offline-snapthot.sh
that will create the necessary repository and file structure. Run this from a system that is Internet connected and copy it to your sensors for offline deployment.
While you’re in there, you can change the auto-detected defaults, such as which interfaces to use, hostname, fqdn, resources to use, etc. You can also disable features altogether at the bottom by simply changing the feature value to False
as shown below. Don’t do this unless you know what you’re doing.
with_nginx: False (1)
-
This disables nginx from installing or being configured. Note that it will not remove it if it is already present.
Once you’ve completed flipping the bits as you see fit, simply run /opt/rocknsm/rock/ansible/deploy_rock.sh
. If everything is well, this should install all the components and give you a success banner.