Skip to end of metadata
Go to start of metadata

You are viewing an old version of this page. View the current version.

Compare with Current View Page History

« Previous Version 40 Next »


Prerequisites

Hardware

Specification

Virtual Machines

4 vCPU

8 GB vRAM

1 x 100 GB vDisk

Virtualization software

VMware vSphere ESXi 6 or higher

VMware Workstation support 12 or higher

Yarnman Deployment

1. Deploy yarnman OVA to VMware 

Yarnman ova can be depoyed either using VMware OVFtool or by uploading the ova to vSphere/ESXi 

OVA file format yarnman-2.X.X-master-XXXXXX.ova

If using Ovftool to deploy

  1. ovftool --name="<VMNAME>" --powerOn --datastore="<datastore>" --net:"nat"="<network name>" <Yarnman OVA> "<VI path >"

  2. VI Paths

  3. Direct ESXI "vi://<vmware username>@<ESXI IP>"

  4. Direct ESXI with resource pool "vi://<vmware username>@<ESXI IP>/<resource Pool>"

  5. vSphere Host "vi://<vmware username>@<vSphere>/<datacenter name/host/<Host IP or name>"

  6. vSphere Cluster "vi://<vmware username>@<vSphere>/<datacenter name/host/<cluster name>/<Host IP or name>"

  • if you use a "@" or any other special characters in your username or password it must be converted to ASCI and prefixed with % e.g. test@yarnlab.io is test%40yarnlab.io 


2. Using VMware Console log into Yarnman to bootstrap configuration

Default username: yarnman Password: yarnman

  • Set the IP address using the VMware console.

  • cd /opt/yarnlab/yarnman

  • sudo ./scripts/bootstrap.sh

    1. Do you want to set a static IP? Y or N : Enter Y to set static IP

    2. You will be asked to select network interface : select number adjacent to ensXX

    3. enter Ip address : Enter the required IP address

    4. enter netmask : to accept default press Enter, otherwise enter required netmask

    5. enter gateway : enter the required gateway address

    6. enter dns server1 : to accept default, press Enter, otherwise enter required DNS server address

    7. You will be asked if you want to change hostname : to accept existing hostname press N otherwise, Y + enter new hostname
      At this point, network will restart

    8. You will be asked if you wish to change SSH password : enter N to keep default or Y to change password

    9. You will be asked if you wish to change yarnman-protected password : Enter N to keep default or Y to change the protected password

  • To change the password at any time SSH and run the passwd command.


It is strongly recommended to change the default password for SSH access
Update hostname if required via /etc/hosts

Deploy as a Standalone Core

Follow these steps to install the Migration Assistant as a core server. This configuration automatically sets up the server and all required services.

  1. Log in to the Yarnman server as user yarnman using ssh client.

  2. Change the directory by typing cd /opt/yarnlab/yarnman

  3. Run the install script using node and sudo:
    sudo node ./scripts/install-as-core-standalone.js -p <password> --couchport <couchport> --redisport <redisport> and substitute the <value>
    sudo node ./scripts/install-as-core-standalone.js -p <password> --couchport 5984 --redisport 6379

    Note: If copying sample line above, ensure that <password> is replaced with required Web password to be used

  4. On completion of installation from step 3, Open10 Web Browser, browse to Yarnman IP and set the administrator account password.

  5. Accept the End User License Agreement by selecting the check box.

  6. Under the Set Administrator Password option, enter the password that is used later to log in to the GUI & click "Save Acceptance and Update Administrator".

  7. Login with the username of the administrator and password that you created.


It is strongly recommended to change the default password for web access this is done by going into the default access policy then users

Install As Arm

This is only required for distributed yarnman deployments where network traversal is required

Only follow these steps if you are deploying Yarnman as a distributed system (multiple VMs)
Note that configuration is required on the core node for allowing connectivity from the Arm to the Core describe in the LOCAL FIREWALL CONFIGURATION section in this document.
This will install the OVA as a node of Yarnman, connect to the central core database and enroll. Once accepted by the core services, interfaces may be added to it
Target full path of the core's Redis - redis://<some host or ipaddress>:<port - likely 6378>

  1. CD to /opt/yarnlab/yarnman/

  2. Run the script using node and sudo: 

sudo node ./scripts/install-as-arm.js -n <node name> -c <couchpath> -r <redispath> 

with values prepared above substituted for <value>.

  • Node name to appear on the enrollment screen in AdminApp of the core.

  • Target full path of the core's CouchDB - http(s)://<some host or ipaddress>:<port - likely 5984>

sudo node ./scripts/install-as-arm.js -n <name> -c http://<core ip>:5984 -r redis://<core ip>:6379'

  1. Go to the Core's Administration App → Enrollments and accept the new node, you may add services and interface in the normal way.

  2. The enrollment process will auto-generate credentials for the Arm.


Install on M1 Macbook

Installing Yarnman onto Ubuntu Docker image on M1 Mac:

  1. Install Docker

  2. Set Maximum Memory Size to at least 4GB in Docker Resource configurations

  3. Start up a Ubuntu container:

    docker run -v ~/code:/mnt/code -it --network host --name yarnman_ubuntu --platform linux/amd64 ubuntu:bionic /bin/bash

  4. Install necessary packages in the container:

apt-get clean && apt-get update

DEBIAN_FRONTEND=noninteractive apt-get install -y curl build-essential git software-properties-common apt-offline open-vm-tools jq apt-transport-https debconf-utils sudo cmake curl libcap2-bin npm

add-apt-repository ppa:jonathonf/ffmpeg-3apt-get update

DEBIAN_FRONTEND=noninteractive apt-get install -y python2.7 openjdk-8-jdk nodejs haproxy unzip ffmpeg traceroute apt-offline openssh-server cryptsetup build-essential libssl-dev libreadline-dev zlib1g-dev linux-source dkms nfs-common apt-offline software-properties-common ca-certificates

5. Generate SSH keys on the container and add them to Bitbucket:

ssh-keygen
eval $(ssh-agent)
ssh-add ~/.ssh/id_rsa
cat ~/.ssh/id_rsa.pub

Copy the key into Bitbucket

6. Create yarnman admin user and directories:

useradd yarnman
usermod -aG sudo yarnman
mkdir -p /var/log/yarnman
mkdir -p /opt/yarnlab/yarnman

visudo # (set NOPASSWD:ALL) for like... everything

su - yarnman

7. Install node, clone secundus repository into /mnt/code, and build Yarnman:

curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.0/install.sh | bash
nvm install v12.18.3

cd /mnt/code
git clone git@bitbucket.org:yarnlab/secundus.git
cd secundus

npm install
npm run build

8. Install Yarnman as standalone:

sudo node ./scripts/install-as-core-standalone.js -b -p admin -r 6379 -c 5984


  • No labels