Skip to content
Permalink
Branch: master
Find file Copy path
Find file Copy path
1 contributor

Users who have contributed to this file

109 lines (78 sloc) 4.07 KB

The base FreeBSD Operating System for Vulture 4

Purpose

This FreeBSD package turns an existing FreeBSD 12.0 system into a Vulture 4 operating system

What it basically does is:

  • Hardening the FreeBSD operating system
  • Installing FreeBSD packages needed by Vulture
  • Installing system scripts to bootstrap Vulture services and Jails

You do not want to bother to follow all these annoying steps ?
Just download the production-ready OVF Image: https://download.vultureproject.org/v4/12.0/isos/vulture4-latest.zip

Prerequisite

To install vulture-base, you will need a FreeBSD 12.0.

That instance must run on a ZFS disk configuration. ZFS encryption is supported, but be aware that automatic bootup will no be possible in this case as you will have to type in your passphrase at every reboot.

It is also advised to create a admin user before starting as you won't be anymore allowed to use root over ssh for instance. Do not forget to add that user into sudoers file.

Installation

Firstly, install root certificates from certificate authorities :
pkg update
pkg install ca_root_nss

Then, add repository signature to trusted keys :
vim /usr/share/keys/pkg/trusted/pkg.vultureproject.org

function: sha256
fingerprint: 18072e5d7fbec639a3dfd11da1fe8a0c9e9bd30741780ced28f1665cd7ed9631

And create repository configuration file :
mkdir -p /usr/local/etc/pkg/repos
vim /usr/local/etc/pkg/repos/vulture.conf

Vulture: {
    url: https://download.vultureproject.org/v4/12.0/release/,
    signature_type: "fingerprints",
    fingerprints: "/usr/share/keys/pkg",
    enabled: yes
}

Then, install required packages :
pkg update
pkg install -y vulture-libtensorflow
pkg install -y vulture-haproxy
pkg install -y vulture-rsyslog
pkg install -y vulture-mongodb
pkg install -y vulture-redis
pkg install -y vulture-gui
pkg install -y netdata
pkg install -y vulture-base
pkg install -y darwin

At this point you need to reboot

Lastly, bootstrap all the required system jails :
/home/vlt-adm/bootstrap/mkjail-haproxy.sh
/home/vlt-adm/bootstrap/mkjail-mongodb.sh
/home/vlt-adm/bootstrap/mkjail-redis.sh
/home/vlt-adm/bootstrap/mkjail-apache.sh
/home/vlt-adm/bootstrap/mkjail-portal.sh
/home/vlt-adm/bootstrap/mkjail-rsyslog.sh

Configuration of OS

To configure VultureOS, use the vlt-adm account, and the admin command :

Using this menu, you have the following choices :

  • Keymap : Configure keymap, like during installation of FreeBSD,
  • Time : Configure timezone and ntp server,
  • Password : Change vlt-adm password,
  • Geli Change : Change the ZFS disk encryption password,
  • Email : Define the administration SMTP Email address,
  • Management : Modify current management IP used to bind services,*
  • Proxy : Configure proxy,
  • Netconfig : Manage network configuration, like during installation of FreeBSD,
  • Hostname : Configure hostname,* **
  • Shell : Launch a CSH shell as vlt-adm,
  • RootShell : Launch a CSH shell as root,
  • Update OS : Update system and jails, with pkg and freebsd-update,*
  • Exit : Exit admin menu.

(*): This command will run installation & configuration of jails.
(**) : Mandatory option to bootstrap VultureOS.

Bootstraping Vulture 4

Depending on what you want do to, you have 2 scripts available :

  • /home/vlt-adm/gui/cluster_create.sh : To create a new Master node
  • /home/vlt-adm/gui/cluster_join.sh : To create a slave and join a Cluster

The first script, to create a new Master, has the following usage :

sudo /home/vlt-adm/gui/cluster_create.sh <admin_user> <admin_password>

The second, to add the node to an existing cluster, has the following usage :

sudo /home/vlt-adm/gui/cluster_join.sh <master_hostname> <master_ip> <secret_key>

After that, start vultured if it is down :
service vultured start

You can’t perform that action at this time.