1. Create a VM 



Select Virtual Machines from the menu and press the +Add button






Choose the OS you want to use. OS Notes:

  • Windows Server will cost license fees, Linux does not.
  • Windows: We recommend Windows 2016 Datacenter (requires 13,2 GB) or Windows 10 (Once available in late 2017)
  • Linux: We recommend CentOs 7.3
  • 30GB images require less time to create, boot and shutdown. Depending on your render applications you install, this could be enough.
  • If you want to use the image for GPU rendering, you should select the same type of GPU for this base image. Then you can install the NVidia drivers.
    Of course GPU images with the driver files added to Windows can be used for non-GPU machines.








VM Notes:

  1. Basics
    • The user/pass is required to remote login on the machine.
    • The disk type (SDD, HDD) does not matter besides there are more HDD type VMs (which are cheaper). 
      On the other side SDDs are faster and you spend less time installing software.

  1. Size:
    • The "Size" (VM type) does not matter as we will only use an image of the VM afterwards.
      Therefore you can choose almost the cheapest one. (Not less than 2GB memory and at least 2 cores to install everything faster)
      It does only matter if you want to use a GPU machine. In this case you have to use the same GPU type to install the NVidia drivers.
      (On the other side, GPU images can be used for non-GPU machines)

  1. Settings:
    • NO managed discs. We want to have our VHD file where we want to.
    • Choose your storage created in step 2, do not create a new one.
    • If you have created a Virtual network, please select it, otherwise let Azure create one.
    • Public IP:
      If you have a VPN connection to the Azure Virtual Network, then you can use the local IP.
      Otherwise you have to assign a Public IP to your VM. You can later remote-connect to the VM by entering this public web address/name.
    • Network Security Group (Firewall): Do not remove the RDP inbound rule. Otherwise you cannot connect to your VM via the Windows Remote Desktop Connection app.
    • If you use diagnostics, we recommend not to create a new storage for an better overview of your Azure items.



2. Remote Connect and Install Apps


Remote Connect

  • Wait about 7-12 minutes until the VM was created. The status has to be "Running".
  • Open the Remote Desktop Connection or an SSH application (RR/bin/3rdparty/...putty) on your workstation and use the local ot public IP of the VM (as shown on the portal).
    If you have assigned a public IP, then use the connect button to open a connection
     

    Windows notes: It is recommended to change the options of the RDP connection. This is not possible if you use the connect button. 
    Recommended Changes:
    • Lower the resolution that the remote window is smaller that your workstions desktop.
    • Allow a file share connection to access files from your workstation at the VM. (In case you do not download apps directly via a browser)


  • Use the user/pass that you have assigned during the creation and log in.




Copy (installer) files to the VM?

There are a few ways to get files onto the VM:

  • Download files from the Internet directly on the VM. This is often the fastest way.
  • Linux: Use an application that can copy files via SSH (SFTP).
  • Windows: Use the remote desktop drive share (see above)
  • Windows: Enable the admin shares on the VM and copy everything to //machine/d$




Use the temp drive!

You have a few options to get your installer files to the VM.

In any case you should ALWAYS copy the files to the VMs temp SSD drive.
The drive is located in D: on Windows and /mnt/resources on Linux.
If you extract installers (Like Autodesk), extract it to the temp drive as well.
This keeps the system drive less cluttered and clean.

Note: DO NOT change the temp drive location. RR uses it while rendering!





Install Apps and drivers

Install all the apps that you need and that are not setup in RR as shared exe or shared plugin.


Windows 

Linux

  • If you are using Windows Server and need the browser, then you have to change a setting.
    By default, the Server Manager should be opened after you log in. If not, open it.
    Select your server from the menu on the left and change the IEE settings in the far right column.
  • Set the Windows update policy to urgent updates only.
  • Optional: Enable Admin shares, ping, ...
  • Optional: Disable Windows stuff you do not need.
  • Optional: Set a small swap drive for system apps.
    Edit the /etc/waagent.conf file and set following three parameters:
    ResourceDisk.EnableSwap=y
    ResourceDisk.SwapSizeMB=2048

  • Optional: Create an additional user with the commands
    adduser myuser
    passwd myuser
    Add it to the admin group with:  
    usermod -aG wheel myuser

  • Recommended: Install Midnight commander to have a graphical interface for a simple text editor, browsing folders, change file rights, copy files, ...
    Start it with the global command  mc  OR with   sudo mc   to change/copy protected files.
    yum install mc
    yum install unzip  (to open zip files in mc as if they are a folder)

  • Install SMB/CIFS mount applications:
    yum install cifs-utils

  • Install NFS mount applications:
    yum install nfs-utils

  • Install realm for joining domains:
    yum install sssd realmd oddjob oddjob-mkhomedir adcli samba-common samba-common-tools krb5-workstation openldap-clients policycoreutils-python

  • Royal Render requirements:
    yum install csh

  • Nuke 9 requirements:
    yum install libXv SDL

  • Nuke 10 requirements:
    yum install libGLU libSM libXmu

  • Maya 2016/17/18 requirements:
    yum install  libXrandr libpng12 libSM csh libXp libXpm compat-libtiff3 gamin libxslt pulseaudio-libs libXinerama libXcomposite gstreamer-plugins-base.x86_64 tbb libXcursor

  • Redshift requirements:
    yum install redhat-lsb-core

  • Optional/recommended to download for example a zip with the rrCloudService files
    yum install wget

  • Houdini requirements:
    No requirements known
  • Modo_cl requirements:
    No requirements known





3. Install the RR cloud service



Windows

Linux

Royal Render v8

  • Create a folder on the local drive for the service: C:\Program Files\rrService\
  • Copy the following files from from [RR]/bin/win64 into the newly created folder:
    rrCloudService.exe
    rrLazyPeasant.exe
    QtCore4.dll
    QtNetwork4.dll
    rrShared.dll
    libeay32.dll
    ssleay32.dll
    msvcr120.dll
    msvcp120.dll
  • Open a console with cmd.exe (as admin) and "cd C:\Program Files\rrService" into the directory.
  • Execute rrCloudService /install
  • Create a folder on the local drive for the service and a subfolder for the libs
    sudo mkdir /usr/local/rrService
    sudo mkdir /usr/local/rrService/lib
  • Copy the following files from from [RR]/bin/lx64 and [RR]/bin/lx64/lib into the newly created folders:
    rrCloudService
    rrLazyPeasant
    rrKillWait
    lib/libQtCore.so.4
    lib/libQtNetwork.so.4
    lib/librrShared.so.1
    lib/libcrypto.so.1.0.0
    lib/libssl.so.1.0.0
    lib/7z.so
  • Allow at least all admin users to access the files/folders.
    E.g. change the owner to the group wheel (admins on CentOs) with the commandline
    sudo chown -R root:wheel /usr/local/rrService
  • Add the executable right with the commandlines
    sudo chmod -R +x /usr/local/rrService
  • Execute
    sudo /usr/local/rrService/rrCloudService /install

Royal Render v9

  • Create a folder on the local drive for the service: C:\Program Files\rrService\
  • Copy the following files from from [RR]/bin/win64 into the newly created folder:
    rrCloudService.exe
    rrKillWait.exe
    rrLazyPeasant.exe
    VC_redist_...exe
    7zra.dll
    libcrypto-1_1-x64.dll
    libssl-1_1-x64.dll
    Qt5Core.dll
    Qt5Network.dll
    rrShared.dll
  • Open a console with cmd.exe (as admin) and cd "C:\Program Files\rrService" into the directory.
  • Execute rrCloudService /install
  • If it complains that it misses some MSVC....dll, then run VC_redist_...exe and try again.

  • Create a folder on the local drive for the service and a subfolder for the libs
    sudo mkdir /usr/local/rrService
    sudo mkdir /usr/local/rrService/lib
  • Copy the following files from from [RR]/bin/lx64 and [RR]/bin/lx64/lib into the newly created folders:
    rrCloudService
    rrKillWait
    rrLazyPeasant
    lib/7z.so
    lib/libcrypto.so.1.1
    lib/libQt5Core.so.5
    lib/libQt5Network.so.5
    lib/librrShared.so.1
    lib/libssl.so.1.1
  • Allow at least all admin users to access the files/folders.
    Change the owner to the group wheel (admins on CentOs) with the commandline
    sudo chown -R root:wheel /usr/local/rrService
  • Add the executable right with the commandlines
    sudo chmod -R +x /usr/local/rrService
  • Execute
    sudo /usr/local/rrService/rrCloudService /install


Note: The service will do some changes to a system once a new or this VM is booted 

  • It opens the firewall ports to allow   ping,  ssh/rpd, Azure batch ports, Royal Render ports, windows only: file and printer sharing (includes Admin shares //machine/c$)
  • Linux: Allow SSH login via user accounts (Azure Batch disables this)


The service can/will do the following changes if connected to the rrCloudManager. 

  • Mount drives (according to rrConfig / Paths and drives )
  • Match the time zone with rrCloudManager
  • Joins the domain (according to rrConfig / Cloud )
  • Adds the rrService user to the local admin/wheel group (rrService user is set in rrConfig / Cloud )
  • Adds the rrCloudManger and the additional servers to the host file  (additional servers are set in rrConfig / Cloud ) 
  • Adds the local VM Admin account (rrConfig / Cloud ) for Azure Batch VMs
  • Of course it starts the rrClient





4.  "III. Capture Image"


Continue with the section  >> III. Capture Image