├── CNAME
├── docs
├── logs
│ ├── examples.md
│ ├── 0215_002_0007A_3danim_v002.0096.lock
│ ├── 0215_002_0007A_3danim_v002.projectready
│ └── 0215_002_0007A_3danim_v002.0096.cfg
├── ghcluster-farm.png
├── ghcluster-proxmox.png
├── ghcluster-pegged-CPU.png
├── ghcluster-power-24hr.png
├── ghcluster-power-down.png
├── ghcluster-bn01-console.png
├── ghcluster-pegged-Power.png
├── ghcluster-blenderRender.png
├── blender
│ ├── Blender Cheatsheet v1.pdf
│ ├── architecture
│ │ ├── catArchModelNotes
│ │ │ ├── CATNotes01SimpleChair.blend
│ │ │ └── README.md
│ │ ├── ArchiPack
│ │ │ └── README.md
│ │ └── README.md
│ ├── tutorial
│ │ ├── README.md
│ │ └── learn-bg-anvil.md
│ ├── wip-notes-blender.md
│ ├── blender-create-shelf.md
│ ├── bim
│ │ └── README.md
│ └── README.md
├── testrpi
│ ├── ATX-BenchSupply-Pinout-1.png
│ ├── ATX-BenchSupply-Pinout-2.png
│ ├── ATX-BenchSupply-Diagram-1.png
│ ├── ATX-BenchSupply-Diagram-2.png
│ └── README.md
├── pfsense
│ ├── ghlearn-ghlanNetworkOverviewDiagram.jpeg
│ ├── ghlanOverviewDetail.md
│ └── README.md
├── pxeboot
│ └── README.md
├── gridtemplate
│ ├── ghgridoverview.drawio
│ ├── README.md
│ └── gridtemplate-overview.drawio
├── sketchup
│ └── README.md
├── teststack
│ ├── README.md
│ ├── NetworkMonitors.md
│ └── ubuntu-19.10-Template.md
├── bn000template.html
├── proxmox
│ ├── proxmox-vlan.md
│ └── README.md
├── blenderCacheBake.html
├── gridfarm.html
├── overview.html
├── workflow.html
├── gridmanage.html
├── ghrenderService.html
├── crowdrender
│ ├── README.md
│ └── index.html
├── magma
│ └── README.md
├── freeNAS
│ ├── TrueNASproxmox.md
│ ├── cat9FreeNAS.md
│ ├── README.md
│ └── configuration.md
├── rpiArtist
│ └── README.md
├── ghNetworkMap.md
├── README.md
├── gridfarm.md
├── zerotier
│ └── README.md
├── gridmanage.md
├── ghOverviewDiagram.drawio
├── bn000template.md
├── ghrenderService.md
├── plex
│ └── README.md
├── overview.md
├── workflow.md
├── blenderCacheBake.md
└── coldstorage
│ └── README.md
├── favicon.ico
├── index.html.old
├── ghbin
├── indexFrames.sh
├── tplMaker.sh
├── makeRenderJob.sh
└── nodeRenderService.sh
└── README.md
/CNAME:
--------------------------------------------------------------------------------
1 | gh.2cld.net
2 |
--------------------------------------------------------------------------------
/docs/logs/examples.md:
--------------------------------------------------------------------------------
1 | # Log Examples
2 |
3 |
--------------------------------------------------------------------------------
/favicon.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/2Cld/gh/master/favicon.ico
--------------------------------------------------------------------------------
/docs/ghcluster-farm.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/2Cld/gh/master/docs/ghcluster-farm.png
--------------------------------------------------------------------------------
/docs/ghcluster-proxmox.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/2Cld/gh/master/docs/ghcluster-proxmox.png
--------------------------------------------------------------------------------
/docs/ghcluster-pegged-CPU.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/2Cld/gh/master/docs/ghcluster-pegged-CPU.png
--------------------------------------------------------------------------------
/docs/ghcluster-power-24hr.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/2Cld/gh/master/docs/ghcluster-power-24hr.png
--------------------------------------------------------------------------------
/docs/ghcluster-power-down.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/2Cld/gh/master/docs/ghcluster-power-down.png
--------------------------------------------------------------------------------
/docs/ghcluster-bn01-console.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/2Cld/gh/master/docs/ghcluster-bn01-console.png
--------------------------------------------------------------------------------
/docs/ghcluster-pegged-Power.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/2Cld/gh/master/docs/ghcluster-pegged-Power.png
--------------------------------------------------------------------------------
/docs/ghcluster-blenderRender.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/2Cld/gh/master/docs/ghcluster-blenderRender.png
--------------------------------------------------------------------------------
/docs/blender/Blender Cheatsheet v1.pdf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/2Cld/gh/master/docs/blender/Blender Cheatsheet v1.pdf
--------------------------------------------------------------------------------
/docs/testrpi/ATX-BenchSupply-Pinout-1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/2Cld/gh/master/docs/testrpi/ATX-BenchSupply-Pinout-1.png
--------------------------------------------------------------------------------
/docs/testrpi/ATX-BenchSupply-Pinout-2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/2Cld/gh/master/docs/testrpi/ATX-BenchSupply-Pinout-2.png
--------------------------------------------------------------------------------
/docs/testrpi/ATX-BenchSupply-Diagram-1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/2Cld/gh/master/docs/testrpi/ATX-BenchSupply-Diagram-1.png
--------------------------------------------------------------------------------
/docs/testrpi/ATX-BenchSupply-Diagram-2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/2Cld/gh/master/docs/testrpi/ATX-BenchSupply-Diagram-2.png
--------------------------------------------------------------------------------
/docs/logs/0215_002_0007A_3danim_v002.0096.lock:
--------------------------------------------------------------------------------
1 | blamURL=bmbn00
2 | bidCreated='Sat May 18 16:52:42 CDT 2019'
3 | bidWon='Sat May 18 16:52:43 CDT 2019'
4 |
--------------------------------------------------------------------------------
/docs/pfsense/ghlearn-ghlanNetworkOverviewDiagram.jpeg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/2Cld/gh/master/docs/pfsense/ghlearn-ghlanNetworkOverviewDiagram.jpeg
--------------------------------------------------------------------------------
/docs/logs/0215_002_0007A_3danim_v002.projectready:
--------------------------------------------------------------------------------
1 | currentJobProject=0215_002_0007A_3danim_v002
2 | # Project: 0215_002_0007A_3danim_v002
3 | # Date: Sat May 18 15:45:43 CDT 2019
4 |
--------------------------------------------------------------------------------
/docs/blender/architecture/catArchModelNotes/CATNotes01SimpleChair.blend:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/2Cld/gh/master/docs/blender/architecture/catArchModelNotes/CATNotes01SimpleChair.blend
--------------------------------------------------------------------------------
/docs/blender/tutorial/README.md:
--------------------------------------------------------------------------------
1 | # Learning Blender Tutorials
2 |
3 | ## [Blender Guru - Andrew P Price](https://www.youtube.com/user/AndrewPPrice/videos)
4 | - [Donut - Blender Guru - Beginner](./learn-bg-donut)
5 | - [Anvil - Blender Guru](./learn-bg-anvil)
6 | - [Archviz - Blener Guru]()
7 | -
8 |
--------------------------------------------------------------------------------
/docs/logs/0215_002_0007A_3danim_v002.0096.cfg:
--------------------------------------------------------------------------------
1 | zipBucket='/media/farm/0215_002_0007A_zip/'
2 | rendBucket='/media/farm/0215_002_0007A_rend/'
3 | zip='0215_002_0007A_3danim_v002.zip'
4 | blend='0215_002_0007A_3danim_v002.blend'
5 | fileName='0215_002_0007A_3danim_v002'
6 | frameName='0215_002_0007A_3danim_v002.0096'
7 | start='0096'
8 | end='0096'
9 |
--------------------------------------------------------------------------------
/docs/pxeboot/README.md:
--------------------------------------------------------------------------------
1 | # PXE Boot images
2 | All systems should have a custom pxe image
3 |
4 | ## Windows PXE
5 | - [Deploy Windows 10 using PXE](https://docs.microsoft.com/en-us/windows/deployment/deploy-windows-cm/deploy-windows-10-using-pxe-and-configuration-manager)
6 | - [Windows Deployments](https://docs.microsoft.com/en-us/windows/deployment/windows-10-deployment-scenarios)
7 |
--------------------------------------------------------------------------------
/docs/gridtemplate/ghgridoverview.drawio:
--------------------------------------------------------------------------------
1 | UzV2zq1wL0osyPDNT0nNUTV2VTV2LsrPL4GwciucU3NyVI0MMlNUjV1UjYwMgFjVyA2HrCFY1qAgsSg1rwSLBiADYTaQg2Y1AA==
--------------------------------------------------------------------------------
/index.html.old:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | gh-2cld
6 |
7 |
8 |
9 | gh.2cld.net Project Site
10 |
13 |
14 |
15 |
16 |
--------------------------------------------------------------------------------
/docs/sketchup/README.md:
--------------------------------------------------------------------------------
1 | # sketchup
2 |
3 | - https://app.sketchup.com/app
4 | - christrees@gmail.com is user with google autologin
5 | - tbd
6 | - Tutorial 1 [yt-melosazemi SketchUp for Complete Beginners](https://www.youtube.com/watch?v=tkLfb-fuMSM)
7 | - https://melosazemi.com/become-an-expert
8 | - [free download of floorplan and render](https://drive.google.com/drive/folders/1Pw7RC446GH6Z2OdJtHNvtveyhdkwJdFQ)
9 | - downloaded render and floorplan catsurface downloads should add here
10 | - Tutorial 1 notes
11 | - tbd
12 | - Master Class [yt-mastersketchup](https://www.youtube.com/@Mastersketchup)
13 |
--------------------------------------------------------------------------------
/docs/teststack/README.md:
--------------------------------------------------------------------------------
1 | # Example Test Stack
2 |
3 |
4 | 1. WEB FrontEnd
5 | - CPU: Quad core 2GHz+ CPU
6 | - RAM: 6 GB
7 | - SSD: 64 GB
8 | - Ubuntu Server 19.10
9 | 2. Authentication service
10 | - CPU: Quad core 2GHz+ CPU
11 | - RAM: 4 GB
12 | - SSD: 64 GB
13 | - Ubuntu Server 19.10
14 | 3. API Gateway / Docker
15 | - CPU: Quad core 2GHz+ CPU
16 | - RAM: 16 GB
17 | - SSD: 500 GB
18 | - Ubuntu Server 19.10
19 | 4. MongoDB
20 | - CPU: Quad core 2GHz+ CPU
21 | - RAM: 32 GB
22 | - SSD: 500 GB (SSD for best performance)
23 | - Ubuntu Server 19.10
24 | 5. AI Machine
25 | - CPU: Quad core i7 or superior
26 | - RAM: 32GB
27 | - SSD: 250GB
28 | - Graphic card: Nvidia Titan RTX, Nvidia Titan XP or similar
29 |
30 |
--------------------------------------------------------------------------------
/docs/bn000template.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | Below displays http://gh.2cld.net/docs/bn000template.md
6 | Return to Docs index
7 |
8 |
9 |
10 |
11 |
23 |
24 |
25 |
--------------------------------------------------------------------------------
/docs/proxmox/proxmox-vlan.md:
--------------------------------------------------------------------------------
1 | # proxmox vlan config
2 |
3 | ## commandline
4 | 1. List vm on server
5 | ```
6 | qm list
7 | ```
8 | 2. Start vm on server
9 | ```
10 | qm start 601
11 | ```
12 | 2. Stop vm on server
13 | ```
14 | qm stop 601
15 | ```
16 |
17 | ## network config
18 | - Where the network config that matters lives
19 | ```
20 | vi /etc/network/interfaces
21 |
22 | service networking restart
23 |
24 | /etc/init.d/networking restart
25 | ```
26 | - Adding VLAN to proxmox [Nic VLAN tagging](https://forum.proxmox.com/threads/proxmox-single-nic-vlan-tagging.44415/)
27 |
28 | ### References
29 | - [Proxmox Networks vlan bridge nat](https://pve.proxmox.com/wiki/Network_Configuration)
30 | - [Proxmox Command Line Tools](https://pve.proxmox.com/wiki/Command_line_tools)
31 | - [Debian VLAN](https://wiki.debian.org/NetworkConfiguration#Howto_use_vlan_.28dot1q.2C_802.1q.2C_trunk.29_.28Etch.2C_Lenny.29)
32 |
--------------------------------------------------------------------------------
/docs/blenderCacheBake.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 | Below displays http://gh.2cld.net/docs/blenderCacheBake.md
7 | Return to Docs index
8 |
9 |
10 |
11 |
12 |
24 |
25 |
26 |
--------------------------------------------------------------------------------
/docs/gridfarm.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | Below displays http://gh.2cld.net/docs/gridfarm.md
6 | Return to Docs index
7 |
8 |
9 |
10 |
11 |
25 |
26 |
27 |
--------------------------------------------------------------------------------
/docs/overview.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | Below displays http://gh.2cld.net/docs/overview.md
6 | Return to Docs index
7 |
8 |
9 |
10 |
11 |
25 |
26 |
27 |
--------------------------------------------------------------------------------
/docs/workflow.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | Below displays http://gh.2cld.net/docs/workflow.md
6 | Return to Docs index
7 |
8 |
9 |
10 |
11 |
25 |
26 |
27 |
--------------------------------------------------------------------------------
/docs/gridmanage.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | Below displays http://gh.2cld.net/docs/gridmanage.md
6 | Return to Docs index
7 |
8 |
9 |
10 |
11 |
25 |
26 |
27 |
--------------------------------------------------------------------------------
/docs/ghrenderService.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | Below displays http://gh.2cld.net/docs/ghrenderService.md
5 | Return to Docs index
6 |
7 |
8 |
9 |
10 |
24 |
25 |
26 |
--------------------------------------------------------------------------------
/ghbin/indexFrames.sh:
--------------------------------------------------------------------------------
1 | #!/bin/bash
2 |
3 | # This is a script to take a series of frames that have been rendered with a step and
4 | # index them into a sequence on ones.
5 |
6 | echo "What is the file path to the folder holding the frames?"
7 | read path
8 |
9 | echo "What would you like the new frames to be called (hint: not the same name)"
10 | read filename
11 |
12 | echo "What frame would you like the new indexed frames to start?"
13 | read start
14 |
15 | echo "What is the extension for the outputted frames?"
16 | read extension
17 |
18 | index=$start
19 |
20 | while read frame
21 | do
22 | paddedNumber=$(printf "%04d" $index)
23 | echo "moving $frame to $path/$filename.$paddedNumber.$extension"
24 | cp $frame $path/$filename.$paddedNumber.$extension
25 | # ( index++ )
26 | let index=$index+1
27 |
28 | # if [ "${#projectQuery}" < "5" ]
29 | # then
30 | # break
31 | # fi
32 | # source $projectQuery
33 | # ghDebug "scanProject $baseName $animBucket $rendBucket"
34 | # scanProject $baseName $animBucket $rendBucket
35 |
36 | done < <( ls -1 $path/*$extension )
37 |
--------------------------------------------------------------------------------
/docs/crowdrender/README.md:
--------------------------------------------------------------------------------
1 | # Crowd-Render
2 |
3 | - [Crowd-Render main site](https://www.crowd-render.com/ )
4 | - [Crowd-Render YouTube videos](https://www.youtube.com/channel/UCo26vYNF6WzMuVM10xzO7sQ/videos)
5 | - [Github (docker)](https://github.com/crowdrender/cr-docker)
6 | - [Github (docker NVidia)]( https://github.com/NVIDIA/nvidia-docker )
7 |
8 | ## Setup
9 | - [Quick Build | Making a render farm in Blender 2.81](https://www.youtube.com/watch?v=NLhdJ5a-jy4)
10 |
11 | ## Distributed Render setup
12 | - [Crowd-Render -> Packing libraries and assets](https://youtu.be/ttZVSYKFcgE)
13 | - [Explains External Data -> Automatically Pack into .blend](https://youtu.be/ttZVSYKFcgE?t=100) Warning: This does NOT pack Linked and Append files which is why it's an issue with distributed rendering
14 | - [Explains Save As -> pack all .blend](https://youtu.be/ttZVSYKFcgE?t=257)
15 | - [Shows the hard to find command ](https://youtu.be/ttZVSYKFcgE?t=544)
16 | - Edit -> Search: "pack"
17 | - Select: "File: Pack Blender Libraries"
18 | - Save As: "whatever_pack_all_libs.blend"
19 | - Copy THAT blend file to distributed nodes
20 | - Resync and render
21 |
--------------------------------------------------------------------------------
/docs/magma/README.md:
--------------------------------------------------------------------------------
1 | [edit](https://github.com/2cld/gh/edit/master/docs/magma/README.md)
2 |
3 | # Magma
4 |
5 | - [ghMagma_Install google doc ghadmin](https://docs.google.com/document/d/1OMynAqcAFVLHyYkqTRr9BIQ2l7WvQnIka_QEcX6eXOc/edit)
6 | - [how-to-install-joomla-4-0-on-ubuntu-20-04](https://linuxhostsupport.com/blog/how-to-install-joomla-4-0-on-ubuntu-20-04/)
7 | - [netplan](https://netplan.io/examples)
8 | - [nfs mount on 22.04](https://www.digitalocean.com/community/tutorials/how-to-set-up-an-nfs-mount-on-ubuntu-22-04)
9 | - [open mysql port 3306 in ubuntu](https://devstudioonline.com/article/allow-mysql-to-access-anywhere-at-port-3306-in-ubuntu)
10 |
11 | ---
12 |
13 | - [Joomla on Synology](https://mariushosting.com/how-to-install-joomla-on-your-synology-nas/)
14 | - [plex on Synology](https://forums.plex.tv/t/installation-setup-of-plex-media-server-on-synology/572179/8)
15 |
16 | ---
17 |
18 | - [Virtual Box download](https://www.virtualbox.org/wiki/Downloads)
19 | - [Microsoft Visual C++ Redistributable for Visual Studio 2017](https://visualstudio.microsoft.com/vs/older-downloads/)
20 | - [Microsoft Visual C++ Redistributable for Visual Studio 2019](https://my.visualstudio.com/Downloads?q=visual%20studio%202019&wt.mc_id=o~msft~vscom~older-downloads)
21 |
--------------------------------------------------------------------------------
/docs/gridtemplate/README.md:
--------------------------------------------------------------------------------
1 | # Grid Template
2 | Overview of components and innterconnect for an IaS grid deployment.
3 |
4 | ## Components
5 | 
6 |
7 | Note: gridtemplate-overview [Edit via draw.io](https://app.diagrams.net/#H2cld%2Fgh%2Fmaster%2Fdocs%2Fgridtemplate%2Fgridtemplate-overview.drawio)
8 |
9 | 1. POE Node - WAN Point of Entry
10 | - Router [pfsense](https://www.pfsense.org/)
11 | - Firewall [pfsense](https://www.pfsense.org/)
12 | - Switch [pfsense](https://www.pfsense.org/) or [cumulus](https://cumulusnetworks.com/products/cumulus-linux/)
13 | 2. LAN SDN - Local Area Network (LAN) Software Defined Network (SDN)
14 | - DHCP [drp](http://rebar.digital/)
15 | - iPXE [drp](http://rebar.digital/)
16 | - DNS [drp](http://rebar.digital/)
17 | - Subnets
18 | - VLAN
19 | 3. CPU SDC - Central Processing Unit (CPU) Software Defined Compute (SDN)
20 | - Bare Metal Boot iPXE [drp](http://rebar.digital/)
21 | - Virtual Machines [proxmox](https://www.proxmox.com/en/proxmox-ve)
22 | - K8s [k8s](https://kubernetes.io/)
23 | 4. Storage SDS - Software Defined Storage (SDS)
24 | - local [drp](http://rebar.digital/)
25 | - iSCSI [drp](http://rebar.digital/) [freeNAS](https://www.freenas.org/)
26 | - NFS [freeNAS](https://www.freenas.org/)
27 | - ceph [proxmox](https://www.proxmox.com/en/proxmox-ve)
28 |
--------------------------------------------------------------------------------
/docs/freeNAS/TrueNASproxmox.md:
--------------------------------------------------------------------------------
1 | Install TrueNAS scale on proxmos
2 |
3 | # TrueNAS Scale on Proxmox [youtube](https://youtu.be/2Ja_e6CMkNY?list=PLOgmFrM3hTGdPanIqKXMI5yx76cPlsOHO)
4 |
5 | - [tc 10:35 Create vm](https://youtu.be/2Ja_e6CMkNY?t=635) - TrueNAS scale iso [download url](https://download.truenas.com/TrueNAS-SCALE-Bluefin/22.12.0/TrueNAS-SCALE-22.12.0.iso)
6 | - node: cg VM ID: 102 Name: truenas StartupOrder: 2 StatupDelay: 30
7 | - Qemu Agent: checked
8 | - scsi0 50GB QEMU image format SSD emulation
9 | - 4 more drives for testing
10 | - CPU: 4 cores Type host
11 | - Mem 24576, uncheck Ballooning Device
12 | - Passthrough PCI Hardware->Add->PCI Device find controller and pass through check all functions
13 |
14 | ## Plex app install issues
15 | - [TrueNAS: Full Setup Guide for Setting Up Portainer, Containers and Tailscale](https://www.youtube.com/watch?v=R7BXEuKjJ0k) - [level1 techs store](https://store.level1techs.com/)
16 | - [TrueNAS Scale Apps - Official, Unofficial, Docker, and Kubernetes](https://www.youtube.com/watch?v=oafOky5GSzc)
17 | - [truenas-scale-cannot-deploy-plex](https://www.truenas.com/community/threads/truenas-scale-cannot-deploy-plex.100397/)
18 | - [Plex Docker Container with NFS mounts](https://www.youtube.com/watch?v=OffGg2F6TlU)
19 |
20 | ## Truenas scale k3s issues
21 | - [k3s.yaml permission denied issue](https://devops.stackexchange.com/questions/16043/error-error-loading-config-file-etc-rancher-k3s-k3s-yaml-open-etc-rancher)/config
22 | - [.kube config issue](https://devops.stackexchange.com/questions/16013/k3s-the-connection-to-the-server-localhost8080-was-refused-did-you-specify-t/16014#16014)
23 | - [expose k3s api in truenas scale](https://www.reddit.com/r/truenas/comments/onu407/exposing_k3s_api_in_truenas_scale/)
24 |
--------------------------------------------------------------------------------
/docs/blender/architecture/ArchiPack/README.md:
--------------------------------------------------------------------------------
1 | # ArchiPack
2 | Blender add-on Archipack
3 |
4 | ## Install and simple [tutorial](https://www.youtube.com/watch?v=l-aom9PyosM)
5 | 1. Info [blender-archipack.org](https://blender-archipack.org)
6 | 2. Install via add-on in Blender 2.8 [TC 1:43](https://youtu.be/l-aom9PyosM?t=103)
7 | - Edit -> Prefernces -> Search "archi"
8 | - Click "Add Mesh Archipack"
9 | 3. Verify new Add-on by adding a wall
10 | - Add -> Mesh -> Archipack -> Wall
11 | - Shift-A -> M (Mesh) -> A (Archipack) -> W (Wall)
12 | 4. Set units to Feet
13 | - Scene -> Units: Imperial - Length: Feet [TC 2:49](https://youtu.be/l-aom9PyosM?t=169)
14 | - Edit values by clicking on them [TC 3:00](https://youtu.be/l-aom9PyosM?t=180)
15 | - make wall 10' x 10' x 0.5' and close in
16 | 5. Click arrows at end of wall to add another wall segment do this to make a box [TC 4:36](https://youtu.be/l-aom9PyosM?t=276)
17 | 6. Render out complex objects [TC 5:27](https://youtu.be/l-aom9PyosM?t=327)
18 | 7. Add window to your box [TC 6:39](https://youtu.be/l-aom9PyosM?t=399)
19 | - Setup Window to auto insert into wall [TC 7:15](https://youtu.be/l-aom9PyosM?t=435)
20 | - Select Window and Wall object got to Archiback Create -> Boolean
21 |
22 |
23 | ## Other
24 | - [Floor Plan Part 1](https://www.youtube.com/watch?v=eiDVmoecTw4)
25 | - [Floor Plan Part 2](https://www.youtube.com/watch?v=YdpiSFWC4UQ)
26 | - [CAD for Blender](https://www.youtube.com/watch?v=tUU5D13nBJs)
27 | - [Snapping in Blender](https://www.youtube.com/watch?v=0p06F1LzTjQ) good for alignment of objects
28 | - [Cutters in Blender](https://www.youtube.com/watch?v=ADiqhdBF-WY)
29 | - [Model a toilet](https://www.youtube.com/watch?v=AQLNMRJiaIU)
30 | - [openvisualfx.com](https://openvisualfx.com/)
31 |
--------------------------------------------------------------------------------
/docs/rpiArtist/README.md:
--------------------------------------------------------------------------------
1 | # Artist Blender Station on Raspberry Pi 4
2 | The purpose is to setup a Raspberry Pi 4 as an Artist Workstation for Blender 2.8x use.
3 |
4 | ## Setup
5 | 1. Download [Raspbian Buster with desktop and recommended software](https://www.raspberrypi.org/downloads/raspbian/).
6 | 2. The 2.65 GB file name was: 2020-02-05-raspbian-buster-full.zip at the time of this document.
7 | 3. Download [Balena.io Etcher](https://github.com/balena-io/etcher) and install.
8 | 4. Burn raspbian to SD Card.
9 | 5. Insert SD Card into rpi4 and power-on. You will be asked config information an will be required to reboot.
10 | 6. After reboot we need to [update to debian bullseye](https://ultra-technology.org/linux_for_beginners/from-buster-to-bullseye-debian/):
11 | 1. Edit /etc/apt/sources.list to add bullseye
12 | ```bash
13 | deb http://ftp.uk.debian.org/debian/ bullseye main contrib non-free
14 | ```
15 | 2. Update the system package database. New package versions will be available:
16 | ```bash
17 | sudo apt update
18 | ```
19 | 3. Make a full upgrade of the system (this may take awhile and has a few interactive prompts):
20 | ```bash
21 | sudo apt upgrade
22 | sudo apt dist-upgrade
23 | ```
24 | 4. Reboot the system to start new kernel and services.
25 | 5. Check the release:
26 | ```bash
27 | lsb_release -a
28 | ...
29 | Distributor ID: Debian
30 | Description: Debian GNU/Linux bullseye/sid
31 | Release: testing
32 | Codename: bullseye
33 | ```
34 | 7. Install blender:
35 | ```bash
36 | apt-get install blender
37 | ```
38 | 8. Check blender version (should be 2.82 at the time of this document):
39 | ```bash
40 | blender --version
41 | ```
42 | 9. Start blender and check
43 | ```bash
44 | ./blender
45 | ```
46 |
--------------------------------------------------------------------------------
/ghbin/tplMaker.sh:
--------------------------------------------------------------------------------
1 | #!/bin/bash
2 |
3 | # !!!! THIS SCRIPT MUST BE RUN ON GALAXY !!!!
4 |
5 | # This is a script that is to be used to help create the tpl files for the shots and elements
6 | # that need to be created for MAGMA's tools to run.
7 |
8 | # 1. First we need to create a file that looks like this if it has not already been created.
9 |
10 | # administrator@rn09:/media/gh/ghprojects$ cat 0188_000.tpl
11 | # projectName='0188_000'
12 | # seriesNumber='0188'
13 | # showNumber='000'
14 | # zipName='_zip'
15 | # rendName='_rend'
16 |
17 | # The only variable parts of this are seriesNumber and showNumber which combined make up the
18 | # projectName which is also the .tpl file name
19 |
20 | # Then we need to make shot or element templates like this.
21 |
22 | # administrator@rn09:/media/gh/ghprojects$ cat 0188_001_0001A.tpl
23 | # shotName='_0001A'
24 | # start='1'
25 | # end='58'
26 | # step='2'
27 |
28 | # The name shotName reveals that most likely it will be a shot that we are working with.
29 | # This is where we really have the greatest need. The goal is to have the code
30 | # run all shots and elements in the database for a given show so we don't have to
31 | # individually make them.
32 |
33 | # So we need to call the database to retrieve a list of all the shots and elements along
34 | # with their respective start and end frames. Since step is typically a project wide
35 | # variable, we will just enter that manually by querying the user for input.
36 |
37 | # mysql -u magma -pG0B0tsMicr0B0ts69 < Volumes -> Create Dataset (under the Volume OR Dataset you desire)
46 |
47 |
48 |
--------------------------------------------------------------------------------
/docs/crowdrender/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | crowdrender for Blender Render Grid
5 | General
6 | Crowd-Render https://www.crowd-render.com/
7 | cat9box - What#Time https://discovery.crowd-render.com/download
8 | Github (docker) https://github.com/crowdrender/cr-docker
9 | Github (docker NVidia) https://github.com/NVIDIA/nvidia-docker
10 |
11 | Setup YouTube - Quick Build | Making a render farm in Blender 2.81
12 | Start Blender
13 | Install Crowd-Render Addon YouTube - Install Addon
14 |
15 | Edit -> Preferences -> Add-ons
16 | Uninstall old (if one exist) Search: crowd then click X (remove)
17 | Click "Install"
18 | Search for the cr_022_bl280.zip file you downloaded
19 | Click the checkbox to enable
20 | Click the Add-in (filefolder like icon) in the blender panel
21 | Click start in the blender addon panel (to the right)
22 | Should get a new addon panel
23 |
24 |
25 | Add other nodes
26 |
27 | Crowdrender -> Render Nodes click +
28 | Enter remote node name and IP address
29 | Node should eventually be highlighted and "synced" in Render Nodes list
30 | WARNING!!! The blend project MUST BE PACKAGES (both assets and libraries)
31 |
32 |
33 | Use "Render still" or "Animation" Crowd Render buttons to create a render
34 |
35 | FIX
36 | FIX Windows if old version was running Windows Fix FIX
37 |
38 |
39 |
40 |
--------------------------------------------------------------------------------
/docs/pfsense/ghlanOverviewDetail.md:
--------------------------------------------------------------------------------
1 | # Overview of pfsense config of gh.lan
2 |
3 | ## [youtube - gh.lan Overview](https://youtu.be/HJzfB8MpkJg)
4 |
5 | 1. Review [gh.2cld.net/docs/](http://gh.2cld.net/docs/) [TC 0:56](https://youtu.be/HJzfB8MpkJg?t=56)
6 | 2. Talk through existing IP space using doc [TC 3:54](https://youtu.be/HJzfB8MpkJg?t=234)
7 | 3. Begin the below drawing [TC 4:33](https://youtu.be/HJzfB8MpkJg?t=273)
8 | 
9 | 4. Show DHCP Lease IP assignment [TC 7:47](https://youtu.be/HJzfB8MpkJg?t=467)
10 | 5. Show WAN interface 192.168.254.1 DNS Server [TC 10:06](https://youtu.be/HJzfB8MpkJg?t=606)
11 | 6. Discribe the 2 network LAN pools old - 192.168.254.0/24 and new - 192.168.252.0/23 [TC 11:15](https://youtu.be/HJzfB8MpkJg?t=675)
12 | 7. Why we are layering to gain control and future VLANs [TC 12:28](https://youtu.be/HJzfB8MpkJg?t=748)
13 | 8. Show pfsense interfaces WAN and LAN [TC 16:42](https://youtu.be/HJzfB8MpkJg?t=1002)
14 | 9. Show pfsense WAN firewall rules [TC 18:51](https://youtu.be/HJzfB8MpkJg?t=1131)
15 | 10. Show pfsense LAN firewall rules [TC 19:31](https://youtu.be/HJzfB8MpkJg?t=1171)
16 | 11. pfsense Dashboard widgets [TC 22:56](https://youtu.be/HJzfB8MpkJg?t=1376)
17 | 12. pfsense Screens Walkthrough [TC 24:00](https://youtu.be/HJzfB8MpkJg?t=1440)
18 | 13. pfsense DHCP Server [TC 28:39](https://youtu.be/HJzfB8MpkJg?t=1719)
19 | 14. pfsense DNS Server [TC 30:43](https://youtu.be/HJzfB8MpkJg?t=1843)
20 | 15. pfsense DNS Host Overrides [TC 32:54](https://youtu.be/HJzfB8MpkJg?t=1974)
21 | 16. pfSense DHCP MAC to IP Mappings [TC 33:55](https://youtu.be/HJzfB8MpkJg?t=2035)
22 | 17. Change document gateway IP to netstack standard [TC 36:08](https://youtu.be/HJzfB8MpkJg?t=2168)
23 | 18. Review Network Traffic using Diagram [TC 33:04](https://youtu.be/HJzfB8MpkJg?t=2284)
24 | 19. Add sg.gh.lan DNS entry [TC 39:59](https://youtu.be/HJzfB8MpkJg?t=2399)
25 | 20. Add ng.gh.lan DNS entry [TC 43:25](https://youtu.be/HJzfB8MpkJg?t=2605)
26 | 21. Go through a DHCP MAC resolution to IP to DNS [TC 48:27](https://youtu.be/HJzfB8MpkJg?t=2907)
27 | 22. Debug sg.gh.lan DNS name resolution [TC 56:00](https://youtu.be/HJzfB8MpkJg?t=3360)
28 |
29 |
30 | -----
31 |
32 | 0. [TC tbd]()
33 | 1. [TC tbd]()
34 | 2. [TC tbd]()
35 | 3. [TC tbd]()
36 | 4. [TC tbd]()
37 | 5. [TC tbd]()
38 | 6. [TC tbd]()
39 | 7. [TC tbd]()
40 | 8. [TC tbd]()
41 | 9. [TC tbd]()
42 |
--------------------------------------------------------------------------------
/docs/testrpi/README.md:
--------------------------------------------------------------------------------
1 | # Test of Raspberry Pi 5 cluster
2 |
3 | - Based on [edgelab.digital](https://github.com/digitalrebar/edgelab)
4 |
5 | ## Power setup
6 | 1. 3.0A for Raspberry Pi 4 Model B (2.5A for B+) [pi-power](https://www.raspberrypi.org/documentation/faqs/#pi-power)
7 | 2. 60W = 3A x 5V x 4 rpi4 5V Power source for stack
8 | 3. 20A @ 5V so an old PC ATX Power supply would work.
9 |
10 | ## Mechanical setup
11 | 1. Use a [4 cluster case](https://www.amazon.com/gp/product/B07CTG5N3V/ref=ppx_yo_dt_b_asin_title_o00_s00?ie=UTF8&psc=1)
12 | 2. Use a [8 port TPLink TL-SG108E](https://www.amazon.com/gp/product/B00K4DS5KU/ref=ppx_yo_dt_b_search_asin_title?ie=UTF8&psc=1)
13 |
14 | ## Schematics
15 | 
16 | 
17 | 
18 | 
19 |
20 | ## Notes:
21 | - [CircuitPython](https://en.wikipedia.org/wiki/CircuitPython)
22 | - [LiPo SHIM rpi lithuium ion battery pack shim](https://shop.pimoroni.com/products/lipo-shim)
23 | - [ATX Standards](https://en.wikipedia.org/wiki/Power_supply_unit_(computer))
24 | - [ATX Bench Supply Tutorial](https://www.youtube.com/watch?v=n_A-jkpjpcM)
25 | - [ATX Power Supply pinout](https://youtu.be/n_A-jkpjpcM?t=768)
26 | - [Patch Panel wire diagram](https://youtu.be/n_A-jkpjpcM?t=1360)
27 | - [Volt Amp Meter wire diagram](https://youtu.be/n_A-jkpjpcM?t=2157)
28 | - [ATX Power Supply](https://www.youtube.com/watch?v=UiaqnFYK6SE)
29 | - [Andreas Spiess YouTube](https://www.youtube.com/channel/UCu7_D0o48KbfhpEohoP7YSQ/videos)
30 | - [RPi4 SSD Boot](https://www.youtube.com/watch?v=gp6XW-fGVjo)
31 | - [RPi Docker Setup](https://www.youtube.com/watch?v=a6mjt8tWUws)
32 | - [WiFi Antennas Long-Range Mode - Part1](https://www.youtube.com/watch?v=2rujjTOPIRU)
33 | - [WiFi Antennas Long-Range Mode - Part2](https://www.youtube.com/watch?v=PUppoaePi3A)
34 | - [WiFi Antennas Optimization with N1201SA VNA](https://www.youtube.com/watch?v=ZpKoLvqOWyc)
35 | - [Amazon - N1201SA VNA](https://www.amazon.com/KKmoon-137-5MHz-2-7GHz-Measuring-Instrument-Impedance/dp/B081SVYMPZ/ref=sr_1_fkmr1_2?keywords=N1201A+Vector+Impedance+Analyzer&qid=1583439104&sr=8-2-fkmr1)
36 | - [MotionEyeOS - Surveillance RPi](https://www.youtube.com/watch?v=NbFruaDUKB0)
37 | - [RPi4 V1.1 vs V1.2 Power H/W Issue](https://www.youtube.com/watch?v=_wt9NTa1UNE)
38 |
39 | ### My issues with edgelab-demo
40 | - [EEProm on fresh rpi4](https://github.com/digitalrebar/edgelab/issues/9)
41 | - [Missing rpi4 iso on default](https://github.com/digitalrebar/edgelab/issues/10)
42 |
--------------------------------------------------------------------------------
/docs/freeNAS/README.md:
--------------------------------------------------------------------------------
1 | # FreeNAS
2 |
3 | The 2cld storage infrastructure pattern uses ZFS storage mounted via NFS, SMB and iSCSI via a FreeNAS server. Storage allocation, snapshots and recovery are determined via project / customer SLA and maintained through management of ZFS snapshot, replication and rsync tools via the FreeNAS server.
4 |
5 | ## Grasshorse Storage Infrastructure
6 |
7 | 1. [projects.gh.lan](https://192.168.254.6) - Production Pipline Project Storage
8 | 2. [garage.gh.lan](https://192.168.254.7) - Enterprise storage for ZFS volume replication
9 | 3. [CATFreeNAS](https://192.168.254.14) - DeepStorage and Disaster Recovery
10 |
11 | ### Snapshot, Replication and Recover
12 |
13 | 1. [projects.gh.lan](https://192.168.254.6)
14 | 1. ZFS Volumes
15 | - Projects
16 | 2. ZFS Snapshot every 2hrs
17 | 3. ZFS Replication to [garage.gh.lan](https://192.168.254.7) every night starting at 8PM CST
18 | 4. Keep 28 snapshots ?
19 | 2. [garage.gh.lan](https://192.168.254.7)
20 | 1. ZFS Volumes
21 | - Projects (target for ZFS replication)
22 | 2. XFS Snapshot daily at 4pm
23 |
24 | 
25 |
26 | ### Reference
27 | - [Lawrence Systems - FreeNAS 11.2 Snapshots / Replication](https://www.youtube.com/watch?v=Ge8eLR2FvDU&list=PLjGQNuuUzvmug2-LMfh43ehP9nt8gmCSf&index=36)
28 | - [Lawrence Systems - How To Backup Your FreeNAS 11.3 Using ZFS Replication](https://www.youtube.com/watch?v=et7JyacV_hA&list=PLjGQNuuUzvmug2-LMfh43ehP9nt8gmCSf&index=5)
29 | - [Lawrence Systems - How To Backup Your FreeNAS 11.3 Using ZFS Replication](https://www.youtube.com/watch?v=et7JyacV_hA)
30 | - [Zerotier vpn on Freebsd](https://gist.github.com/dch/b36dd170209e65677d23f77c44825b5a)
31 | - [Zerotier CLI](https://zerotier.atlassian.net/wiki/spaces/SD/pages/29065282/zerotier-cli)
32 | - [Lawrence Systems - ZeroTier on FreeNAS](https://forums.lawrencesystems.com/t/zerotier-on-freenas/1650)
33 | - [IXXyxtems - ZeroTier on FreeNAS](https://www.ixsystems.com/community/threads/zerotier-how-is-this-configured.56070/)
34 | - [FreeNAS - Zerotier Setup](https://techmaniac.in/freenasyt/freenasyt.html)
35 | - [Lawrence Systems - FreeNAS VPN | Zerotier Setup | Remote Access FreeNAS Jail and Console](https://www.youtube.com/watch?v=fEkybngMcWk)
36 | - [Fun with ZFS send and receive](https://128bit.io/2010/07/23/fun-with-zfs-send-and-receive/)
37 | - The config instructions for [cat9FreeNAS](./cat9FreeNAS.md) from original 2017-10-26 [cat9FreeNAS google doc](https://docs.google.com/document/d/1kE2nafGL4KOyLlbPjma4ittpz_pkTlQPhcBlV2qrHMU/edit)
38 |
--------------------------------------------------------------------------------
/docs/README.md:
--------------------------------------------------------------------------------
1 | [edit](https://github.com/2cld/gh/edit/master/docs/README.md)
2 |
3 | [Network Map](./ghNetworkMap)
4 |
5 | ## [gh.lan](http://gh.2cld.net) using [netstack](https://netstack.org/docs) organizational service gateways
6 | - ng.gh.lan Network Gateway Overview [youtube - network - ng.gh.lan](https://youtu.be/HJzfB8MpkJg) detail [document - pfsense - ng.gh.lan](./pfsense/ghlanOverviewDetail)
7 | - sg.gh.lan Storage Gateway Overview [tbd youtube - storage - sg.gh.lan]()
8 | - cg.gh.lan Compute Gateway Overview [tbd youtube - compute - cg.gh.lan]()
9 |
10 | ## [ng.gh.lan](https://ng.gh.lan) Network Gateway configuration with [pfsense.org](https://www.pfsense.org/)
11 | - ng.gh.lan uses pfsense [document - pfsense](./pfsense/)
12 | - ng.gh.lan [youtube - network - ng.gh.lan](https://youtu.be/HJzfB8MpkJg) detail [document - pfsense - ng.gh.lan](./pfsense/ghlanOverviewDetail)
13 | - ng.gh.lan network setup [document - Netstack pfSense - Setup](https://netstack.org/docs/lan/network/pfsense/setup)
14 | - ng.gh.lan network maintainace - tbd
15 | - ng.gh.lan network disaster recovery (dr) - tbd
16 |
17 | ## [sg.gh.lan](https://sg.gh.lan) Storage Gateway configuration with [freenas.org](https://www.freenas.org/)
18 | - sg.gh.lan storage - freenas [document - freenas](./freeNAS/)
19 | - sg.gh.lan [tbd youtube - storage - sg.gh.lan]() detail [document - freenas - sg.gh.lan](./freeNAS/ghlanStorageOverviewDetail)
20 | - sg.gh.lan storage setup [document - netstack freenas - Setup](https://netstack.org/docs/lan/storage/freenas/setup)
21 | - sg.gh.lan storage maintainace - tbd
22 | - client storage configuration [document - Windows10 client - SMB mount](https://netstack.org/docs/lan/storage/freenas/setup#windows-10-map-network-drive)
23 | - sg.gh.lan storage disaster recovery (dr) - tbd
24 |
25 | ## [cg.gh.lan](https://cg.gh.lan) Compute Gateway configuration with [xcp-ng](https://xcp-ng.org)
26 | - cg.gh.lan compute uses xcp-ng [document - xcp-ng](./xcp-ng/)
27 | - cg.gh.lan [tbd youtube - storage - cg.gh.lan]() detail [document - xcp-ng - cg.gh.lan](./xcp-ng/ghlanComputeOverviewDetail)
28 | - cg.gh.lan compute setup [document - Netstack xcp-ng - Setup](https://netstack.org/docs/lan/compute/xcp-ng/setup)
29 | - cg.gh.lan compute maintainace - tbd
30 | - cg.gh.lan compute disaster recovery (dr) - tbd
31 |
32 |
33 | - todo [Data and Backups]()
34 | - todo [Workstation Setup]()
35 | - todo [Magma Useage]()
36 | - todo [Blender]()
37 | - todo [Render Grid]()
38 |
39 | ## Setup
40 | - rendernode [bn000template](bn000template.html) setup
41 | - rendernode [ghrenderService](ghrenderService.html) create
42 |
43 | ## FIX Notes
44 | - Grasshorse rendernode [blenderCacheBake](blenderCacheBake.html) FIX
45 |
--------------------------------------------------------------------------------
/docs/teststack/NetworkMonitors.md:
--------------------------------------------------------------------------------
1 | # Fault Moniotrs
2 |
3 | ## Currently none
4 |
5 | ## Manual Monitor Notes
6 | 1. List last logins
7 | - radmin@ra01web:~$ last
8 | 2. List bash history
9 | - radmin@ra01web:~$ cat .bash_history
10 | 3. List hardware hardware
11 | - radmin@ra01web:~$ sudo lshw
12 |
13 |
54 |
--------------------------------------------------------------------------------
/docs/gridfarm.md:
--------------------------------------------------------------------------------
1 | # Grid Farm shared storage setup
2 |
3 | nodeRenderService.sh uses /media/farm nfs mount to control render nodes collect render jobs
4 |
5 | ## nodeService.sh /media/farm Storage Diagram
6 | 
7 |
8 | ## /media/farm structure
9 | On catmini (192.168.9.20) I mount farm to /private/nfs to view
10 | ```
11 | catmini:~ cat$ sudo mount -t nfs 192.168.9.2:/mnt/MediaVolume/farm /private/nfs
12 | ```
13 | Should see this
14 | 
15 |
16 | ### /media/farm/ghbin
17 | contains scripts
18 | - nodeRenderService.sh - main script ( installed in /home/ghadmin/ and called by ghrender.service at startup )
19 |
20 | ### /media/farm/ghcache
21 | contains the BakeFix cache for project assets
22 |
23 | - smoke_cashe
24 | - smoke_cashe/0215_002_0003A_3danim_cache
25 |
26 | ### /media/farm/ghlogs
27 | contains log status from each of the nodes and gridNodes.list with start/stop service details from all nodes
28 |
29 | - gridNodes.list - Start/Stop status from all node services
30 | - nodeStatus_bn01.list - Frame render start-stop times from each node
31 | - nodeStatus_bn02.list
32 | - nodeStatus_bn03.list
33 | - nodeStatus_bn04.list
34 |
35 | ### /media/farm/ghprojects
36 | contains jobPriority.list which is a list of jobs and job controls.
37 | #### Control functions
38 | 1. "PPPP_SSS_EEEEE_rend/*.cfg" - will read all cfg files in /media/farm/PPPP_SSS_EEEEE_rend directory
39 | 2. "allstop" - if this command is read, render service will stop and exit
40 | 3. "rescan" - if this command is read, render service will re-read the jobPriority.list and start from TOP
41 |
42 | - jobPriority.list
43 | #### Example one project and repeat
44 | ```
45 | 0215_002_0007A_rend/*.cfg
46 | rescan
47 | ```
48 | #### Example two projects but have all nodes rescan after each project (verifies top of list gets done)
49 | ```
50 | 0215_002_0007A_rend/*.cfg
51 | rescan
52 | 0215_002_0004A_rend/*.cfg
53 | rescan
54 | ```
55 | #### Example have nodes stop (they will finish work they are doing but next time they read jobPriority.list they will exit)
56 | ```
57 | allstop
58 | 0215_002_0007A_rend/*.cfg
59 | rescan
60 | 0215_002_0004A_rend/*.cfg
61 | rescan
62 | ```
63 |
64 | ### /media/farm/PPPP_SSS_EEEEV_
65 | contains project_rend project_zip
66 |
67 | - /media/farm/PPPP_SSS_EEEEV_rend
68 | - /media/farm/PPPP_SSS_EEEEV_zip
69 |
70 | #### /media/farm/PPPP_SSS_EEEEV_rend
71 | contains frame.cfg frame.lock frame.png this is the 'work distribution and output collection' directory
72 |
73 | - frame.cfg
74 | - configure information used to feed blender render command
75 | ```
76 | zipBucket='/media/farm/0215_002_0007A_zip/'
77 | rendBucket='/media/farm/0215_002_0007A_rend/'
78 | zip='0215_002_0007A_3danim_v002.zip'
79 | blend='0215_002_0007A_3danim_v002.blend'
80 | fileName='0215_002_0007A_3danim_v002'
81 | frameName='0215_002_0007A_3danim_v002.0001'
82 | start='0001'
83 | end='0001'
84 | step='1'
85 | ```
86 | - frame.lock
87 | - ghrender bid / locking for node sync
88 | ```
89 | blamURL=bn01
90 | bidCreated='Mon May 20 23:19:38 UTC 2019'
91 | bidWon='Mon May 20 23:19:39 UTC 2019'
92 | ```
93 | - frame.png - output render
94 | - initially, the rendernode will create the frame.png with touch (empty file) while it renders
95 | - on completion of local frame.png output by blender, the node check the output and copies it to farm
96 |
97 |
98 |
--------------------------------------------------------------------------------
/docs/blender/blender-create-shelf.md:
--------------------------------------------------------------------------------
1 | # Create a simple shelf in Blender 2.8
2 |
3 | ## Shelf [Video](https://www.youtube.com/watch?v=OOBKo-O6i_8)
4 | 1. Open new Blender file and set to feet
5 | - Blender default unit is 1 meter
6 | - Properties -> Scene tab -> Units -> Dropdown to select the blender units Imperial
7 | - Verify Unit Scale: 1.0
8 | - Verify Length: Feet
9 | 2. Delete camera and light
10 | - LMB click light
11 | - RMB -> Select: Delete
12 | - Repeat for camera
13 | 3. Modify Box [Video](https://youtu.be/OOBKo-O6i_8?t=27)
14 | 1. Move bottom face of box to z 0
15 | - LMB-Click z or type 7 on Numpad (top orth)
16 | - type 9 on Numpad (bottom face)
17 | - type Tab (switch to Edit Mode)
18 | - LMB-Click Face select
19 | - LMB-Click -> Select Bottom Face
20 | - type 1 on Numpad (front orth view)
21 | - type g z (grab move in z axis only) press cntrl and to z-0
22 | - press return (accept chagne)
23 | 2. Move left face of box to x 0
24 | - LMB-Click x or type 3 on Numpad (side orth)
25 | - type 9 on Numpad (left face)
26 | - type Tab (switch to Edit Mode)
27 | - LMB-Click Face select
28 | - LMB-Click -> Select Left Face
29 | - type 7 on Numpad (top orth view)
30 | - type g x (grab move in x axis only) press cntrl and to x-0
31 | - press return (accept change)
32 | 3. Move front face of box to y 0
33 | - LMB-Click x or type 1 on Numpad (side orth)
34 | - type Tab (switch to Edit Mode)
35 | - LMB-Click Face select
36 | - LMB-Click -> Select Front Face
37 | - type 7 on Numpad (top orth view)
38 | - type g y (grab move in y axis only) press cntrl and to y-0
39 | - press return (accept change)
40 | 4. Should have a 1'x1'x1' cube with origin at bottom left front vertex
41 | 5. Grab back face to get 1x1x4 box
42 | - LMB-Click x or type 1 the 9 on Numpad (back side)
43 | - type Tab (switch to Edit Mode)
44 | - LMB-Click Face select
45 | - LMB-Click -> Select Front Face
46 | - type 7 on Numpad (top orth view)
47 | - type g y (grab move in y axis only) press cntrl and to y-4
48 | - press return (accept change)
49 | 6. Delete front and back faces
50 | - MMB-Rotate so you see the long box face
51 | - LMB-Click
52 | - RMB-Click Select Delete Faces
53 | - Repeate for other long face
54 | 7. type Tab or Exit out of Edit Mode and go into Object Mode
55 | 4. Add Modifiers
56 | 1. LMB-Click object
57 | 2. Add Solidify modifier (wrench icon in properties tab)
58 | - LMB-Click Add Modifier
59 | - LMB-Click Solidify
60 | - Add thinkness 0.1ft
61 | - LMB-Click Apply
62 | 3. Add Array modifier shelf (wrench icon in properties tab)
63 | - LMB-Click Add Modifier
64 | - LMB-Click Array
65 | - Add Count 10
66 | - Add Array in x 0, y 0, z 1
67 | - LMB-Click Apply
68 | 4. Add Array modifier isle (wrench icon in properties tab)
69 | - LMB-Click Add Modifier
70 | - LMB-Click Array
71 | - Add Count 7
72 | - Add Array in x 0, y 1, z 0
73 | - LMB-Click Apply
74 | 5. Add Array modifier grid (wrench icon in properties tab)
75 | - LMB-Click Add Modifier
76 | - LMB-Click Array
77 | - Add Count 6
78 | - Add Array in x 1, y 0, z 0
79 | - LMB-Click Apply
80 | 5. View and Save
81 | - Pan and admire
82 | - File -> Save As: blender-create-shelf.blend
83 | - Upload to this directory
84 |
--------------------------------------------------------------------------------
/docs/zerotier/README.md:
--------------------------------------------------------------------------------
1 | # [Zero Tier](https://www.zerotier.com/)
2 |
3 | 1. Login to your account [my.zerotier.com](https://my.zerotier.com/)
4 | 2. Create your own Network [https://my.zerotier.com/network](https://my.zerotier.com/network)
5 | 3. Load Client [https://www.zerotier.com/download/](https://www.zerotier.com/download/)
6 | 4. curl -s https://install.zerotier.com | sudo bash
7 | 5. Auth each node
8 |
9 |
10 | ## Videos
11 | 1. [Zerotier Tutorial](https://www.youtube.com/watch?v=Bl_Vau8wtgc)
12 | 2. [Zerotier via Wireshark](https://www.youtube.com/watch?v=9Rfqi62bo5M)
13 |
14 | ## Tests
15 |
16 | ```bash
17 | radmin@ratestweb:~$ ls /var/log/auth.log | grep radmin | grep session
18 | radmin@ratestweb:~$ cat /var/log/auth.log | grep radmin | grep session
19 | Dec 9 03:54:38 ratestweb login[897]: pam_unix(login:session): session opened for user radmin by LOGIN(uid=0)
20 | Dec 9 03:54:38 ratestweb systemd-logind[823]: New session 2 of user radmin.
21 | Dec 9 03:54:38 ratestweb systemd: pam_unix(systemd-user:session): session opened for user radmin by (uid=0)
22 | Dec 9 03:58:01 ratestweb sshd[1988]: pam_unix(sshd:session): session opened for user radmin by (uid=0)
23 | Dec 9 03:58:01 ratestweb systemd-logind[823]: New session 4 of user radmin.
24 | Dec 9 05:53:14 ratestweb sudo: pam_unix(sudo:session): session opened for user root by radmin(uid=0)
25 | Dec 9 06:03:27 ratestweb sudo: pam_unix(sudo:session): session opened for user root by radmin(uid=0)
26 | Dec 9 06:13:00 ratestweb sshd[3262]: pam_unix(sshd:session): session opened for user radmin by (uid=0)
27 | Dec 9 06:13:00 ratestweb systemd-logind[823]: New session 7 of user radmin.
28 | Dec 9 06:50:00 ratestweb sshd[3507]: pam_unix(sshd:session): session opened for user radmin by (uid=0)
29 | Dec 9 06:50:00 ratestweb systemd-logind[823]: New session 10 of user radmin.
30 | Dec 9 06:55:27 ratestweb sshd[3507]: pam_unix(sshd:session): session closed for user radmin
31 | Dec 9 17:19:24 ratestweb sshd[4547]: pam_unix(sshd:session): session opened for user radmin by (uid=0)
32 | Dec 9 17:19:24 ratestweb systemd-logind[823]: New session 22 of user radmin.
33 | Dec 9 19:33:59 ratestweb sshd[4547]: pam_unix(sshd:session): session closed for user radmin
34 | Dec 10 02:15:03 ratestweb sshd[5284]: pam_unix(sshd:session): session opened for user radmin by (uid=0)
35 | Dec 10 02:15:03 ratestweb systemd-logind[823]: New session 31 of user radmin.
36 | Dec 10 02:19:52 ratestweb sshd[5284]: pam_unix(sshd:session): session closed for user radmin
37 | radmin@ratestweb:~$ netstat
38 |
39 | Command 'netstat' not found, but can be installed with:
40 |
41 | sudo apt install net-tools
42 |
43 | radmin@ratestweb:~$ ps auxwww | grep sshd:
44 | root 1988 0.0 0.1 12908 8056 ? Ss Dec09 0:00 sshd: radmin [priv]
45 | radmin 2070 0.0 0.1 13220 6072 ? S Dec09 0:00 sshd: radmin@pts/0
46 | root 3262 0.0 0.2 13216 8568 ? Ss Dec09 0:00 sshd: radmin [priv]
47 | radmin 3357 0.0 0.1 13216 4940 ? S Dec09 0:00 sshd: radmin@pts/1
48 | radmin 5535 0.0 0.0 6296 924 pts/1 R+ 02:35 0:00 grep --color=auto sshd:
49 | radmin@ratestweb:~$ pgrep -ai sshd
50 | 1797 /usr/sbin/sshd -D
51 | 1988 sshd: radmin [priv]
52 | 2070 sshd: radmin@pts/0
53 | 3262 sshd: radmin [priv]
54 | 3357 sshd: radmin@pts/1
55 | radmin@ratestweb:~$ ss | grep ssh
56 | tcp ESTAB 0 36 10.147.19.89:ssh 10.147.19.27:54133
57 | tcp ESTAB 0 0 192.168.9.19:ssh 192.168.9.17:59023
58 | ```
59 |
--------------------------------------------------------------------------------
/docs/blender/architecture/catArchModelNotes/README.md:
--------------------------------------------------------------------------------
1 | # catArchModelNotes
2 |
3 | Based off of [How to make 3d floor plan in Blender Modeling](https://www.youtube.com/watch?v=o0k9kZwUhpo) these are my notes as I went through this tutorial.
4 |
5 | 1. Enable [AutocadDXF Emport](https://youtu.be/o0k9kZwUhpo?t=23)
6 | - Preferences -> Search "AutoCAD"
7 | - Check Import-Export: Import AutoCAD DXF Format .dxf
8 | - File Import you .dxf file
9 | 2. Turn on [Vertex Snapmode](https://youtu.be/o0k9kZwUhpo?t=34) to quickly draw walls.
10 | 3. Create a [plane mesh](https://youtu.be/o0k9kZwUhpo?t=46)
11 | - Shift A -> Mesh -> Plane
12 | - N -> set
13 |
14 |
15 | Based off of [Blender 2.8: Intro to 3D Modeling](https://www.youtube.com/watch?v=CmBMcYVW9x8) to learn some simple navigation and modeling in blender.
16 |
17 | 1. []()
18 |
19 | - Switching between a Mesh Object's 'Object Mode' and Edit Mode' [TC 1:39](https://www.youtube.com/watch?v=CmBMcYVW9x8&t=99s)
20 | - Working in Edit Mode & Sub-Object Selection modes (Vertices/Edges/Faces) [TC 3:09](https://www.youtube.com/watch?v=CmBMcYVW9x8&t=189s)
21 | - Extrude Region tool [TC 7:49](https://www.youtube.com/watch?v=CmBMcYVW9x8&t=469s)
22 | - Extrude Along Normals tool [TC 12:51](https://www.youtube.com/watch?v=CmBMcYVW9x8&t=771s)
23 | - Extrude Individual tool [TC 14:26](https://www.youtube.com/watch?v=CmBMcYVW9x8&t=866s)
24 | - Extrude to Cursor tool [TC 15:11](https://www.youtube.com/watch?v=CmBMcYVW9x8&t=911s)
25 | - Extrude Keyboard Shortcuts [TC 17:02](https://www.youtube.com/watch?v=CmBMcYVW9x8&t=1022s)
26 | - Loop Cut tool [TC 18:11](https://www.youtube.com/watch?v=CmBMcYVW9x8&t=1091s)
27 | - Offset Edge Loop Cut tool [TC 20:55](https://www.youtube.com/watch?v=CmBMcYVW9x8&t=1255s)
28 | - Turning on the top 'Tool Settings Bar' [TC 23:03](https://www.youtube.com/watch?v=CmBMcYVW9x8&t=1383s)
29 | - Loop Cut & Slide (Keyboard shortcut tool version) [TC 24:02](https://www.youtube.com/watch?v=CmBMcYVW9x8&t=1442s)
30 | - Bevel tool [TC 27:03](https://www.youtube.com/watch?v=CmBMcYVW9x8&t=1623s)
31 | - Bevel keyboard shortcuts [TC 30:02](https://www.youtube.com/watch?v=CmBMcYVW9x8&t=1802s)
32 | - Inset Faces tool [TC 32:03](https://www.youtube.com/watch?v=CmBMcYVW9x8&t=1923s)
33 | - Inset Faces keyboard shortcut [TC 33:01](https://www.youtube.com/watch?v=CmBMcYVW9x8&t=1981s)
34 | - Modeling the house! [TC 35:13](https://www.youtube.com/watch?v=CmBMcYVW9x8&t=2113s)
35 |
36 | ## [Blender 2.8 basics](https://www.youtube.com/watch?v=8XyIYRW_2xk&list=PLa1F2ddGya_-UvuAqHAksYnB0qL9yWDO6)
37 | 1. Simple chair model using loop-cut and extrude [TC 3:50](https://youtu.be/2qD_tcPMhOs?list=PLa1F2ddGya_-UvuAqHAksYnB0qL9yWDO6&t=230)
38 | - Start with default cube selected
39 | - Enter Edit mode (tab or dropdown in upper left) [TC 3:59](https://youtu.be/2qD_tcPMhOs?list=PLa1F2ddGya_-UvuAqHAksYnB0qL9yWDO6&t=239)
40 | - Scale cube down along Z axis (grab blue square and shrink) [TC 4:02](https://youtu.be/2qD_tcPMhOs?list=PLa1F2ddGya_-UvuAqHAksYnB0qL9yWDO6&t=242)
41 | - Use loop cut tool to left-click drag new mesh loops 1/3 in X and Y planes [TC 4:12](https://youtu.be/2qD_tcPMhOs?list=PLa1F2ddGya_-UvuAqHAksYnB0qL9yWDO6&t=252)
42 | - Use face select mode (by edit dropdown) to select the faces to extrude [TC 4:22](https://youtu.be/2qD_tcPMhOs?list=PLa1F2ddGya_-UvuAqHAksYnB0qL9yWDO6&t=262)
43 | - Select the Extrude subtool Extrude along Normals [TC 4:33](https://youtu.be/2qD_tcPMhOs?list=PLa1F2ddGya_-UvuAqHAksYnB0qL9yWDO6&t=273)
44 | - Left-click drag to extrude [TC 4:36](https://youtu.be/2qD_tcPMhOs?list=PLa1F2ddGya_-UvuAqHAksYnB0qL9yWDO6&t=276)
45 | - not sure middle mouse to move faces [TC 4:40](https://youtu.be/2qD_tcPMhOs?list=PLa1F2ddGya_-UvuAqHAksYnB0qL9yWDO6&t=280)
46 | - Save to demo file CATNotes01SimpleChair.blend
47 |
48 |
--------------------------------------------------------------------------------
/docs/blender/architecture/README.md:
--------------------------------------------------------------------------------
1 | # Architecture Blender
2 |
3 |
4 | ### Packages
5 | - [Archimesh - Arch mesh]() [Example Tutorial](https://youtu.be/e1ewod-L3CY?t=349)
6 | - [Sketch Style - Line rendering]() [Example Tutorial](https://youtu.be/e1ewod-L3CY?t=141)
7 | - [JARCH Vis - Arch componentes]() [Example Tutorial](https://youtu.be/e1ewod-L3CY?t=264)
8 |
9 | ### References
10 | - [How to make 3d floor plan in Blender | Modeling](https://www.youtube.com/watch?v=o0k9kZwUhpo) [catArchModelNotes - Learning Notes](./catArchModelNotes/README.md)
11 | - [Blender 2.8 - Basic 3D House](https://www.youtube.com/watch?v=CmBMcYVW9x8)
12 | - [How to make Realtime Archviz with Blender and Eevee - part 1 of 3](https://www.youtube.com/watch?v=2VNztZdfGZY)
13 | - [How to make Realtime Archviz with Blender and Eevee - part 2 of 3](https://www.youtube.com/watch?v=VB5kMlW2EBI)
14 | - [How to make Realtime Archviz with Blender and Eevee - part 3 of 3](https://www.youtube.com/watch?v=GiQFa7XH6S8)
15 | - [Blender 2.8 Architecture Workflow](https://www.youtube.com/watch?v=DwWgUK8yS8w)
16 | - [How To Model A House In Blender - Youtube](https://www.youtube.com/watch?v=HWaSe0goih8) with [Reference Image plan](https://www.youtube.com/redirect?redir_token=QUFFLUhqa09MaWJENkllcGg5TWNEV2VGZHBaTVdQYUgxd3xBQ3Jtc0ttQ2k4Vklva1NiS2JqSUpyRWdjcC15U2NVU2NhYXJER2lxVGtERDlacnc4cDZnX094VnZyWDd0SnFkRmFESzExTzNhaVh6X0gxeEppakFSYmtua1d6eS1lVF9UOE5ZUGZZTlZDV3JSSGIwX1dBWmZqQQ%3D%3D&q=http%3A%2F%2Fwww.hausbaudirekt.de%2Fhaus%2Fconcept-m-155%2F&v=HWaSe0goih8&event=video_description)
17 |
18 | - [Blender 2.8 for 3D Printing, Start Here - Part 1 Setup](https://www.youtube.com/watch?v=HqDnLg3o9WE)
19 | - [Blender 2.8 Technical Modeling](https://www.youtube.com/watch?v=WSR6bVFe5LM)
20 |
21 | - [All 80+ Blender material nodes explained in under 30 minutes](https://www.youtube.com/watch?v=cQ0qtcSymDI)
22 | - [The RIGHT way to cut holes in surfaces in Blender](https://www.youtube.com/watch?v=Ci1jBOm_5NY)
23 |
24 | - [Blender Addons for Architectural - Feb 2020](https://www.youtube.com/watch?v=e1ewod-L3CY)
25 |
26 |
27 | ## Earthships
28 | - [Earthship - https://www.earthshipglobal.com/](https://www.earthshipglobal.com/)
29 | - [Earthship - Ontario Tour](https://www.youtube.com/watch?v=j7SUjcwXY8w&vl=en)
30 | - [Earthship - Arizona Tour](https://youtu.be/efI77fzBgvg?t=547)
31 | - [Earthship - Taos NM - Global - Encounter models](https://youtu.be/wVp5koAOu9M) Build 4 mths $219K
32 | - [Earthship - Canada winter](https://www.youtube.com/watch?v=EAvY5JeMz9w)
33 |
34 | ## Geothermal Greenhouse
35 | - [Geothermal Greenhouse - Russ Finch - Alliance Nebraska](https://www.youtube.com/watch?v=IZghkt5m1uY)
36 | - [Geothermal Greenhouse - Russ Finch - Alliance Nebraska](https://youtu.be/ZD_3_gsgsnk)
37 | - [Sunken Greenhouse - Co-Op fresh produce](https://www.youtube.com/watch?v=9jbLZxwWudk)
38 | - [Sunken Greenhouse - Trail Break Farms](https://www.youtube.com/channel/UCLA6VAIG8HlswUpjgxNHaOg)
39 | - [Greenhouse Types - Various](https://www.youtube.com/watch?v=FPjko9DDhcU)
40 |
41 | ## Build
42 | - [The Perfect Wall - Building Science](https://www.youtube.com/watch?v=jjHOqbJ9ZeQ)
43 | - [ICF vs SIP vs Framing - Pros and Cons](https://www.youtube.com/watch?v=C3KX8c3UVo4)a
44 |
45 | ## Bathroom / Toilet
46 | - [Portable Riser Toilet](https://www.amazon.com/HealthSmart-Portable-Elevated-Raised-Toilet/dp/B0009STN4W)
47 | - [Toilet Lift](http://www.discovermymobility.com/store/patient-lifts/tush-push/index.html)
48 | - [Diagnostic Toilets](https://orangematter.solarwinds.com/2020/05/18/iot-and-privacy-the-connected-toilet-strikes-again/?CMP=SOC-HAD-FB-SW_WW_X_CR_X_AW_EN_SECOMP_X-X-X_X_X_X_VidNo_X-X)
49 | - [Pool lift](http://www.discovermymobility.com/store/patient-lifts/summit/triton-pool-lift/Above-Ground-Pool-Lift.html?gclid=EAIaIQobChMI_bjq4s3_6QIVA4-GCh01gQnzEAQYAyABEgLq7fD_BwE)
50 |
--------------------------------------------------------------------------------
/docs/freeNAS/configuration.md:
--------------------------------------------------------------------------------
1 | # freeNAS configuration for ghrender
2 |
3 | ## freeNAS install
4 | 1. Use freeNAS install USB thumbdrive
5 | 2. Install...
6 |
7 | ## freeNAS Storage Pool Config
8 | 1. Login to FreeNAS (root - What#Time)
9 | 2. From FreeNAS Dashboard -> Storage -> Pools -> Create
10 | - Name: drivepool
11 | - Type: raidz
12 | - Add Drives (the 4 disks) -> Set to raidz (default is raidz2)
13 | 3. Confirm Create
14 | 5. In Storage / Pools -> drivepool -> Add Dataset
15 | - Name: farm
16 | - Comments: blener render farm shared drive
17 | 5. In Services -> Enable NFS and Start Automatically
18 |
19 | ## Hindsight Jail
20 | 1. From FreeNAS Dashboard -> Jails -> ADD
21 | - Jail Name: hindsight
22 | - Release: 11.2-RELEASE
23 | - NEXT:
24 | - IPv4 Interface: em0
25 | - IPv4 Address: 192.168.1.6
26 | - IPv4 Netmask: 24
27 | - NEXT:
28 | - Confirm
29 | ```
30 | Jail Summary
31 | Jail Name : hindsight
32 | Release : 11.2-RELEASE
33 | IPv4 Address : em0|192.168.1.6/24
34 | Confirm these settings.
35 | ```
36 | 2. Confirm
37 | - Basic: Auto-Start
38 | - Jail: allow_set_hostname, allow_raw_sockets
39 | 3. Install hindsight - Jail -> hindsight -> shell
40 | - root@hindsight:~ # pkg install stow
41 | - root@hindsight:~ # mkdir /usr/local/stow
42 | - root@hindsight:~ # cd /usr/local/stow/
43 | - root@hindsight:~ # scp cat@192.168.1.30:/Users/cat/Downloads/hindsight_bsd_stow.tgz .
44 | - root@hindsight:~ # tar -xzvf hindsight_bsd_stow.tgz
45 | - root@hindsight:~ # vi /etc/rc.d/hindsight
46 | ```
47 | $ cat /etc/rc.d/hindsight
48 | #!/bin/sh
49 | #
50 | # PROVIDE: hindsight
51 | # REQUIRE: DAEMON
52 | # KEYWORD: shutdown
53 |
54 | . /etc/rc.subr
55 |
56 | name=hindsight
57 | rcvar=hindsight_enable
58 |
59 | command="/usr/sbin/daemon"
60 | command_args="-P /var/run/hindsight.pid -T hindsight /usr/local/bin/hindsight /usr/local/hindsight/hindsight.cfg 7"
61 |
62 | load_rc_config $name
63 |
64 | #
65 | # DO NOT CHANGE THESE DEFAULT VALUES HERE
66 | # SET THEM IN THE /etc/rc.conf FILE
67 | #
68 | hindsight_enable=${hindsight_enable-"NO"}
69 | pidfile=${hindsight_pidfile-"/var/run/hindsight.pid"}
70 |
71 | run_rc_command "$1"
72 | ```
73 | - root@hindsight:~ # chmod 555 /etc/rc.d/hindsight
74 | - root@hindsight:~ # vi /etc/rc.conf
75 | ```
76 | hindsight_enable="YES"
77 | ```
78 | - root@hindsight:~ # systemclt start hindsight
79 | - root@hindsight:~ # systemclt status hindsight
80 | - root@hindsight:~ # lsb_heka_cat /usr/local/hindsight/output/input/0.log
81 | - syslog collector is running on the standard port 514
82 | - pfsense collector is on port 4514
83 |
84 | ## Hindsight update
85 | 1. root@hindsight:~ # /etc/rc.d/hindsight status || (service hindsight status)
86 | 2. root@hindsight:~ # /etc/rc.d/hindsight stop || (service hindsight stop)
87 | 3. root@hindsight:~ # cd /usr/local/
88 | 4. root@hindsight:~ # scp cat@192.168.1.30:/Users/cat/Downloads/hs_bsd_stow.tgz .
89 | 5. root@hindsight:~ # stow -v -D *
90 | 6. root@hindsight:~ # rm -rf stow
91 | 7. root@hindsight:~ # tar -zxf hs_bsd_stow.tgz
92 | 8. root@hindsight:~ # cd stow
93 | 9. root@hindsight:~ # stow -v *
94 | 10. root@hindsight:~ # /etc/rc.d/hindsight start || (service hindsight start)
95 | 11. root@hindsight:~ # /etc/rc.d/hindsight status || (service hindsight status)
96 | 12. root@hindsight:~ # lsb_heka_cat /usr/local/hindsight/output/input/0.log
97 |
98 |
99 | ## Install new FreeNAS and import existing Pool
100 | 1. USB FreeNAS install to new USB
101 | 2. Login to FreeNAS firstime set pw (What#Time)
102 | 3. Storage -> Pools -> Add
103 | - Import an existing pool
104 | - NEXT:
105 | - Is the pool encrypted? No
106 | - NEXT:
107 | - Pool: drivepool
108 | - NEXT:
109 | - Confirm: IMPORT
110 | ```
111 | Pool Import Summary
112 | Pool to import : drivepool | 9174643673441383865
113 | Confirm these settings.
114 | ```
115 |
--------------------------------------------------------------------------------
/docs/blender/bim/README.md:
--------------------------------------------------------------------------------
1 | [edit](https://github.com/2cld/gh/edit/master/docs/blender/bim/README.md)
2 |
3 | ## Consult BIM tutoials
4 | - Current setup on CyberTruck
5 | - Launch Blender with Blender Launcher
6 | - Notsure original template CyberTruck C:\Users\ghadmin\BlenderProjects\end\5d.blend and 5D.ifc
7 | - may have to load the 5D.ifc file while in blender as I think the blend file has a bad pointer
8 | - Scene -> Project Info -> 5D.ifc need to point to C:\Users\ghadmin\BlenderProjects\BIMTemplates\end\5D.ifc
9 | - Start [BIM 4D Crash Course tutorial - youtube](https://www.youtube.com/watch?v=Q7-UBKLBK58) In Blender open file on CyberTruck C:\Users\ghadmin\BlenderProjects\BIMTemplates\end\5d.blend
10 |
11 | ## IFC Archetect tutorials
12 | - Current setup on CyberTruck
13 | - Launch Blender with Blender Launcher
14 | - Notsure original template CyberTruck C:\Users\ghadmin\BlenderProjects\BIMTemplates\bim_template.blend
15 | - Start [IFCArchetect old tutorial - youtube](https://www.youtube.com/watch?v=kF2k_VW-yrQ) In Blender open file on CyberTruck C:\Users\ghadmin\BlenderProjects\BIMTemplates\IFCArchetectTutorial-old.blend
16 | - Should work with this [IFCArchitect - Beginner Tutorial Update - Floorplan - in 20mins](https://www.youtube.com/watch?v=agwK8hbkToM)
17 |
18 | # References
19 | - [https://www.blender.org/download/](https://www.blender.org/download/) - Blender 3.6
20 | - [https://dotbow.github.io/Blender-Launcher/](https://dotbow.github.io/Blender-Launcher/) Manages multiple blender versions
21 | - [https://blenderbim.org/download.html](https://blenderbim.org/download.html)
22 | - [https://github.com/IfcOpenShell/IfcOpenShell/releases](https://github.com/IfcOpenShell/IfcOpenShell/releases) - github releases
23 | - [https://blenderbim.org/docs/users/installation.html](https://blenderbim.org/docs/users/installation.html)
24 | - Open up Blender, and click on Edit > Preferences
25 | - Select the Add-ons tab, and press Install… on the top right. Navigate to the .zip you downloaded in Step 2, and press Install Add-on.
26 | - You should now see Import-Export: BlenderBIM available in your add-ons list. Enable the add-on by pressing the checkbox.
27 | - You can enable add-ons permanently by using Save User Settings from the Addons menu.
28 | - Upon installation, the BlenderBIM Add-on is stored in the scripts/addons/blenderbim/ directory, within your Blender configuration folder. However, the location of your Blender configuration folder depends on how you have installed Blender.
29 | - [https://www.youtube.com/@IfcArchitect/videos](https://www.youtube.com/@IfcArchitect/videos)
30 |
31 | ## Blender Launcher
32 | - blender version management
33 | - [Blender Launcher Download](https://github.com/DotBow/Blender-Launcher/releases) then [Install tutorial](https://www.youtube.com/watch?v=lmZKAUfcZAs)
34 | - DotBow github -> [DotBow Blender Laucher](https://github.com/DotBow/Blender-Launcher)
35 |
36 | ## Blender BIM IFC Architect
37 | - BlenderBIM [IFC Architect](https://www.youtube.com/@IfcArchitect/videos)
38 | - BlenderBIM [IFC Architect - Begin](https://www.youtube.com/watch?v=kF2k_VW-yrQ)
39 | - BlenderBIM [https://blenderbim.org](https://blenderbim.org/index.html)
40 | - BlenderBIM [https://ifcopenshell.org/](https://ifcopenshell.org/)
41 | - BlenderBIM [Add on - youtube](https://www.youtube.com/watch?v=kYs6w5LlfNM)
42 | - BlenderBIM [update - youtube](https://www.youtube.com/watch?v=oljVAjW9QVw)
43 |
44 | ## BlenderBIM Git
45 | - [BlenderBIM ICF Git - Demo Repo at github](https://github.com/brunopostle/ifc-demo)
46 | - [BlenderBIM ICF Git collabaration - youtube meetup](https://github.com/brunopostle/ifc-demo)
47 |
48 | ## [Consult-BIM https://www.consult-bim.com/courses](https://www.consult-bim.com/courses)
49 | - [Consult-BIM - youtube videos](https://www.youtube.com/@sigmadimensions/videos)
50 | - [Consult-BIM https://www.consult-bim.com/courses](https://www.consult-bim.com/courses)
51 | - [BlenderBIM - Scheduling, Resources, Animations](https://youtu.be/Q7-UBKLBK58)
52 | - [BlenderBIM - Scheduling, Resources, Animations Materials](https://www.consult-bim.com/courses/bbim_4_beginners/BBIM5D-1)
53 |
54 |
--------------------------------------------------------------------------------
/docs/gridmanage.md:
--------------------------------------------------------------------------------
1 | # ghcluster - blenderRender Pool Management
2 |
3 | Testing slack integration. Should put up a slack notice.
4 |
5 | ## ghcluster startup
6 |
7 | 1. Verify ghopsGRIDrouter is on (little black router on back side of grid rack)
8 | 2. Turn on ghclusterNAS (freenas box in R4 grid rack ) and wait for clean prompt ~10min ( should say web at 192.168.9.2 )
9 | 3. Turn on Grid (botton right 2 breakers) NOTE: ghclusterNAS MUST BE UP or nodes will not be able to boot.
10 | 4. All nodes should start-up in a sequence automatically.
11 | 5. Nodes will begin to report into /media/farm/ghlogs/gridNodes.list and start rendering via /media/farm/ghprojects/jobPriority.list
12 |
13 | ## ghcluster debug
14 |
15 | ### ReferenceNotes
16 |
17 | - [ghclusterNAS](http://192.168.9.2/ui/sessions/signin) - root-What#Time
18 | - Render nodes are vm managed by proxmox through /media/farm/ghprojects/jobPriority.list
19 | - catmini:~ cat$ sudo mount -t nfs 192.168.9.2:/mnt/MediaVolume/farm /private/nfs
20 | 
21 | - catmini:~ cat$ ssh ghadmin@192.168.9.41
22 | ```
23 | ghadmin@bn01:~$ ls /media/farm/gh
24 | ghbin/ ghcache/ ghlogs/ ghprojects/
25 | ghadmin@bn01:~$ ls /media/farm/ghprojects/
26 | jobPriority.list
27 | ghadmin@bn01:~$ ls /media/farm/ghlogs/
28 | gridNodes.list nodeStatus_bn01.list savelogs
29 | ghadmin@bn01:~$ ls /media/farm/0215_002_0007A_zip/
30 | 0215_002_0007A_3danim_v002.zip
31 | ghadmin@bn01:~$ ls /media/farm/0215_002_0007A_rend/0215_002_0007A_3danim_v002.0001.*
32 | /media/farm/0215_002_0007A_rend/0215_002_0007A_3danim_v002.0001.cfg
33 | /media/farm/0215_002_0007A_rend/0215_002_0007A_3danim_v002.0001.lock
34 | ghadmin@bn01:~$ cat /media/farm/ghprojects/jobPriority.list
35 | 0215_002_0007A_rend/*.cfg
36 | ghadmin@bn01:~$ cat /etc/systemd/system/ghrender.service
37 | [Unit]
38 | Description=ghrender
39 |
40 | [Service]
41 | ExecStart=/home/ghadmin/nodeRenderService.sh
42 |
43 | [Install]
44 | WantedBy=multi-user.target
45 | ghadmin@bn01:~$ cat /etc/init.d/ghrendernode
46 | #!/bin/bash
47 | su ghadmin -c "bash -c '/home/ghadmin/nodeRenderService.sh $1'"
48 |
49 | ghadmin@bn01:~$
50 | ghadmin@bn01:~$ sudo systemctl status ghrender
51 | ● ghrender.service - ghrender
52 | Loaded: loaded (/etc/systemd/system/ghrender.service; enabled; vendor preset: enabled)
53 | Active: active (running) since Tue 2019-05-21 14:32:47 UTC; 2h 54min ago
54 | Main PID: 1134 (nodeRenderServi)
55 | Tasks: 51 (limit: 4658)
56 | CGroup: /system.slice/ghrender.service
57 | ├─1134 /bin/bash /home/ghadmin/nodeRenderService.sh
58 | └─7717 blender -b /home/ghadmin/0215_002_0007A_3danim_v002.blend -y -F PNG -o /home/ghadmin/0215_002_0007A_3danim_v002.#### -
59 |
60 | May 21 17:25:10 bn01 nodeRenderService.sh[1134]: rm: cannot remove '/home/ghadmin/*.cfg': No such file or directory
61 | May 21 17:25:13 bn01 nodeRenderService.sh[1134]: ALSA lib confmisc.c:767:(parse_card) cannot find card '0'
62 | May 21 17:25:13 bn01 nodeRenderService.sh[1134]: ALSA lib conf.c:4528:(_snd_config_evaluate) function snd_func_card_driver returned erro
63 | May 21 17:25:13 bn01 nodeRenderService.sh[1134]: ALSA lib confmisc.c:392:(snd_func_concat) error evaluating strings
64 | May 21 17:25:13 bn01 nodeRenderService.sh[1134]: ALSA lib conf.c:4528:(_snd_config_evaluate) function snd_func_concat returned error: No
65 | May 21 17:25:13 bn01 nodeRenderService.sh[1134]: ALSA lib confmisc.c:1246:(snd_func_refer) error evaluating name
66 | May 21 17:25:13 bn01 nodeRenderService.sh[1134]: ALSA lib conf.c:4528:(_snd_config_evaluate) function snd_func_refer returned error: No
67 | ```
68 | - [Proxmox webui - https://192.168.9.121:8006](https://192.168.9.121:8006/#v1:0:18:3:5::5:7::5) Datacenter -> Summary
69 | 
70 | - [Proxmox webui - https://192.168.9.121:8006](https://192.168.9.121:8006/#v1:0:18:3:5::5:7::5=cluster) Datacenter -> Cluster
71 | 
72 |
73 | ## bn01-console
74 | 
75 |
76 | ## ghcluster at 100% cpu
77 | 
78 |
79 | ## ghcluster power/thermals at 100% cpu
80 | 
81 |
82 | ## ghcluster power first 24hrs
83 | 
84 |
85 | ## ghcluster power down (just switch and OA on)
86 | - 604 Watts with Just Switch and OA
87 | 
88 |
--------------------------------------------------------------------------------
/docs/ghOverviewDiagram.drawio:
--------------------------------------------------------------------------------
1 | 7V1dd9o4EP01PIZjS7Yxj0mapDmn7eY0adPdN2OEcWss1ogC++tXsi3AHgNOwJZCSk9bJMtfd+aORjNj08HXk+Vd4k3Hn+mQRB1kDJcd/KGDUN9y+L+iY5V19Cwj6wiScJh1mZuOx/A/knfKYfNwSGaFgYzSiIXTYqdP45j4rNDnJQldFIeNaFQ869QLCOh49L0I9j6HQzbOel3b2PR/JGEwlmc2jXzLxJOD847Z2BvSxVYXvung64RSln2bLK9JJLCTuGT73e7Yur6whMSszg7BaPX8NQnvh+RLn36/evp+/8+/Fzi/NraSN0yG/P7zZkxj/t9VQufxkIjDGLxFEzamAY296BOlU95p8s6fhLFVLj1vzijvGrNJlG8ly5D9ELt3+4abt/9O29jBefvDMj9+2lhtNR5IEk4II4nsi1my+rHdyI6FbNneHCttyYPNmJewS6EUvMOPvNks9GX3bRjJq4XA5ljP6DzxyR40pYJ6SUDYnnEoGyeg3jpBLrY7QvndJis+ICGRx8LfRVX0co0O1uPWuz7QkF8yMnLymZJrkntG8QjZ/eQ7bTSHf9m6ik1Xqk8v0K38en970Ty/g4f5IOKQI+P+AepdFHFOC3XjRJmSVEJ0zo9/tRiHjDxOvRT6BbcyReXaKa7fJGFkuRfgHBhJ0cWG4absG2+x2zV2i6CA3ouhMiAejfIw40pOQ3MvBWuyZhcrD5Hy9WxDNdnmtsM2ZBfZtp4J5CGyCwV049B6q61hUzFgtuc8uHQebJT0LzviSbmMAJfvPEYW6YV/pXNhnJETcSlcDcS3QHwz+6hrOi7XNau77Ag+3SJr/zD+lw+8e4ajAD82ZDCbtRFrY2oXYLdr2gynKZthQfPqMX8sBHLzQfyLvlnucbCNOL2vaUSTdF88ssWflPsJ/UW2tjjpR+xBY7bVn31OI4C19V2V0D4kAdSUBOydEnj+eP90k8vAPmcZOKpl4OyUwdWnb1IE6IxFgAzVIjBbXkQUFhDSj9mxfHilU9L4SsGt6bv0G/FdXuxylBYSZr+01DwwHrXhovTb9aHNghqi1+khLn0OqGXaKi+HtdFV19FCWa2Sf+y0oHsumIWkBytmgoJSOv/OqdxwMUu17JIPMI3pcrNRer2PizCbzB7NfCpzxI1u3Gh+tdkZTuEll+e50Qj5ftU8N3QGju005FJYyuez/p/57KU2ol/TRpimFjYCTFC9NtbQZqt6Zb4rvbJOrVdHmZB+4/MBei/zQe3gbHPzAQxk33mJyBsh7vjBUNVtQsiXy0fe9CYC0Xgwm2YyPGlMqySdoUfcUaV0HN8lg1FD0nFrSsdqSjqoXbf/LGZrs27oXM/lJzZbmK0lRtuRpYT+JL64UqPrvG/e47pWuTHemzD+feo5Fm/PsRidzxxrvTaU3pg0McxUaGfF11lOXay4XdOKnzwBehxxYdrkLvKW6YzQhUuko9jk+qSaTQPXtuy96ecj2KQ8KYLfQARDOzY5b5NNMAGWsUl0dmFm5g3Sqe4SozE6WfouMZqnRUvVM5ZRLK9YV7kcqJ45mbsPQ/jc3V9EorDF6PKNxtq9f3POe5lR6lPGVruhUK0YhdD7YJS8zy1G/WCEL9QFofrnRSjlMUqEAdjH4doESsoze6gqZqAbSspXDwgu0D57wSTlraUfXsrdQwRd8BSv1AM/svqvAcCw8tkf9QBgg9gQ05XRNeUDQzohpt68Q+9UIOZmiB1Z5dsEYupNPUzBCsT6GWIwPqIcMeVmX7qHRcREqoUjJqvddUJMueHHMDHMEcM4Rax3ZOylAcQs5ZYfwzWBQMzKENPPubCUW34MHXuBWDZX9vTzLizllh9DJ18g5mSI6eddWMotf8XzEe8mGoNzCp17NAZXZN0IFZzgzvgZhWJs9RYbLgeF/ell9qenn/1R70dVrgdxtrrp6be6sZX7US50lf6UEh+w9FbuSSl6Xvzox7ztForerKow8imKqoJxF/nRsBsTcRDxgDenNoKlcfJh8H7XOPC4eF/Uiux4VPxc6rReW1jSWJmWq++jns3bj2YebwPE31X+cOLXSDjF05TeHtSQeYGuke+JaxJl9G/YCdUuHWhBjyoIWeQNOicvClKDsPIogwUj8tMlebp9euhk9SKKfVbtsooy5r4FWBwspwldpoWf6iPy2uUVbRheDsZfrW8IX/x1aaZW88hy2dOjpj7xYyNIzIlhXgTjzOfUD7IKavZbRQw6/RwxtEYMRgdVI1ZBzXYRgyFmjhheI6Y+9VMj89MuYjD8yBGz1oipT/3UyPy0ixj0lbvdrnYwVdj7dmGCnq6OMCm38dBd1REm5YYdOqnTielIM4XVZw9rhKJbRcypjN2n3mlFkXfrL23sHfa1eq3CVVnIhVK4jvSzvMTPA2onehAHgFfBznbBq6rpMtPEvq2emWW4qqjZKlzyZJrZ/DJOVb5puzjBdbaWOFV4pO3iBFfWWuJU4ZK2ixNcT2uJk+q5sAdX0VripHrac6FjoEvSTdtkf6/uuxFkxltxtr+U7EdtvOGmB2MyHx/EK5Ovw5kvSsPkm1COIaQOefPK5zecVikMgzmXCQtnQgOeafKLKz4LaTwDWMvfwphPokufCayuBAyhz4ntDUj0QGeh2JMPGVDG6IQPiMSGK8//FaSSKqLPP1vHuIzCQOzLaElsdM6iMObykb+qc6qH+51iGSSGksEVgnnFS/R5c/PbOhllNj9QhG/+Bw== 7VpLd5s6EP41XpaDeNleJmnSntu0NydexO0mRwYBSjHiCDm28+uvhIQxyIlxUkx804VBGo+ENDPfzOgxsC/mqy8UZvF3EqBkYJnBamB/HljW2PH4UxDWkjB0TEmIKA4kCVSECX5CiliyLXCA8hojIyRhOKsTfZKmyGc1GqSULOtsIUnqX81ghDTCxIeJTr3DAYsldeSaFf0rwlFcfhmY6p85LJkVIY9hQJZbJPtyYF9QQpgszVcXKBGyK+VyHmbfkis8+jV9urs9u4h/eV+vPsnOrg5pspkCRSn7s127sutHmCyUvHgHcxRgyN8hpHP+mk6n9+rHn3wMgfiI5SV8LOczykuRKCkhsXUpeS6vTBT9dYLTAFHOs4wxQ5MM+oK+5PbGaTGbJ7wGRGdkwRmD69mGAP3fERXUfxeM94IUXY0aUYZWDTXvkRHYKI4bPCJzxOiat1O9WKXylbGD8dhQIlpWxmPZiiveMpyxokFlr9Gm80onQrZSLQeoyHI0yaKAm7iqpkRI5ZxK0XGCyWuEsphEJIXJNSGZEtoDYmytAAoXjNRlj1aYTbfKP0VXfPKy9nmlei4q67KS8glOtytbrUS1albUynY5g5SdCXBXEyhoV1jIpuCRkxYzfYWCubTIgvroJbFayhlBGqGXOrTs3SZDUQIZfqwP789r3zoYoU84+zgAddy2AHXcjlQExj0C1P7fAtRtiU/QKz6dFvCM4oREOS+kPLmaMMgW+f0sXa1WBqd/DJyW0XEfSN2uoujw3QbRNlh7LY47D6ItMeq+EaKq6Q3BfNgbIwOjupFxMzMaTl6OTLVrmNBmIG+Izhr6v8NoDnVM36ICuJb5D5np/95Rjmb+5wOZ3YcUzpHhh4c4hpwh4QAyRDGfkXAQBemmqu9zGCFeoXLx1q1fqGsM7MqvgXtMzwCAJtf34hpOOXzbbcO3udtgjhO+7VbhO6PkAflMhHAO0YxiwgG7NhKcs48Rvt2+w3efKfbbw3fXWPNaYs3pE2qeBrUiHUb0EfvIyGMdSYssgEVclOlzj+EwwJTjH5NUcKOcdQg9p5HUjIe7IqS1A3x2Zwtc82DVUQQDmdDcvNJbnk5O43h1jXlA15ezQ1/WuCt96Wlpsdwc2GecOhHOib/3qdAoF6xbPA1dVQ4X7FdHZ+J3GzmlHqs2C4UaXDpLKPWkIvdhmqsEX26gmzjlj+sCE2ZIxNJAJv2nDwdNHzv30MEuRHS2h25qgn0v+cMmxwenl+ODtnt0b13/vw2P+iGXz+MTQwKRRkL8331B8JhpRROVVv+oBCNNMXziOBTDxsIvkmXhNftU0dH04fSvD0sPXPuShITAQAU2Y5bIyPYxkr6G/oBr79Kfecy8z/JOLsoNTyDKWScR5ayXopzcVM7SSHy5AOlSbDnnHyTWee/At/7dZe4Cm60PiUd9YtPWN1BuUcbBuSs0enAuoJTOcvGSoD2i5VTW8nPbWPZYjjF0a8ZzAqbT2q0/d8FAeRvTsEZARd7DDjS5AOB6iyETx5T51sca552u69b8mm01bvw1+IeN07ZD+cvs5Tl+z36RnxfkDButy+mSMMxRJ8eyNmiNNxxyvtvLycXZjxZ5arfAG/5FXrurd8r+PpmG6bmvQZ4OLa8BLbORCMhJaRcJdEyUi9rNOrvR0TM3Eg72BaZdH7CzB9uNTepD+cEe3+E5L/J34Qt4tbp8LdmrG+z25X8=
--------------------------------------------------------------------------------
/docs/bn000template.md:
--------------------------------------------------------------------------------
1 | # bn000template - Grasshorse Blender Node Template
2 |
3 | - Install ISO - ubuntu-18.04.2-live-server-amd64.iso
4 |
5 | ### ISO install
6 | 1. ghamdin - What#Time
7 | 2. OpenSSH
8 |
9 | ### Basic Node Configure
10 | 1. ghadmin@bn000template:~$ sudo apt-get update
11 | 2. ghadmin@bn000template:~$ sudo apt-get install blender
12 | 3. ghadmin@bn000template:~$ sudo apt-get install unzip
13 | 4. ghadmin@bn000template:~$ blender -v
14 | ```
15 | Blender 2.79 (sub 0)
16 | ```
17 | 5. ghadmin@bn000template:~$ sudo apt install nfs-common
18 | 6. ghadmin@bn000template:~$ sudo vi /etc/fstab
19 | ```
20 | # Add to bottom of /etc/fstab for render farm share
21 | 192.168.9.2:/mnt/MediaVolume/farm /media/farm nfs auto,nofail,noatime,nolock,intr,tcp,actimeo=1800 0 0
22 | ```
23 | 7. ghadmin@bn000template:~$ sudo mkdir /media/farm && sudo mount -a
24 | 8. ghadmin@bn000template:~$ cp /media/farm/ghbin/nodeRenderService.sh .
25 | 9. ghadmin@bn000template:~$ sudo chmod +x nodeRenderService.sh
26 | 10. ghadmin@bn000template:~$ sudo poweroff
27 |
28 | ### Cloud-init Configure
29 | 1. ghadmin@bn000template:~$ sudo apt install cloud-init
30 | 2. ghadmin@bn000template:~$ sudo vi /etc/cloud/cloud.cfg
31 | - remove from cloud_config_modules:
32 | - snap
33 | - snap_config
34 | - ubuntu-advantage
35 | - disable-ec2-metadata
36 | - byobu
37 | - remove from cloud_final_modules:
38 | - snappy
39 | - fan
40 | - landscape
41 | - lxd
42 | - puppet
43 | - chef
44 | - mcollective
45 | - salt-minion
46 | - rightscale_userdata
47 | 3. Fix IP MAC id issue (new to ubuntu networking I think)
48 | - ghadmin@bn000template:~$ sudo rm /etc/machine-id
49 | - ghadmin@bn000template:~$ sudo touch /etc/machine-id
50 | - ghadmin@bn000template:~$ sudo rm /var/lib/dbus/machine-id
51 | - ghadmin@bn000template:~$ sudo ln -s /etc/machine-id /var/lib/dbus/machine-id
52 | - ghadmin@bn000template:~$ ls -l /var/lib/dbus/machine-id
53 | ```
54 | lrwxrwxrwx 1 root root 15 May 15 18:43 /var/lib/dbus/machine-id -> /etc/machine-id
55 | ```
56 | 4. ghadmin@bn000template:~$ sudo apt clean
57 | 4. ghadmin@bn000template:~$ sudo poweroff
58 | 5. Go regen Cloud-init from proxmox
59 |
60 | ### bn000template create on ProxMox
61 | 1. Create Cloud-Init Drive
62 | - Datacenter -> pm01-gh -> bn000template -> Hardware -> Add -> Cloud-Init Drive
63 | - Device: IDE
64 | - Storage: local-lvm
65 | 2. Configure Cloud-Init vars
66 | - Datacenter -> pm01-gh -> bn000template -> Cloud-Init
67 | - User: ghadmin
68 | - Password: What#Time
69 | 3. Regenerate Image (click button)
70 |
71 | ### Clone bn000template
72 | 1. Right-click on Datacenter -> pm01-gh -> bn000template -> Clone
73 | - Target node: pm01-gh
74 | - VM ID: 101 (or next in line)
75 | - Name: bn01 (or next in line)
76 | - Resource Pool: blenderRender
77 | - Target Storage: Same as source (default)
78 | 2. Go to Datacenter -> pm01-gh -> bn01 -> Cloud0Init -> Reginerate Image
79 |
80 |
81 | ### Boot new node (bn01)
82 | 1. Go to Datacenter -> pm01-gh -> bn01 -> Start
83 | 2. Go to Datacenter -> pm01-gh -> bn01 -> Console
84 | 3. [hostname issue](https://forum.proxmox.com/threads/setting-host-name-via-cloud-init.45525/) cloud-init messing up hostname
85 | - sudo rm -rf /var/lib/cloud/seed/nocloud-net
86 | - sudo poweroff
87 | 4. Start bn01 - Datacenter -> pm01-gh -> bn01 -> Start
88 | ### need to correct on nodes still
89 | - /etc/fstab (see above)
90 | - ln -s /media/farm/ghcache/smoke_cashe smoke_cashe
91 | - [ghrender.service](ghrederService.html)
92 |
93 | ### Backup / move vm
94 | 1. Enable your disk to store backups (on both source and destination nodes)
95 | - Create VXDump Storage - Datacenter -> Storage -> Add -> (Content: VZDump backup file)
96 | 2. Create Backup
97 | - ssh root@192.168.9.121
98 | - cd /var/lib/vz/dump
99 | - vzdump 100
100 | - or via gui: Datacenter -> pm01-gh -> bn000template -> Backup
101 | 3. Move backup file via scp
102 | - ssh root@192.168.9.121
103 | - cd /var/lib/vz/dump
104 | - scp vzdump-qemu-.vma root@192.168.9.122:/var/lib/vz/dump/vzdump-qemu-.vma
105 | 4. Restore the backup
106 | - ssh root@192.168.9.122
107 | - cd /var/lib/vz/dump
108 | - qmrestore vzdump-qemu-.vma
109 | - NOTE: the ddd is machine ID and must be unsused on the node
110 | - via gui: Datacenter -> pm02-gh -> local -> vzdump-qemu-.vma.lzo -> Restore
111 | 5. Remove and restore Cloud-Init Drive
112 | - Datacenter -> pm02-gh -> bn01 -> Hardware -> CloudInit Drive (click Remove after selection)
113 | - Datacenter -> pm02-gh -> bn01 -> Hardware -> click Add -> CloudInit Drive
114 |
115 | ### Start vm
116 | 1. ssh root@192.168.9.121
117 | 2. qm list
118 | 3. qm start
119 |
120 |
--------------------------------------------------------------------------------
/docs/pfsense/README.md:
--------------------------------------------------------------------------------
1 | [Back to docs Index](../)
2 |
3 | # pfSense
4 | tbd
5 |
6 | - [Pfsense: Enable 1:1 NAT to Acesses DMZ](https://www.youtube.com/watch?v=1wn2io8EWvs)
7 |
8 | ## gh.lan Overview [youtube - ghlan Network Overview](https://youtu.be/HJzfB8MpkJg)
9 | 
10 |
11 | - ghlearn [document - gh.lan Overview](./ghlanOverviewDetail)
12 |
13 | ## pfSense basics
14 | 1. Default install via "pfsense" USB install key
15 | - Using Dell (Intel SR1560SF)
16 | - Defalut install user: admin pw: pfsense
17 | - IF VM XCP-ng: Network Interfaces - Check - Disable hardware checksum offload
18 | - Note interface assignments and lable ports and cables
19 | - Walk through wizard
20 | - Turn off Block RFC1918 Private Addresses and bogon networks (so we can use LAN address ranges)
21 | - Decide what the LAN subnet should be (default is 192.168.1.1/24) 191.168.252.0/23
22 | - Set admin password
23 | - Should have 2 interfaces WAN and LAN
24 | - Add Traffic Graphs to Dashboard
25 | 2. DHCP Setup -> Services DHCP Server / LAN
26 | - Enbable DHCP Server
27 | - Range: 192.168.253.101 - 199 (Move new servers to MAC assignment)
28 | - View DHCP Static Mappings (at bottom)
29 | - Status -> DCHP Leaases View leases and move 101-199 to a static according to IP mappings
30 | 3. Add VLAN's (skip this for now... will have to deal with router)
31 | - Interfaces -> Assignments -> VLANs
32 | - VLANs add
33 | - Parent Interface: lan VLAN Tag: 9 Description: ADM
34 | - Save
35 | - Interfaces -> Interfaces Assignments
36 | - Add (Select above VLAN) Save
37 | - Click on new interface
38 | - Check Enable Interface
39 | - Add Description: ADM
40 | - IPv4 Config Type: Static IPv4
41 | - Go down to Static IPv4 Config and the IP (192.168.9.1/24)
42 | - Uncheck reserve net blocking
43 | - Click SAVE
44 | - Click APPLY CHANGES
45 | - Services -> DHCP Server
46 | - Select ADM network
47 | - Enable DHCP Server
48 | - Range: 192.168.9.200-250
49 | - Save
50 | 4. Add Firewall Rules
51 | - Firewall -> Rules -> ADM
52 | - Add:
53 | - Action - Pass
54 | - Interface - ADM
55 | - Addresss Family - IPv4
56 | - Protocal - any
57 | - Source - any
58 | - Destination - any
59 | - Description: dmzall
60 | - Save
61 | - Add-TOP:
62 | - Action - Pass
63 | - Interface - ADM
64 | - Addresss Family - IPv4
65 | - Protocal - IPv4 ICMP - echoreq
66 | - Source - any
67 | - Destination - any
68 | - Description: ghWANallowPing
69 | - Save
70 | - Add-TOP: (not yet)
71 | - Action - Block
72 | - Interface - ADM
73 | - Addresss Family - IPv4
74 | - Protocal - any
75 | - Source - any
76 | - Destination - LAN
77 | - Description: BLOCK to LAN
78 | - Save
79 | - Add-TOP... block all other networks you want blocked
80 | 5. Add VLAN tags to Switches / vlans
81 |
82 | ### Equipment Docs
83 | - [HPE C7000 Ciscos WS-CBS-3020GSG2](https://drive.google.com/drive/folders/0B1myz1MGUaPqSjB3MDJyRktYaDA)
84 | - [Dell Intel SR1560SF](https://drive.google.com/drive/folders/0B1myz1MGUaPqSjB3MDJyRktYaDA)
85 |
86 | ### Notes
87 | - [Tutorial - pfsense install: Lawrence](https://youtu.be/9kSZ1oM-4ZM)
88 | - [interface assignments](https://youtu.be/9kSZ1oM-4ZM?list=PLjGQNuuUzvms3MhpsQ4zbe_Rlbo_0x01h&t=588)
89 | - [re-assign interface](https://youtu.be/9kSZ1oM-4ZM?list=PLjGQNuuUzvms3MhpsQ4zbe_Rlbo_0x01h&t=651)
90 | - [Uncheck Block Networks](https://youtu.be/9kSZ1oM-4ZM?list=PLjGQNuuUzvms3MhpsQ4zbe_Rlbo_0x01h&t=881)
91 | - [run perf test](https://youtu.be/9kSZ1oM-4ZM?list=PLjGQNuuUzvms3MhpsQ4zbe_Rlbo_0x01h&t=1349)
92 | - [open 443 to remote admin](https://youtu.be/9kSZ1oM-4ZM?list=PLjGQNuuUzvms3MhpsQ4zbe_Rlbo_0x01h&t=1639)
93 | - [create firewall rules for a crapnetwork subnet](https://youtu.be/9kSZ1oM-4ZM?list=PLjGQNuuUzvms3MhpsQ4zbe_Rlbo_0x01h&t=1706)
94 | - [create UPnP for crapnetwork subnet](https://youtu.be/9kSZ1oM-4ZM?list=PLjGQNuuUzvms3MhpsQ4zbe_Rlbo_0x01h&t=1943)
95 | - [traffic shape crapnetwork subnet](https://youtu.be/9kSZ1oM-4ZM?list=PLjGQNuuUzvms3MhpsQ4zbe_Rlbo_0x01h&t=2069)
96 | - [Tutorial - pfsense on XCP-ng: Lawrence tutorial](https://youtu.be/hy6RwgDm1p0?list=PLjGQNuuUzvms3MhpsQ4zbe_Rlbo_0x01h)
97 | - Check network performace [tutorial](https://youtu.be/hy6RwgDm1p0?list=PLjGQNuuUzvms3MhpsQ4zbe_Rlbo_0x01h&t=172)
98 | ```bash
99 | iperf3 -c 192.168.9.1
100 | iperf3 -c 192.168.9.1 -P 100 -t 20
101 | ```
102 | - Add XCP-ng tools [tutorial](https://youtu.be/hy6RwgDm1p0?list=PLjGQNuuUzvms3MhpsQ4zbe_Rlbo_0x01h&t=220)
103 | - [Tutorial - Virtualization Lab Network Setup / Demo using XCP-NG, UniFi, pfsense and Xen Orchestra](https://www.youtube.com/watch?v=o1nwUfHsDHs)
104 | - [Tutorial - pfSense VLAN and Guest Network Setup](https://www.youtube.com/watch?v=hhPGN4UJHAM)
105 | - [Tutorial - tbd]()
106 | - [Tutorial - tbd]()
107 | - [Tutorial - tbd]()
108 |
--------------------------------------------------------------------------------
/ghbin/makeRenderJob.sh:
--------------------------------------------------------------------------------
1 | #!/bin/bash
2 |
3 | # makeRenderJob.sh
4 | #
5 | # This script creates the cfg file required to render each frame.
6 | # This script asks the user to verify source and output before cfg generation
7 | # REQUIRED: the four vars below
8 |
9 | projectName='0188_001'
10 | projectShotName='_0026A'
11 | projectShotVersion='_v009'
12 | projectSubelementName=''
13 | projectDivisionType='_3danim'
14 | controlPath='/media/gh/'
15 | nodePath='/media/gh/'
16 |
17 | #projectSeriesName='0183'
18 | #projectShowName='_001'
19 | #projectShotName='_0002A'
20 | #projectShotVersion='_v182'
21 |
22 | ## Below should not change
23 | ##
24 | #projectRendDir='_rend/'
25 | #projectAnimDir='_anim/'
26 | #projectTypeName='_3danim'
27 | projectTemplateExtention='.tpl'
28 | #projectConfigExtention='.cfg'
29 | #projectBlendExtention='.blend'
30 | #projectZipExtention='.zip'
31 |
32 | #projectName=$projectSeriesName$projectShowName
33 | #projectJobName=$projectName$projectShotName
34 |
35 | #projectJobOutputName=$projectJobAssetName$projectShotVersion
36 |
37 | #projectJobZipFileName=$projectJobAssetName$projectShotVersion$projectZipExtention
38 | #projectJobBlendFileName=$projectJobAssetName$projectShotVersion$projectBlendExtention
39 |
40 | projectsDir='ghprojects/'
41 |
42 | projectTemplate=$projectName$projectTemplateExtention
43 | projectShotTemplate=$projectName$projectShotName$projectTemplateExtention
44 | projectShotVersionTemplate=$projectName$projectShotName$projectDivisionType$projectShotVersion$projectTemplateExtention
45 |
46 | scriptsDir='ghbin/'
47 |
48 | controlScriptsDir=$controlPath$scriptsDir
49 | controlProjectsDir=$controlPath$projectsDir
50 |
51 | nodeScriptsDir=$nodePath$scriptsDir
52 | nodeProjectsDir=$nodePath$projectsDir
53 |
54 | #Pickup Project Template
55 | projectTemplatePath=$controlProjectsDir$projectTemplate
56 | echo 'Source the Project Template: '$projectTemplatePath
57 | echo "This OK? [YES][no]"
58 | read projectTemplateAnswerOK
59 | if [ "$projectTemplateAnswerOK" == "YES" ] || [ "$projectTemplateAnswerOK" == "" ]
60 | then
61 | source $projectTemplatePath
62 | else
63 | echo "Quit makeProject, nothing done."
64 | exit
65 | fi
66 |
67 | #Pickup ProjectShot Template
68 | projectShotTemplatePath=$controlProjectsDir$projectShotTemplate
69 | echo 'Source ProjectShot Template: '$projectShotTemplatePath
70 | echo "This OK? [YES][no]"
71 | read projectConfigAnswerOK
72 | if [ "$projectConfigAnswerOK" == "YES" ] || [ "$projectConfigAnswerOK" == "" ]
73 | then
74 | source $projectShotTemplatePath
75 | else
76 | echo "Quit makeProject, nothing done."
77 | exit
78 | fi
79 |
80 | #Pickup ProjectShotVersion Template
81 | #Pickup ProjectShot Template
82 | projectShotVerTemplatePath=$controlPath$projectName$shotName$zipName/$projectShotVersionTemplate
83 | echo 'Source the Version Template: '$projectShotVerTemplatePath
84 | echo "This OK? [YES][no]"
85 | read projectConfigAnswerOK
86 | if [ "$projectConfigAnswerOK" == "YES" ] || [ "$projectConfigAnswerOK" == "" ]
87 | then
88 | source $projectShotVerTemplatePath
89 | else
90 | echo "Quit makeProject, nothing done."
91 | exit
92 | fi
93 |
94 | projectAssetsPath=$controlPath$projectName$shotName$zipName
95 | projectOutputPath=$controlPath$projectName$shotName$rendName
96 |
97 | nodeAssetsPath=$nodePath$projectName$shotName$zipName
98 | nodeOutputPath=$nodePath$projectName$shotName$rendName
99 |
100 | fileName=$projectName$shotName$projectSubelementName$projectDivisionType$shotVersion
101 |
102 | echo "Render Source from: "$projectAssetsPath
103 | echo "Output Job cfgs to: "$projectOutputPath
104 |
105 | echo "Node Render Source: "$nodeAssetsPath
106 | echo "Node Output Frames: "$nodeOutputPath
107 |
108 |
109 | echo "projectJobOutputName: "$fileName
110 |
111 | echo "projectTemplate='$projectTemplatePath'"
112 | echo "projectShotTemplatePath='$projectShotTemplatePath'"
113 | echo "projectShotVerTemplatePath='$projectShotVerTemplatePath'"
114 | echo "zipBucket='$projectAssetsPath'"
115 | echo "rendBucket='$projectOutputPath'"
116 | echo "zip='$zip'"
117 | echo "blend='$blend'"
118 | echo "fileName='$fileName'"
119 | echo "frameName='$fileName.####'"
120 | echo "start='$start'"
121 | echo "end='$end'"
122 | echo "step='$step'"
123 | echo "created='$(date)'"
124 |
125 | answerDefault="yes"
126 | echo "Is this ok? [YES][no]"
127 | read answer
128 |
129 | if [ "$answer" == "yes" ] || [ "$answer" == "Yes" ] || [ "$answer" == "YES" ] || [ "$answer" == "y" ] || [ "$answer" == "Y" ] || [ "$answer" == "" ]
130 | then
131 | #rm -rf $frameName
132 | #mkdir $frameName
133 | # for i in {"$start".."$end"}
134 | for ((i=$start; i<=$end; (i=$i+$step)))
135 | do
136 | framePadded=$(printf "%04d" $i)
137 | frame=$i
138 | frameConfigOutputFile=$projectOutputPath/$fileName.$framePadded.cfg
139 |
140 | echo "zipBucket='$nodeAssetsPath/'" >> $frameConfigOutputFile
141 | echo "rendBucket='$nodeOutputPath/'" >> $frameConfigOutputFile
142 | echo "zip='$zip'" >> $frameConfigOutputFile
143 | echo "blend='$blend'" >> $frameConfigOutputFile
144 | echo "fileName='$fileName'" >> $frameConfigOutputFile
145 | echo "frameName='$fileName.$framePadded'" >> $frameConfigOutputFile
146 | echo "start='$frame'" >> $frameConfigOutputFile
147 | echo "end='$frame'" >> $frameConfigOutputFile
148 | echo "step='$step'" >> $frameConfigOutputFile
149 | echo "created='$(date)'" >> $frameConfigOutputFile
150 | # cat $tplName >> $frameName/$frameName.$framePadded.cfg
151 | done
152 | else
153 | echo "Command is cancelled."
154 | exit
155 | fi
156 |
157 |
--------------------------------------------------------------------------------
/docs/ghrenderService.md:
--------------------------------------------------------------------------------
1 | # Created ghrender.service
2 |
3 | ## Create bare min ghrender.service
4 | ```
5 | ghadmin@bn01:~$ cp /media/farm/ghbin/nodeRenderService.sh .
6 | ghadmin@bn01:~$ chmod +x nodeRenderService.sh
7 | ghadmin@bn01:~$ sudo touch /etc/systemd/system/ghrender.service
8 | ghadmin@bn01:~$ sudo chmod 664 /etc/systemd/system/ghrender.service
9 | ghadmin@bn01:~$ sudo vi /etc/systemd/system/ghrender.service
10 | [Unit]
11 | Description=ghrender
12 |
13 | [Service]
14 | ExecStart=/home/ghadmin/nodeRenderService.sh
15 |
16 | [Install]
17 | WantedBy=multi-user.target
18 | ```
19 |
20 | ## Load, start, stop and enable on 'startup'
21 | ```
22 | ghadmin@bn01:~$ sudo systemctl daemon-reload
23 | ghadmin@bn01:~$ sudo systemctl enable ghrender
24 | Created symlink /etc/systemd/system/multi-user.target.wants/ghrender.service → /etc/systemd/system/ghrender.service.
25 |
26 | ghadmin@bn01:~$ sudo systemctl start ghrender
27 | ghadmin@bn01:~$ sudo systemctl stop ghrender
28 | ```
29 |
30 | ### Verify by checking log
31 | ```
32 | ghadmin@bn02:~$ cat /media/farm/ghlogs/gridNodes.list
33 | Tue May 21 19:38:55 UTC 2019 STARTED: bn02
34 | Tue May 21 19:38:55 UTC 2019 ALLSTOP: bn02
35 | ```
36 |
37 | # Check the service logs
38 | ```
39 | ghadmin@bn01:~$ journalctl -u ghrender
40 | -- Logs begin at Wed 2019-05-15 19:16:09 UTC, end at Mon 2019-05-20 22:17:19 UTC. --
41 | May 20 22:10:11 bn01 systemd[1]: Started ghrender.
42 | May 20 22:10:11 bn01 nodeRenderService.sh[2156]: /home/ghadmin/nodeRenderService.sh: line 309: cd: HOME not set
43 | May 20 22:10:11 bn01 nodeRenderService.sh[2156]: /home/ghadmin/nodeRenderService.sh: line 340: cd: HOME not set
44 | May 20 22:10:11 bn01 nodeRenderService.sh[2156]: rm: cannot remove '*.log': No such file or directory
45 | May 20 22:10:11 bn01 nodeRenderService.sh[2156]: Current Loop Count: 1
46 | May 20 22:10:11 bn01 nodeRenderService.sh[2156]: 0215_002_0007A_rend/*.cfg
47 | May 20 22:10:11 bn01 nodeRenderService.sh[2156]: Scanning Project
48 | May 20 22:10:11 bn01 nodeRenderService.sh[2156]: LoopSleep for 10
49 | May 20 22:10:21 bn01 nodeRenderService.sh[2156]: Current Loop Count: 2
50 | May 20 22:10:21 bn01 nodeRenderService.sh[2156]: 0215_002_0007A_rend/*.cfg
51 | May 20 22:10:21 bn01 nodeRenderService.sh[2156]: Scanning Project
52 | May 20 22:10:21 bn01 nodeRenderService.sh[2156]: LoopSleep for 10
53 | May 20 22:10:31 bn01 nodeRenderService.sh[2156]: Current Loop Count: 3
54 | May 20 22:10:31 bn01 nodeRenderService.sh[2156]: 0215_002_0007A_rend/*.cfg
55 | May 20 22:10:31 bn01 nodeRenderService.sh[2156]: Scanning Project
56 | May 20 22:10:31 bn01 nodeRenderService.sh[2156]: Scanning Project
57 | May 20 22:10:32 bn01 nodeRenderService.sh[2156]: LoopSleep for 10
58 | May 20 22:10:38 bn01 systemd[1]: Stopping ghrender...
59 | May 20 22:10:38 bn01 systemd[1]: Stopped ghrender.
60 | ```
61 |
62 | # Remove logfiles and restart node
63 | ```
64 | root@catfreenas:/mnt/MediaVolume/farm/ghlogs # rm gridNode.list
65 | root@catfreenas:/mnt/MediaVolume/farm/ghlogs # rm gridNodes.list
66 | root@catfreenas:/mnt/MediaVolume/farm/ghlogs # rm nodeStatus_bn01.list
67 | ```
68 |
69 | ```
70 | ghadmin@bn01:~$ ç
71 | Connection to 192.168.9.41 closed by remote host.
72 | Connection to 192.168.9.41 closed.
73 | ```
74 | ### command line proxmox things
75 | - Look at shared storage
76 | ```
77 | root@pm01-gh:~# pvesm status
78 | Name Type Status Total Used Available %
79 | GridShare cifs active 8402763435 5444186 8397319249 0.06%
80 | local dir active 34829920 5814320 27216640 16.69%
81 | local-lvm lvmthin active 79896576 8628830 71267745 10.80%
82 | root@pm01-gh:~#
83 | ```
84 | - Force the node into cluster-master
85 | ```
86 | root@pm01-gh:~# pvecm e 1
87 | ```
88 | - Look at cluster members registered
89 | ```
90 | root@pm01-gh:~# cat /etc/pve/.members
91 | {
92 | "nodename": "pm01-gh",
93 | "version": 74,
94 | "cluster": { "name": "ghcluster", "version": 16, "nodes": 16, "quorate": 1 },
95 | "nodelist": {
96 | "pm01-gh": { "id": 1, "online": 1, "ip": "192.168.9.121"},
97 | "pm02-gh": { "id": 2, "online": 1, "ip": "192.168.9.122"},
98 | "pm03-gh": { "id": 3, "online": 0, "ip": "192.168.9.123"},
99 | "pm04-gh": { "id": 4, "online": 1, "ip": "192.168.9.124"},
100 | "pm05-gh": { "id": 5, "online": 1, "ip": "192.168.9.125"},
101 | "pm06-gh": { "id": 6, "online": 1, "ip": "192.168.9.126"},
102 | "pm07-gh": { "id": 7, "online": 1, "ip": "192.168.9.127"},
103 | "pm08-gh": { "id": 8, "online": 1, "ip": "192.168.9.128"},
104 | "pm09-gh": { "id": 9, "online": 1, "ip": "192.168.9.129"},
105 | "pm11-gh": { "id": 11, "online": 1, "ip": "192.168.9.131"},
106 | "pm12-gh": { "id": 12, "online": 1, "ip": "192.168.9.132"},
107 | "pm13-gh": { "id": 13, "online": 1, "ip": "192.168.9.133"},
108 | "pm14-gh": { "id": 14, "online": 1, "ip": "192.168.9.134"},
109 | "pm15-gh": { "id": 15, "online": 1, "ip": "192.168.9.135"},
110 | "pm16-gh": { "id": 16, "online": 1, "ip": "192.168.9.136"},
111 | "pm10-gh": { "id": 10, "online": 1, "ip": "192.168.9.130"}
112 | }
113 | }
114 | ```
115 | - List backups in dump share
116 | ```
117 | root@pm01-gh:~# ls /var/lib/vz/dump/
118 | vzdump-qemu-100-2019_05_15-15_48_22.log vzdump-qemu-101-2019_05_15-16_15_57.log vzdump-qemu-101-2019_05_15-16_15_57.vma.gz
119 | root@pm01-gh:~#
120 | ```
121 | - Storage config
122 | ```
123 | root@pm01-gh:~# cat /etc/pve/storage.cfg
124 | dir: local
125 | path /var/lib/vz
126 | content backup,iso,vztmpl
127 |
128 | lvmthin: local-lvm
129 | thinpool data
130 | vgname pve
131 | content rootdir,images
132 |
133 | cifs: GridShare
134 | path /mnt/pve/GridShare
135 | server 192.168.9.2
136 | share GridShare
137 | content images,iso
138 | username ghadmin
139 |
140 | root@pm01-gh:~#
141 | ```
142 | - Fix graphics... sometimes
143 | ```
144 | root@pm01-gh:~# service pvestatd restart
145 | ```
146 | ### Reference
147 | - [systemd service file example](https://www.shellhacks.com/systemd-service-file-example/)
148 | - [boot requirments](https://forums.servethehome.com/index.php?threads/proxmox-5-1-boot-drive-size.17792/)
149 | - [proxmox-cmap service](https://forum.proxmox.com/threads/one-node-cannot-initialize-cmap-service.31075/)
150 |
--------------------------------------------------------------------------------
/docs/plex/README.md:
--------------------------------------------------------------------------------
1 | # Plex
2 |
3 | ## plex catwin2016 Setup
4 | 1. Remote to Administrator - catwin2016 - ZT (or LAN) (info at cat2net)
5 | 2. Download [Plex for Windows Server](https://www.plex.tv/media-server-downloads/)
6 | 3. Map Network Drive T: to \\192.168.254.14\SharedMedia (info at DataCenterLayout)
7 | - File Exlpore -> Right Click Network -> Click Map network drive
8 | - Drive: T:
9 | - Folder: \\192.168.254.14\SharedMedia
10 | - Check: Reconnect at sign-in
11 | - Check: Connect using different credentials
12 | - user: (see FreeNAS users)
13 | - Verify you can see T: and all files
14 | 4. Install and Configure Plex
15 | - In Downloads, Run PlexMediaServer-xxxxx-x86.exe installer
16 | - Add Libraries (this takes awhile to build up library media info)
17 | - Photos: T:\CATPhotos
18 | - Music: T:\CATMusic
19 | - Movies: T:\CATMovies
20 | - TV Shows: T:\CATTVShows
21 | 5. Verify Plex access
22 | - Browse to LOCAL [Plex http://127.0.0.1:32400/](http://127.0.0.1:32400/)
23 | - Browse to NETWORK [Plex http://192.168.1.133:32400/](http://192.168.1.133:32400/)
24 | - This network is under pfsense https://192.168.1.1 DataCenterLayout (cat9box)
25 | - Browse to ZT [Plex http://10.147.20.17:32400/](http://10.147.20.17:32400/)
26 | - This network is under [cat9boxNetwork - zerotier](https://my.zerotier.com/network/93afae596322b601)
27 |
28 | ## plex FireTV Setup
29 | 1. Add FireTV to your [Amazon Devices](https://www.amazon.com/gp/mas/your-account/myapps/yourdevices/ref=mas_ya_dv)
30 | 2. On fireTV setup to sideload applications
31 | - Settings -> My Fire TV -> Developer options
32 | - ADB debugging: on
33 | - USB debugging: on
34 | - Apps from Unknown Soruces: on
35 | - Settings -> Applications -> Manage Installed Applications
36 | - Plex - search and download if into installed
37 | - ZeroTier One - which probably needs installed via step 3
38 | - end of substeps
39 | 3. Use Controller Phone to add ZeroTier One to FireTV
40 | - Open Apps2Fire
41 | - Click _SETUP_ menu on far right of menu bar
42 | - Click _SEARCH FIRE TVS_ which should find all FireTV's on local subnet
43 | - Click the fireTV you want to sideload app to should confirm connection click OK
44 | - NOTE you will get a USB Debbuging alert on FireTV Click Always Allow and OK
45 | - Click _LOCAL APPS> on far left of menu bar
46 | - Click the ZeroTier One app and _INSTALL_
47 | - Settings -> Applications -> Manage Installed Applications
48 | - Select: ZeroTier One -> Launch application
49 | - Add zerotier network to join
50 | - Turn on network and OK the connection request
51 | - Settings: Use Cellular Data
52 | - Got to [my.zerotier.com/network/younetworkid](https://my.zerotier.com/network/93afae596322b601)
53 | - Authorize the address and note the device
54 | 4. Login to Plex app and verify server access
55 | - Settings -> Applications -> Manage Installed Applications
56 | - Select: Plex -> Launch application
57 | - Select -> SignIn
58 | - Go to [https://plex.tv/link](https://plex.tv/link) with the google user authorized on PLEX and type in Code
59 | - Verify access to media with Plex
60 | - end of substeps
61 |
62 | ## plex FireTV Controller Phone
63 | 1. Obtain an Android Phone with signed in google user account
64 | 2. Load the following Applications from Google Play App Store
65 | - [Amazon Fire TV](https://play.google.com/store/apps/details?id=com.amazon.storm.lightning.client.aosp)
66 | - [Apps2Fire](https://play.google.com/store/apps/details?id=mobi.koni.appstofiretv)
67 | - [ZeroTier One](https://play.google.com/store/apps/details?id=com.zerotier.one)
68 |
69 |
70 | ## plex in FreeNAS jail
71 | - [Install FreeBSD packages](https://www.cyberciti.biz/faq/howto-freebsd-installing-gnu-wget-command-port/)
72 | - [ZeroTier FreeBSD install](https://gist.github.com/dch/b36dd170209e65677d23f77c44825b5a)
73 | - [FreshPorts.org zerotier](https://www.freshports.org/net/zerotier/)
74 | - [net/zerotier](https://svnweb.freebsd.org/ports/head/net/zerotier/)
75 | - [Tar command](https://www.shellhacks.com/untar-tar-gz-linux-tar-command-extract-tar-file/)
76 |
77 | ## Other stuff
78 | - [HDHomeRun QUATRO 4K - Kickstarter](https://www.kickstarter.com/projects/1275320038/hdhomerun-atsc-30/description)
79 | - [Sideload FireTV apps](https://www.howtogeek.com/336602/how-to-sideload-apps-on-the-fire-tv-and-fire-tv-stick/)
80 | - [ZeroTier One App](https://play.google.com/store/apps/details?id=com.zerotier.one&hl=en_US)
81 | - [ZeroTier libzt](https://github.com/zerotier/libzt)
82 | - [ZeroTier API.md](https://github.com/zerotier/libzt/blob/master/API.md)
83 | - [WebRTC examples](https://webrtc.github.io/samples/)
84 |
85 | ## Config CedarFalls
86 | - [https://plex.tv/](https://plex.tv/) CHRISTREES - catMacMini [PlexDashboard](https://app.plex.tv/desktop/#!/settings/server/f527091f85893bb1c8fe559992f8497ef81d7d81/status/server-dashboard)
87 | - Plex Network Setup
88 | - [catMacMini-PlexRemoteAcess](https://app.plex.tv/desktop/#!/settings/server/f527091f85893bb1c8fe559992f8497ef81d7d81/settings/remoteAccess)
89 | - catMacMini - Plex - 192.168.2.35:32400
90 | - Local Router PortForward [http://192.168.2.1/Advanced_VirtualServer_Content.asp](http://192.168.2.1/Advanced_VirtualServer_Content.asp)
91 | - Local next IP 192.168.2.11
92 | - CFU Router DMZ to 192.168.2.11 [http://192.168.6.1/#/html/advanced/security/advanced_security_dmzhosting.html](http://192.168.6.1/#/html/advanced/security/advanced_security_dmzhosting.html)
93 | - Plex Library Setup
94 | - [https://app.plex.tv/desktop/#!/settings/server/f527091f85893bb1c8fe559992f8497ef81d7d81/settings/library](https://app.plex.tv/desktop/#!/settings/server/f527091f85893bb1c8fe559992f8497ef81d7d81/settings/library)
95 | - [https://app.plex.tv/desktop/#!/settings/server/f527091f85893bb1c8fe559992f8497ef81d7d81/manage/libraries](https://app.plex.tv/desktop/#!/settings/server/f527091f85893bb1c8fe559992f8497ef81d7d81/manage/libraries)
96 | - tbd
97 | - Plex Live TV DVR Setup
98 | - [https://app.plex.tv/desktop/#!/settings/server/f527091f85893bb1c8fe559992f8497ef81d7d81/manage/dvr](https://app.plex.tv/desktop/#!/settings/server/f527091f85893bb1c8fe559992f8497ef81d7d81/manage/dvr)
99 | - May need to edit tuner list by clicking on tuner channels and matchin guide list
100 | - tbd
101 | - tbd
102 | - tbd
103 |
104 | ## Config for Silicon Dust
105 | - catMacMini - Plex - 192.168.2.35:32400
106 | - SiliconDust - Silicon Dust - 192.168.2.31
107 | - Local Router PortForward [http://192.168.2.1/Advanced_VirtualServer_Content.asp](http://192.168.2.1/Advanced_VirtualServer_Content.asp)
108 | - 192.168.2.1:32400 - 192.168.2.35:32400
109 | - 192.168.2.1:80 - 192.168.2.31:80
110 |
--------------------------------------------------------------------------------
/docs/overview.md:
--------------------------------------------------------------------------------
1 | # Overview
2 |
3 | gh site buildout generics
4 |
5 | 
6 |
7 | ## Stations
8 |
9 | ### Grid Infra front
10 | - [192.168.9.1](http://192.168.9.1) SOHO router PUBLIC-IP: 192.168.254.x (has inbound blocks)
11 | - [192.168.9.2](http://192.168.9.2) FreeNAS root-What#Time
12 | - [192.168.9.3](http://192.168.9.3) GitLAB root-What#Time
13 | - [192.168.9.4](http://192.168.9.4) nginx (was tobe the inbound web proxy config through freenas)
14 |
15 | ### Grid Infra DHCP - for stuff that may need to grab IP via DHCP
16 | - 192.168.9.20-99 DHCP via 192.168.9.1
17 | - [3C:07:54:72:49:E2 - 192.168.9.20](http://192.168.9.20) catmini - workstation
18 | - [00:1A:4B:CD:01:95 - 192.168.9.21](http://192.168.9.21) HPE BladeSystem Onboard Admin (use firefox) Administrator-What#Time
19 | - [messed up - 192.168.9.xx](http://192.168.9.xx) Cisco Switch in HPE (DHCP) (use firefox)
20 | - [VARIOUS - 192.168.9.180-250](---) ILO HPE
21 |
22 |
23 | ### Grid Infra static back HPE BladeStack
24 | - [3C:4A:92:F7:62:30 - 192.168.9.121:8009](https://192.168.9.221:8009) ProxMox pm1 (master node) root-Color#What!
25 | - [98:4B:E1:61:3E:20 - 192.168.9.122:8009](https://192.168.9.222:8009) ProxMox pm2 (cluster node)
26 | - [98:4B:E1:62:01:A8 - 192.168.9.123:8009](https://192.168.9.223:8009) ProxMox pm3 (cluster node)
27 | - [192.168.9.124:8009](https://192.168.9.224:8009) ProxMox pm4 (cluster node)
28 | - [192.168.9.125:8009](https://192.168.9.225:8009) ProxMox pm5 (cluster node)
29 | - [192.168.9.126:8009](https://192.168.9.226:8009) ProxMox pm6 (cluster node)
30 | - [192.168.9.127:8009](https://192.168.9.227:8009) ProxMox pm7 (cluster node)
31 | - [192.168.9.128:8009](https://192.168.9.228:8009) ProxMox pm8 (cluster node)
32 | - [192.168.9.129:8009](https://192.168.9.229:8009) ProxMox pm9 (cluster node)
33 | - [192.168.9.130:8009](https://192.168.9.230:8009) ProxMox pm10 (cluster node)
34 | - [192.168.9.131:8009](https://192.168.9.231:8009) ProxMox pm11 (cluster node)
35 | - [192.168.9.132:8009](https://192.168.9.232:8009) ProxMox pm12 (cluster node)
36 | - [192.168.9.133:8009](https://192.168.9.233:8009) ProxMox pm13 (cluster node)
37 | - [192.168.9.134:8009](https://192.168.9.234:8009) ProxMox pm14 (cluster node)
38 | - [192.168.9.135:8009](https://192.168.9.235:8009) ProxMox pm15 (cluster node)
39 | - [192.168.9.136:8009](https://192.168.9.236:8009) ProxMox pm16 (cluster node)
40 |
41 | ## FreeBSD Gateway Router (not working)
42 | - Look at the routes: netstat -rn
43 | - Delete the bad: route del default
44 | - Add default route: route add default 192.168.9.1
45 | - Add default route: vi /etc/rc.conf: defaultrouter="192.168.9.1"
46 | - Enable NAT: vi /etc/rc.conf: gateway_enable="YES"
47 | - Restart networking: /etc/rc.d/netif restart && /etc/rc.d/routing restart
48 |
49 | ## FreeNAS tweak of FreeBSD setup (reference only)
50 | - Go to [192.168.9.2](http://192.168.9.2) FreeNAS
51 | - System -> Tunables -> Add -> Variable: gateway_enable | Value: YES | Type: rc.conf
52 | - Reboot
53 |
54 | ## Vitrual Machines
55 | - cent7min on Proxmox
56 | - [192.168.9.201:8009](http://192.168.9.201:8009) ProxMox cf
57 | - cf->local(cf)->Upload->"CentOS-7-x86_64-Minimal-1810.iso"
58 | - Create VM (cent7min) - proxcatgrid Color#What!
59 | - Node: cf | VM ID: 100 | Name: cent7min | Pool: catgridPool
60 | - Boot: CD - Storge: local ISO image: CentOS-7-x86_64-Minimal-1810.iso
61 | - OS: Linux 4.x/3.x/2.6 Kernel
62 | - System: Graphic: Default SCSI Ctr: VirtIO SCSI
63 | - SCSI Controller: VirtIO | Bus: SCSI | Storage: local-lvm | Size: 9G
64 | - CPU: 2 | Memory: 1024
65 | - Create VM (bareMetal)
66 | - Node: cf | VM ID: 101 | Name: bareMetal | Pool: catgridPool
67 | - Boot: Do not use any media
68 | - OS: Linux 4.x/3.x/2.6 Kernel
69 | - System: Graphic: Default SCSI Ctr: VirtIO SCSI
70 | - SCSI Controller: VirtIO | Bus: SCSI | Storage: local-lvm | Size: 6G
71 | - CPU: 1 | Memory: 512
72 | - Network Bridge: vmbr0 | Model: VirtIO
73 |
74 | ## VLAN for Testing pxe
75 |
76 | - Go to [192.168.9.9](http://192.168.9.9) HPE BladeSystem Onboard Admin (use firefox) admin-What#Time
77 | - Enclosure->Interconnect->CiscoSwtich->ManagementConsole
78 | - should take you to [192.168.9.72](http://192.168.9.72) Cisco Switchroot
79 |
80 | ## Setup digital-rebar on cent7min
81 |
82 | ## Test PXE boot
83 |
84 | ## Proxmox
85 |
86 | ### proxmox install
87 |
88 | - USB key boot
89 | - Install options
90 | - root-Color#What!
91 | - FQDN: pm01-gh.2cld.net
92 | - IP: 192.168.9.221 NM: 24 GW: 192.168.9.1
93 |
94 | ### proxmox storage
95 | - Create CIFS (samba) storage
96 | - Datacenter -> Storage -> Add -> CIFS
97 | - ID: GridShare
98 | - Server: 192.168.9.2 (freenas)
99 | - Username: ghadmin (What#time)
100 | - Share: GridShare
101 | - Content: Disk Image, ISO Image
102 |
103 | ### proxmox vm
104 | [CreateTemplate Video](https://www.youtube.com/watch?v=8qwnXd1yRK4&t=752s)
105 |
106 |
107 | ### proxmox cluster
108 | [CreateCluster Video](https://youtu.be/s9FODQi2-20?t=79)
109 |
110 | - on pm01-gh:
111 | - Datacenter -> Cluster -> Create Cluster -> Cluster Name: ghcluster (Create)
112 | - Datacenter -> Cluster -> Join Information (Copy Information)
113 | - on pm02-gh:
114 | - Datacenter -> Cluster -> Join Cluster -> (Paste Information)
115 | - input pm01-gh root password
116 | - click JOIN
117 | - after refresh... should see both nodes
118 | - repeat for nodes pm03-gh to pm16-gh
119 | - Now clone and migrate vm to the nodes
120 |
121 | ## Economics
122 | Compare with [AWS pricing](https://aws.amazon.com/emr/pricing/) via [AWS InstanceType](https://aws.amazon.com/ec2/instance-types/) also [AWS calculator](https://calculator.s3.amazonaws.com/index.html)
123 |
124 | - c4.4xlarge vCPU: 16 GiB: 30 - $0.796/hr (EMR $0.21)
125 | - c5.4xlarge vCPU: 16 GiB: 32 - $0.798/hr (EMR $0.19)
126 | - ESB - $0.10 per GB-month of provisionted storage
127 | - DataIn $0.00 DataOut $0.155/month for first 10TB
128 |
129 | ### HPE Gridnode at AWS pricing
130 | 1. 16 nodes @ c4.4xlarge = $0.796 x 16 = $12.74/hr x 24hr = $305.76/day = $9172.80/mth
131 | 2. 16 nodes @ 140GB (aws has 500GB min so would be more) = $0.10 x 16 x 140 = $240/mth
132 |
133 | ### HPE Gridnode power cost
134 | 1. 16 nodes @ 100% => 4.600KW x $0.10/kWh = $0.46/hr x 24hr = $11.04/day = $331.20/mth
135 |
136 | ## Reference docs
137 | - [CreateCluster Video](https://youtu.be/s9FODQi2-20?t=79)
138 | - [CreateTemplate Video](https://www.youtube.com/watch?v=8qwnXd1yRK4&t=752s)
139 | - [CreateContainer Video](https://youtu.be/cyjXxsQ8Igw?t=8)
140 | - [ProxMox Interface](https://youtu.be/GHzMaTar0fw?t=5)
141 | - [CreateImage via ISO](https://youtu.be/BiIFLFhXByE?t=105)
142 | - [Install ProxMox](https://youtu.be/MO4CaHn1EjM?t=96)
143 | - [gh.2cld.net cat9box](https://docs.google.com/spreadsheets/d/1cPcjizKYg8XDHQctY8t1wBhW3g6rClCJ6O_DGaXIscI/edit#gid=1544884858)
144 | - [2cld-NetworkLayout](https://docs.google.com/spreadsheets/d/1fIs0hXZehy1KZmvjHQ6srktOA0otWPfx2Bo0VUg2oa4/edit?ts=5cd30e41#gid=0) via christrees@gmail.com
145 | - [2cld-DataCenterLayout](https://docs.google.com/spreadsheets/d/1QBA9OzsOhxs5W3kwlhxLZCmulFgd5uHMqu2qgrbMdxE/edit#gid=0) via admin@2cld.net (me)
146 |
--------------------------------------------------------------------------------
/docs/workflow.md:
--------------------------------------------------------------------------------
1 | # Workflow for gh Blender Render Grid
2 | Purpose: Data flow overview for Grasshorse Blender Render Grid.
3 |
4 | ## Main Compute Components
5 | 1. Magma (Project Portal - ghMagma)
6 | 2. Artist Workstation (Blender GUI Workstation - ghArtist)
7 | 3. /media/gh (Storage - Process Control Scripts)
8 | 4. /media/projects (Storage - Blender Render Resources)
9 | 5. /media/process (S
10 | 6. multiple - Blender Render Node (Render Node - ghBlenderNode)
11 |
12 | ## Process Steps
13 | 1. Admin - Create Project
14 | 1. Artist - Use Workstation to create resources in /media/projects
15 | 1. Director - (pooptional) Greenlight version package for Render Grid resources
16 | 1. Artist - Package x.zip
17 | 1. Artist - Use MAGMA to submit render job
18 | 1. Admin - Monitor Render Grid for problems and complete jobs
19 | 1. Admin - Transfer complete jobs to _dailies and project rend directory
20 | 1. Director / Artist / Admin - Process Feedback and submit FIX Job Tickets.
21 |
22 | ## nodeService.sh Diagram
23 | 
24 |
25 | ## Data Flow and Event Process
26 | 1. Admin - Create Project - MAGMA creates structure
27 | 1. Outputs ToProcess.sh in /media/process/toProcess.sh
28 | 1. Create folder structures on
29 | - /media/production
30 | - /media/process
31 | - ?? why not /media/gh ??
32 | 1. Artist - Use Workstation to create resources in /media/projects
33 | - Blender Program is mapped to /media/projects
34 | 1. Artist creates .blend file in /media/projects/0194/…
35 | 1. Director - Greenlight version package for Render Grid resources
36 | - Maybe should be in MAGMA but now it’s just Artist and Director talk
37 | 1. Artist - Package x.blend and x.zip
38 | 1. Artist creates versioned x.zip
39 | 1. Artist - Use MAGMA to submit render job
40 | 1. Artist moves x.zip to /media/gh/*_zip
41 | 1. Artist uses MAGMA to generate *.cfg in /media/gh/*_rend
42 | 1. Admin - Monitor Render Grid for problems and complete jobs
43 | - If nodes are running old system… /media/gh/*_rend/*.lck,*.png should appear
44 | 1. Admin - Transfer complete jobs to _dailies
45 | 1. Stephen runs mp4Service.sh to generate daily review stuff
46 | 1. Stephen runs pngService.sh to transfer render to project rend directory
47 | 1. Director / Artist / Admin - Process Feedback and submit FIX Job Tickets.
48 |
49 | ### Services and Data Flow Walkthrough - Video: cat_GrasshorseRenderGrid_StephenSystemWalkthrough.mov
50 | 1. Admin - Create Project ( TC-00:24:52 ) http://galaxy.grasshorse.com/index.php/project-administration
51 | - Project Administration -> Shot Management
52 | - Select Series
53 | - Select Shared Folder
54 | - Select / Create Shot ???
55 | - Set Frame Range
56 | - Click “Create” button
57 | - Magma does a “GET” with values to http://galaxy.grasshorse.com/index.php/project-administration/shot-management?seriesId=55&showId=104
58 | - Magma runs the function processSeries() processShot() from function.php to run makeFolders and makeBucket that generate the /media/process/toProcess.sh script that needs to be run as an admin.
59 | - superuser@galaxy:~$ cd /media/process/ ( TC-00:26:36 )
60 | - Verify you can get to the storage the script needs to create in (they are on different systems)
61 | - superuser@galaxy:/media/process$ ls ../projects
62 | - superuser@galaxy:/media/process$ ls ../production
63 | - superuser@galaxy:/media/process$ ls ../gh
64 | - superuser@galaxy:/media/process$ cat toProcess.sh ( TC-00:26:29 )
65 | 1. Artist - Blender Work ( TC-00:32:30 )
66 | - Create some Blender data to Render.
67 | - Save Blend file ( TC-00:33:33 )
68 | - /Volumes/projects/0194/000/prod/0194_000_0002A/3d/3danim/
69 | - 0194_000_0002A_3danim_v001.blend
70 | - (Stephen saves in a machine that has Magma UI so it fills in the Magma db) ( TC-00:34:00 )
71 | 1. Director - GREEN LIGHT artist to submit grid render job (just Aritist and Stephen talking)
72 | 1. Artist - Blender Grid Submit
73 | - Set Blender User Pref to create zip ( TC-00:36:27 )
74 | - Pack Blend to Archive ( TC-00:37:00 ) 0194_000_0002A_3danim_v001.zip
75 | - IMPORTANT: Watch for zip package to COMPLETE
76 | - ( TC-00:38:00 ) Go to projects (bugatti) or /media/projects/0194/000/prod/0194_000_0002A/3d/3danim/ and see the .blend and .zip files you just created.
77 | - MOVE the above .zip to the render grid ( TC-00:38:26 ) to /media/gh/0194_000_0002A_zip directory.
78 | - Stephen talking about extra Step stuff that for future crap
79 | 1. Submit Render ( TC-00:41:14 )
80 | - Magma creates .cfg files to deploy to grid
81 | - Stephen explains how Magma creates files and some of the db tables involved.
82 | 1. Admin - Monitor Render Grid for problems and complete jobs
83 | - Looking at grid node work ready to be done ( TC-00:44:00 )
84 | - /media/gh/0194_000_0002A_zip see the zip file
85 | - /media/gh/0194_000_0002A_rend see the *.cfg files for each frame
86 | - ( TC-00:45:00 ) Stephen explains *.cfg file info
87 | - … Stephen explains more features to add with structure
88 | 1. TURN ON GRID NODE
89 | - Login to a grid node
90 | - ./nodeRenderService.sh &
91 | - Node should pickup *.cfg jobs
92 | - Reads /media/gh/ghprojects/jobPriority.list
93 | - ( TC-00:52:00 ) Stephen explains jobPriority.list
94 | - ( TC-00:54:00 ) nodeRenderService.sh output
95 | - ( TC-01:01:00 ) nodeRenderService creates a *.lock then a *.png
96 | - ( TC-01:02:30 ) Go look at badBlender.txt
97 | - ( TC-01:03:00 ) Go look at nodeService.log
98 | - ( TC-01:03:40 ) Go look at nodeRenderService.sh code
99 | - ( TC-01:05:30 ) Node Type = 2 issue with blender command
100 | - ( TC-01:06:30 ) Stephen gets into the frame feature AND how the zip thing works… AGAIN… so it’s OBVIOUSLY something he wants to do… MAGMA-TODO
101 | - ( TC-01:09:00 ) Chris explains why node stopped with badBlender.txt
102 | - ( TC-01:09:30 ) Stephen removes badBlender.txt and runs script
103 | - Chris and Stephen talk broken crap.
104 | - tbd
105 | - Stephen explains an issue with *.zip file when blender packs them. (TC-00:55:50 )
106 | - ( TC-01:12:00 ) Stephen follows node png out to bucket /media/gh/0194_000_0002A_rend
107 | - tbd
108 | 1. Admin - Transfer complete jobs to _dailies
109 | - ( TC-01:12:30 ) Stephen explains what mp4 and png maker does
110 | - ( TC-01:13:30 ) Stephen shows script /media/gh/ghbin/grender/mp4Service.sh
111 | - ( TC-01:14:10 ) Stephen shows script /media/gh/ghbin/grender/pngService.sh
112 | - ( TC-01:15:00 ) Stephen shows scripts /media/projects/_dailies/0194_001/07_22_2017/
113 | - ( TC-01:16:30 ) Stephen tells about “current status view” through MAGMA… ANOTHER website feature (MAGMA) project for someone MAGMA-TODO
114 | - test
115 | - tbd
116 | 1. Director / Artist / Admin - Process Feedback and submit FIX Job Tickets.
117 | - Somewhere we should keep source code and ticket system.
118 | - Feedback about process improvements should follow AGILE SCRUM stuff.
119 | - Test
120 |
121 |
122 | #### MODS to TEST
123 | Remote nodes in Cedar Falls.
124 | Create tar for _rend and _zip
125 | Push tar
126 | Pull tar
127 | Render tar
128 | Create finished tar
129 | Push tar
130 | Pull tar
131 | Expand project
132 | Fix Node poll and pull to Controller job PUSH
133 |
--------------------------------------------------------------------------------
/docs/blenderCacheBake.md:
--------------------------------------------------------------------------------
1 | # Blender Cache Bake
2 |
3 | ## Issue with blender smoke test.
4 |
5 | - For rendering baked smoke cache files are needed but not included in blend zip
6 | - For large baked files, zip on windows workstation had issues with large files (we think)
7 | - Each frame only need the one bake file
8 | - See [Blender Cache](https://docs.blender.org/manual/en/latest/physics/particles/emitter/cache.html)
9 |
10 | ### Test
11 | Testing some ideas out...
12 |
13 | #### FIX1 - Move cache via tar to node b037
14 | - at the same dir level as the .blend needs to be the smoke_cashe
15 | - Use tar to bundle and move the smoke_cashe (takes over 20min to bundle and move)
16 | - tar smoke_cashe and move .tar and .zip to bn037
17 | ```
18 | ghadmin@magma:/media/projects/0215/002/prod/0215_002_0007A/3d/3danim$ tar -cvf smoke_cashe-test.tar smoke_cashe/
19 | ghadmin@magma:/media/projects/0215/002/prod/0215_002_0007A/3d/3danim$ scp smoke_cashe-test.tar ghadmin@bn037:/home/ghadmin/
20 | ghadmin@magma:/media/projects/0215/002/prod/0215_002_0007A/3d/3danim$ scp 0215_002_0007A_3danim_v002.zip ghadmin@bn037:/home/ghadmin/
21 | ```
22 | - extract tar
23 | ```
24 | ghadmin@bn037:~$ tar -xvf smoke_cashe-test.tar
25 | ```
26 | - prep and render a frame
27 | ```
28 | ghadmin@bn037:~$ unzip 0215_002_0007A_3danim_v002.zip
29 | ghadmin@bn037:~$ blender -b 0215_002_0007A_3danim_v002.blend -y -F PNG -o testout -t 0 -f 52
30 | ```
31 | - move to Check that it works
32 | ```
33 | ghadmin@bn037:~$ cp testout0052.png /media/farm/
34 | ```
35 | - !!!_YES_!!! THAT WORKS
36 |
37 | #### FIX2 - Move only one bake frame to b037
38 | - copy just .zip to bn040
39 | ```
40 | ghadmin@magma:/media/projects/0215/002/prod/0215_002_0007A/3d/3danim$ scp 0215_002_0007A_3danim_v002.zip ghadmin@bn040:/home/ghadmin/
41 | ```
42 | - create smoke-frame and put just frame 52 bake in it
43 | ```
44 | ghadmin@bn040:~$ mkdir smoke_cashe
45 | ```
46 | - from magma push the frame
47 | ```
48 | ghadmin@magma:/media/projects/0215/002/prod/0215_002_0007A/3d/3danim$ scp smoke_cashe/_000052_01.bphys ghadmin@bn040:/home/ghadmin/smoke_cashe/
49 | ```
50 | - prep and Render frame 52
51 | ```
52 | ghadmin@bn040:~$ unzip 0215_002_0007A_3danim_v002.zip
53 | ghadmin@bn040:~$ blender -b 0215_002_0007A_3danim_v002.blend -y -F PNG -o testout -t 0 -f 52
54 | ```
55 | - move to Check that it works
56 | ```
57 | ghadmin@bn040:~$ cp testout0052.png /media/farm/testout0052-check.png
58 | ```
59 | - __YES__ THAT WORKS
60 |
61 | #### FIX3 - Just link the cache
62 | - create a link to smoke_cashe
63 | ```
64 | ghadmin@bn037:~$ mv smoke_cashe testlink
65 | ghadmin@bn037:~$ mkdir smoke_cashe
66 | ghadmin@bn037:~$ ln -s /home/ghadmin/testlink smoke_cashe
67 | ghadmin@bn037:~$ ls -alu smoke_cashe
68 | lrwxrwxrwx 1 ghadmin ghadmin 22 May 17 18:08 smoke_cashe -> /home/ghadmin/testlink
69 | ```
70 | - Render a new frame 60
71 | ```
72 | ghadmin@bn037:~$ blender -b 0215_002_0007A_3danim_v002.blend -y -F PNG -o testout -t 0 -f 60
73 | ```
74 | - move to Check that it works
75 | ```
76 | ghadmin@bn037:~$ cp testout0060.png /media/farm/
77 | ```
78 | - !!!_YES_!!! THAT WORKS
79 |
80 | #### FIX4 - Move tar to farm and expand, create link to this on each node
81 | - Setup ghcache on farm
82 | ```
83 | ghadmin@magma:~$ mkdir /media/farm/ghcache
84 | ghadmin@magma:~$ cd /media/farm/ghcache/
85 | ghadmin@magma:/media/farm/ghcache$ cp /media/projects/0215/002/prod/0215_002_0007A/3d/3danim/smoke_cashe-test.tar .
86 | ghadmin@magma:/media/farm/ghcache$ tar -xvf smoke_cashe-test.tar
87 | ```
88 | - create link on each node
89 | - bn0xx - 192.168.254.1xx
90 | ```
91 | catmini:~ cat$ ssh ghadmin@192.168.254.1xx
92 | ghadmin@bn0xx:~$ ln -s /media/farm/ghcache/smoke_cashe smoke_cashe
93 | ```
94 | - bn036 - 192.168.254.176 - ALSO re-installed blender
95 | - bn037 - 192.168.254.177
96 | - bn040 - 192.168.254.180
97 | - bmbn000 - 192.168.254.110
98 | - bn039 - 192.168.254.179 - ISSUE with mount (need to install nfs client helper)
99 |
100 |
101 |
102 | ### NOTES:
103 |
104 | #### magma 192.168.254.4
105 | ```
106 | ghadmin@magma:~$ cd /media/projects/0215/002/prod/0215_002_0007A/3d/3danim/
107 | ghadmin@magma:/media/projects/0215/002/prod/0215_002_0007A/3d/3danim$ ls
108 | 0215_002_0007A_3danim_v001.blend 0215_002_0007A_3danim_v002.blend1 smoke_cashe
109 | 0215_002_0007A_3danim_v002.blend 0215_002_0007A_3danim_v002.zip smoke_cashe-test.tar
110 | ghadmin@magma:/media/projects/0215/002/prod/0215_002_0007A/3d/3danim$
111 | ```
112 |
113 | #### bn040 92.168.254.180
114 | ```
115 | ghadmin@bn040:~$ ls -alu
116 | total 1716
117 | drwxr-xr-x 9 ghadmin ghadmin 12288 May 17 17:51 .
118 | drwxr-xr-x 3 root root 4096 Feb 23 13:20 ..
119 | -rw-rw-rw- 1 ghadmin ghadmin 511936 May 17 17:47 0215_002_0007A_3danim_v002.blend
120 | -rwxrwxr-x 1 ghadmin ghadmin 105467 May 17 17:45 0215_002_0007A_3danim_v002.zip
121 | -rw------- 1 ghadmin ghadmin 20741 May 18 11:33 .bash_history
122 | -rw-r--r-- 1 ghadmin ghadmin 220 May 17 18:22 .bash_logout
123 | -rw-r--r-- 1 ghadmin ghadmin 3771 May 17 17:43 .bashrc
124 | drwx------ 4 ghadmin ghadmin 4096 Jan 5 2017 .cache
125 | drwx------ 3 ghadmin ghadmin 4096 Apr 22 2017 .config
126 | drwx------ 3 ghadmin ghadmin 4096 Feb 22 08:50 .gnupg
127 | drwxrwxr-x 2 ghadmin ghadmin 4096 May 5 2017 .nano
128 | -rwxr-xr-x 1 ghadmin ghadmin 13293 Aug 3 2017 nodeRenderService2.sh
129 | -rwxrwxr-x 1 ghadmin ghadmin 13297 May 16 16:19 nodeRenderService3.sh
130 | -rw-rw-r-- 1 ghadmin ghadmin 38394 May 17 12:54 nodeServiceBlender.log
131 | -rw-rw-r-- 1 ghadmin ghadmin 18121 May 17 12:53 nodeService.log
132 | -rw-r--r-- 1 ghadmin ghadmin 673 May 17 17:43 .profile
133 | -r-------- 1 ghadmin ghadmin 38 Feb 7 2018 .smbcredentials
134 | drwxrwxr-x 2 ghadmin ghadmin 4096 May 17 17:47 smoke_cashe
135 | drwx------ 2 ghadmin ghadmin 4096 Jan 9 2017 .ssh
136 | -rw-r--r-- 1 ghadmin ghadmin 0 Jan 5 2017 .sudo_as_admin_successful
137 | -rw-rw-r-- 1 ghadmin ghadmin 941160 May 17 17:52 testout0052.png
138 | drwxr-xr-x 2 ghadmin ghadmin 4096 Jan 5 2017 .vim
139 | -rw------- 1 ghadmin ghadmin 4160 Jul 29 2017 .viminfo
140 | ghadmin@bn040:~$
141 | ```
142 |
143 | #### bn037 92.168.254.177
144 | ```
145 | ghadmin@bn037:~$ ls -alu
146 | total 9033448
147 | drwxr-xr-x 8 ghadmin ghadmin 16384 May 18 11:35 .
148 | drwxr-xr-x 3 root root 4096 May 17 17:58 ..
149 | -rw-rw-rw- 1 ghadmin ghadmin 511936 May 17 17:33 0215_002_0007A_3danim_v002.blend
150 | -rwxrwxr-x 1 ghadmin ghadmin 105467 May 17 17:27 0215_002_0007A_3danim_v002.zip
151 | -rw------- 1 ghadmin ghadmin 14903 May 18 11:34 .bash_history
152 | -rw-r--r-- 1 ghadmin ghadmin 220 May 16 18:38 .bash_logout
153 | -rw-r--r-- 1 ghadmin ghadmin 3771 May 17 16:26 .bashrc
154 | drwx------ 4 ghadmin ghadmin 4096 May 17 15:02 .cache
155 | drwx------ 3 ghadmin ghadmin 4096 May 17 15:02 .config
156 | drwx------ 3 ghadmin ghadmin 4096 May 17 15:02 .gnupg
157 | -rwxrwxr-x 1 ghadmin ghadmin 13297 May 16 16:25 nodeRenderService3.sh
158 | -rw-rw-r-- 1 ghadmin ghadmin 1901 May 17 17:30 nodeService.log
159 | -rw-r--r-- 1 ghadmin ghadmin 673 May 17 16:26 .profile
160 | -r-------- 1 ghadmin ghadmin 38 Apr 28 2018 .smbcredentials
161 | lrwxrwxrwx 1 ghadmin ghadmin 22 May 17 18:08 smoke_cashe -> /home/ghadmin/testlink
162 | -rwxrwxr-x 1 ghadmin ghadmin 9248501760 May 17 17:28 smoke_cashe-test.tar
163 | drwx------ 2 ghadmin ghadmin 4096 May 17 15:02 .ssh
164 | -rw-r--r-- 1 ghadmin ghadmin 0 Jan 5 2017 .sudo_as_admin_successful
165 | drwxrwxr-x 2 ghadmin ghadmin 4096 May 17 18:08 testlink
166 | -rw-rw-r-- 1 ghadmin ghadmin 9384 May 17 17:38 testout0052.png
167 | -rw-rw-r-- 1 ghadmin ghadmin 1006885 May 17 18:13 testout0060.png
168 | drwxr-xr-x 2 ghadmin ghadmin 4096 May 17 15:02 .vim
169 | -rw------- 1 ghadmin ghadmin 7330 May 17 17:25 .viminfo
170 | ghadmin@bn037:~$ ls .cache/
171 | motd.legal-displayed thumbnails update-manager-core
172 | ghadmin@bn037:~$ ls .cache/update-manager-core/
173 | meta-release-lts
174 | ghadmin@bn037:~$
175 | ```
176 |
--------------------------------------------------------------------------------
/docs/coldstorage/README.md:
--------------------------------------------------------------------------------
1 | [edit](https://github.com/2cld/gh/edit/master/docs/coldstorage/README.md)
2 | # gh coldstorage
3 | Mapping the status of network and devices for coldstorage.
4 |
5 | ## ToDo
6 | - [X] DONE 2023.07.07 ~~Chris creates this document~~
7 | - [ ] 2023.07.08 Call Chris and arrange a time to review
8 | - [ ] Steve and Chris review digital backup data
9 | - [ ] Chris reclaims old backup space
10 | - [ ] Chris and Steve identify min requied gh.lan for a restart
11 | - [ ] 2023.07.15 13:00 CST confirm datetime for the coldstorage test
12 | - [ ] Confirm backup [Digital Inventory Doc](https://docs.google.com/spreadsheets/d/1DUeTZ9TLzZReFxg84TLXvxiPXK7IepM0W9Iki86HPYo/edit#gid=0)
13 | - [ ] magma
14 | - [ ] projects
15 | - [ ] production
16 | - [ ] public
17 | - [ ] executive
18 | - [ ] server workstations ?
19 | - [ ] Confirm server and network config [DataCenter Layout](https://docs.google.com/spreadsheets/d/1cPcjizKYg8XDHQctY8t1wBhW3g6rClCJ6O_DGaXIscI/edit#gid=1621592935)
20 | - [ ] pfSense
21 | - [ ] truenas
22 | - [ ] magma
23 | - [ ] Physical hardware inventory
24 | - [ ] Digital Data
25 | - [ ] Servers and configurations
26 | - [ ] Storage and configurations
27 | - [ ] Network and configurations
28 | - [ ] Print hardcopy with Inventory and admin info
29 | - [ ] Take everything down
30 | - [ ] Bring everything up (confirm with check test)
31 | - [ ] Take everything down again
32 |
33 | old wip info [https://github.com/christrees/wip/edit/main/labnotes/gh-build.md](https://github.com/christrees/wip/edit/main/labnotes/gh-build.md)
34 |
35 | ## gh backup build
36 | - based on [neststack proxmox](https://github.com/2cld/netstack/tree/master/docs/lan/compute/proxmox)
37 |
38 | ## gh.lan local 192.168.254.0/24 gw [http://192.168.254.254/](http://192.168.254.254/)
39 |
40 | | web proxy | Link | type | description |
41 | |--------------|---------|------|-------------|
42 | | 0028.ftth.farmtel.net | [https://208.126.60.28/](https://208.126.60.28/) | static | farmtel public IP |
43 | |--------------|---------|------|-------------|
44 | | farmtel | [http://192.168.254.254/](http://192.168.254.254/) | static | farmtel gw |
45 | | gh.lan | [http://192.168.254.1/](http://192.168.254.1/) | static | gh ns gw |
46 | | projects | [http://192.168.254.6/](http://192.168.254.6/) | dhcp-res | gh projects gw |
47 | | magma | [http://192.168.254.4/](http://192.168.254.4/) | dhcp-res | gh magma |
48 |
49 | - IPA DNS bindings [https://192.168.254.1/services_unbound.php](https://192.168.254.1/services_unbound.php)
50 | - IPA DHCP lease [https://192.168.254.1/status_dhcp_leases.php](https://192.168.254.1/status_dhcp_leases.php)
51 | - IPA DHCP macres [http://192.168.254.254/advancedsetup_dhcpreservation.html](http://192.168.254.254/advancedsetup_dhcpreservation.html)
52 | - DNS pfsense [http://192.168.254.1](http://192.168.254.254/) route to 192.168.252.0/23 subnet
53 | - gw is http://192.168.254.254/ but DNS is http://192.168.254.1 the PFSense Router
54 | - gh does not have control of the gw router 192.168.254.254 and public IP 208.126.60.28
55 | - [https://whatismyipaddress.com/](https://whatismyipaddress.com/) [https://whatismyipaddress.com/ip/208.126.60.28](https://whatismyipaddress.com/ip/208.126.60.28)
56 |
57 |
58 | ## 192.168.252.0/23 gw [http://192.168.252.1/](http://192.168.252.1/) dns 192.168.253.254
59 |
60 | | web proxy | Link | type | description |
61 | |--------------|---------|------|-------------|
62 | | ng.gh.lan | [https://192.168.253.254/](https://192.168.253.254/) | static | pfsense ng on subnet |
63 | | sg.gh.lan | [https://192.168.252.2/](https://192.168.252.2/) | static | truenas sg on subnet |
64 | | cg.gh.lan | [https://192.168.252.3:8006/](https://192.168.252.3:8006/) | static | proxmox cg on subnet |
65 | | sg2.gh.lan | [https://192.168.252.6/](https://192.168.252.6/) | static | truenas sg2 garage subnet |
66 | | lot.gh.lan | [https://192.168.252.12/](https://192.168.252.12/) | static | truenas log ? on subnet |
67 | | catghwin10 | [http://192.168.252.10](http://192.168.252.10) | static | windows 10 cat zt 10.147.17.127 |
68 |
69 | - [https://my.zerotier.com/](https://my.zerotier.com/)
70 | - tbd
71 |
72 | ---
73 | # DNS Resolver
74 | - [https://192.168.253.254/services_unbound.php](https://192.168.253.254/services_unbound.php)
75 | ```
76 | alpine gh.lan 192.168.254.91 Artist Workstation
77 | avanti gh.lan 192.168.254.96 Artist Workstation
78 | char1 gh.lan 192.168.254.101 Puppet Justice CHAR1
79 | char2 gh.lan 192.168.254.102
80 | char3 gh.lan 192.168.254.103 Puppet Station
81 | cybertruck gh.lan 192.168.254.95 cybertruck
82 | eclipse gh.lan 192.168.254.94 Reception Computer
83 | galaxy gh.lan 192.168.254.1 ghadmin DNS
84 | garage gh.lan 192.168.252.2 ghadmin storage
85 | gremlin gh.lan 192.168.254.93 Grasshorse Conference Room Workstation
86 | magma gh.lan 192.168.254.4 ghadmin project management
87 | ng gh.lan 192.168.253.254 Grasshorse Network Gateway
88 | network gh.lan Alias for ng.gh.lan Long Name for Network Gateway
89 | peugeot gh.lan 192.168.254.87 Vivan's Computer
90 | pinzgauer gh.lan 192.168.254.83 Grasshorse Artist Workstation
91 | projects gh.lan 192.168.254.6 gh project storage
92 | prowler gh.lan 192.168.254.8 ghadmin storage - Projects
93 | ram gh.lan 192.168.254.11 Media Computer
94 | saturn gh.lan 192.168.254.92 Conference Room Computer
95 | sg gh.lan 192.168.252.2 Grasshorse Storage Gateway FreeNAS
96 | storage gh.lan Alias for sg.gh.lan Long Nmae
97 | stream gh.lan 192.168.254.3 Internal Streaming Server
98 | studebaker gh.lan 192.168.254.90 Artist Workstation
99 | switcher gh.lan 192.168.254.110 Sound Room Switcher
100 | tesla gh.lan 192.168.254.88 Surface Pro Laptop
101 | triumph gh.lan 192.168.254.89 Mac Workstation
102 | viper gh.lan 192.168.254.81 viper
103 | ```
104 | # Active dhcp leases 192.168.252.0/22 subnet
105 | - [https://192.168.253.254/status_dhcp_leases.php](https://192.168.253.254/status_dhcp_leases.php)
106 | Note: 192.168.254.0/24 subnet is farmtel with no admin access
107 | ```
108 | 192.168.252.2 00:30:48:c7:82:b3 storage gateway sg sg.gh.lan freenas 4x6TB zfs2 21TB n/a n/a online static
109 | 192.168.252.6 00:08:9b:e2:83:93 sg2 sg2 Backup Storage Server TS-431 4x2TB raid5 n/a n/a offline static
110 | 192.168.252.9 00:15:17:b1:cf:59 dg dg Grasshorse GitLab Document Gateway n/a n/a offline static
111 | 192.168.252.10 00:1e:67:0f:b9:1c catghwind10 catghwin10 cat Windows 10 baremetal test machine n/a n/a online static
112 | 192.168.252.12 1a:59:cc:25:96:5d lot lot lot storage parking for offline data n/a n/a offline static
113 | 192.168.252.19 3c:07:54:72:49:e2 catmini-ghgrid macci macci IP when on ghadmin Grid n/a n/a offline static
114 | 192.168.252.101 00:1e:67:0f:b7:50 ghg01 ghg01 Grasshorse proxmox grid server ghg01 n/a n/a offline static
115 | 192.168.252.102 00:1e:67:0f:b9:b1 ghg02 ghg02 Grasshorse proxmox grid server ghg02 n/a n/a offline static
116 | 192.168.252.103 00:1e:67:0f:ba:94 ghg03 ghg03 Grasshorse proxmox grid server ghg03 n/a n/a offline static
117 | ```
118 | # arp table
119 | - [https://192.168.253.254/diag_arp.php](https://192.168.253.254/diag_arp.php)
120 | ```
121 | WAN 192.168.254.91 70:8b:cd:54:d7:b4 alpine.gh.lan Expires in 837 seconds ethernet
122 | LAN 192.168.252.10 00:1e:67:0f:b9:1c catghwin10.gh.lan Expires in 496 seconds ethernet
123 | WAN 192.168.254.103 4c:cc:6a:0d:be:32 char3.gh.lan Expires in 1172 seconds ethernet
124 | WAN 192.168.254.95 04:d9:f5:c8:c7:fc cybertruck.gh.lan Expires in 1140 seconds ethernet
125 | WAN 192.168.254.94 1c:69:7a:90:17:1f eclipse.gh.lan Expires in 1091 seconds ethernet
126 | WAN 192.168.254.1 00:1e:67:10:80:88 galaxy.gh.lan Permanent ethernet
127 | WAN 192.168.254.93 4c:cc:6a:0d:bd:1e gremlin.gh.lan Expires in 1190 seconds ethernet
128 | LAN 192.168.253.254 00:1e:67:10:80:89 ng.gh.lan Permanent ethernet
129 | WAN 192.168.254.6 00:30:48:c9:ee:98 projects.gh.lan Expires in 854 seconds ethernet
130 | WAN 192.168.254.8 00:1e:67:0f:ba:2c prowler.gh.lan Expires in 1012 seconds ethernet
131 | WAN 192.168.254.11 00:23:df:df:53:21 ram.gh.lan Expires in 216 seconds ethernet
132 | LAN 192.168.252.2 00:30:48:c7:82:b3 sg.gh.lan Expires in 23 seconds ethernet
133 | WAN 192.168.254.90 40:16:7e:37:9d:af studebaker.gh.lan Expires in 1163 seconds ethernet
134 | WAN 192.168.254.81 4c:cc:6a:0d:be:98 viper.gh.lan Expires in 1184 seconds ethernet
135 | WAN 192.168.254.80 10:c3:7b:46:da:95 Expires in 1190 seconds ethernet
136 | WAN 192.168.254.254 ec:4f:82:65:9a:cf Expires in 1181 seconds ethernet
137 | ```
138 |
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 | [Edit this](https://github.com/2cld/gh/edit/master/README.md)
2 |
3 | # 2024.07.19
4 | ## Given I can get access to Sat/Sun
5 | - Pull my truck and trailer to back of GH Loading Dock
6 | - Load my corner of shit in bathroom and server room
7 | - Load large trash and/or bags for dump
8 | - Once trailer is full, go out to folks and throw off my stuff onto palets, trash in trash pile
9 | - Go back into GH Loading Dock to load bigger servers and server racks, doors
10 | - Load 'need to recycle' electronics into my recycle crate
11 | - Load any tagged stuff from Steve, Kathy or Karen for recycle and or further sorting sale
12 | - Assuming all stuff on shelves (and shelves) downstairs will to out to folks barn
13 | - All trash in bags (both for trash or further sorting) just need to be tagged as trash or sort recycle
14 | - Carla, Kathy and Karen can work through sorting tagging arch or 'put up for sale' out at moms, but target date for disposition is pre Aug 4
15 | - Brian and I will work through any dumpster trash/ or recycling out of the large barn
16 | - I'm good with moving any larger toolboxes or equipment out to the big sheds at folks... again pre Aug 4 disposition is all that's required
17 |
18 | - Scott and I talked... worst case he said he can hire kids on monday again, once I'm done, I can leave folks truck and trailer for Monday... and a spot in the old shed to just back the trailer into. You can leave what-ever on it with a pre Aug 4 disposition... Brian and I can deal with it with the rest of our junk / storage.
19 |
20 |
21 | # gh
22 |
23 | - For Carla... [Grain bin mini home](https://www.youtube.com/watch?v=XFhKkr28Wj0)
24 | - Air BnB [Grain Silo Tiny House](https://www.youtube.com/watch?v=7NDsd4B0sK0)
25 |
26 | Agenda for 2024.01.08-??
27 | - Carla is off next week recovering from her eye update.
28 | - If she does not contact you guys before Tue, start bugging her.
29 | - Checkout [https://www.catalogit.app/](https://www.catalogit.app/)
30 | - [Catalogit - youtube demo](https://youtu.be/4ks_KsO18yw?list=PLh1Akm1WtAXbAwMiyJEc_ASl5AQbzBbb9)
31 | - ghadmin chrome user [https://catalogit.app/login/credentials](https://catalogit.app/login/credentials)
32 | - Trinkala's are using this do document rare photos and artwork
33 | - You can sign up and get 50 items for free
34 | - If we use it, Trink and I would build one
35 | - Our 'goal' while Carla is at Moms
36 | - Finish clothing sort and dispose
37 | - Do a SID (below) on all items in house
38 | - Brian and I are doing a SID on the garages around Mom's house
39 | - I would like to setup selling of items (Trinkalas, Nordykes and Edwards are also looking to sell collectables)
40 | - I'm going to attempt to capture house in Blender BIM and target repair / upgrade projects
41 |
42 |
43 | Agenda for 2023.11.22
44 | - SID - Sort Status (Sell Invest Dispose)
45 | - AliceTrees Estate [Inventory](https://docs.google.com/spreadsheets/d/1DKb3lPvvxENL9s3Xo8LNtRDORzgJTz41veKOQpennk4/edit#gid=1106379675)
46 | - Grasshorse [Inventory](https://docs.google.com/spreadsheets/d/1KjOBpD3Bz_bT0rMGfP9HB43t5N-6cx5WmbyCsVMJcF0/edit#gid=0)
47 | - Possible WAG (Winfield Actors Guild) worthy waste of time efforts
48 | - Objective is to recapitalize shared assets through crap we'd waste time on in retirement
49 | - Online Art Glass (Carla)
50 | - Online Klop Creations (Dixie)
51 | - Online Furniture Restoration (all / TH Twig)
52 | - Online Digital Restorations
53 | - Online Storage Archives
54 | - Online Legacy Expressions (Ancestory.com type stuff)
55 | - [https://www.shopify.com/pricing](https://www.shopify.com/pricing)
56 | - [https://www.squarespace.com/ecommerce/sell-products](https://www.squarespace.com/ecommerce/sell-products)
57 | - Review WTF (Winfield Trust Fund ;-) Legacy Property Oppertunities
58 | - Mainly I wanted to list out WTF property wise I could probably raise interest to recap and manage
59 | - Trees AES - Mom's house
60 | - Trees AES - Rental house
61 | - Trees AES - Pole barn
62 | - FH Klop Farms - Pole barn
63 | - Joe Klop - Granpa's house
64 | - Joe Klop - Ruth's house
65 | - Joe Klop - Turkey Shed
66 | - Joe Klop - Machine Shed
67 | - Steve Klop - Steve's house
68 | - L Klop - Lavon's house
69 | - L Klop - probably a lot more buildings
70 | - JFT - Grasshorse building
71 | - JFT - Farm House
72 | - JFT - Farm Garage/Shop
73 | - JFT - Farm Barn
74 | - JFT - Farm Hog 1
75 | - JFT - Farm Hog 2
76 | - JFT - Farm Small 1
77 | - JFT - Farm Small 2
78 | - JFT - Farm tiny ?
79 | - JFT - South 80 Rental
80 | - ?? Turkey Run ??
81 |
82 | Agenda for 2023.11.15
83 | - [Storage shed steel for $850](https://www.shelterlogic.com/arrow-classic-steel-shed-10x8-charcoal?gad_source=1&gclid=CjwKCAiAu9yqBhBmEiwAHTx5p_1QcaeOrpmW1izmhrlJc4XiESMPAXwPz8mIW1n0KZ0Az3aaTCs-ARoCldMQAvD_BwE)
84 | - [Rollup Doors for $500](https://www.rollupdoorsdirect.com/rollupdoor650.php)
85 | - Schedule next cleanup
86 | - What to do with Houses (rental service co)
87 | - tbd
88 |
89 | Agenda for 2023.11.09
90 | - Inventory
91 | - ALL - Sort Process (Keep, Sell, Trash with owner, storage and maintainance cost)
92 | - Chris/?Kathy - Setup Sell, Keep Database for Photo's and document
93 | - Chris/Carla - Setup Recycle / Trash
94 | - Chris/? - Setup online selling
95 | - Storage
96 | - Locations
97 | - ![KarenDraw]()
98 | - Houses
99 | - Look into rehab / rent
100 | - Farms
101 | - Custom vs Rent
102 | - Grain Sales and Hedging
103 | - Operation Agreements
104 | - USDA
105 | - Tax and Estate stuff
106 | - Alice Trees Estate close 2023 ?
107 | - Farm payments
108 | - Get info to Sara for Estate close
109 |
110 | Agenda for 2023.11.05
111 | - Inventory
112 | - AliceTrees Estate [Inventory](https://docs.google.com/spreadsheets/d/1DKb3lPvvxENL9s3Xo8LNtRDORzgJTz41veKOQpennk4/edit#gid=1106379675)
113 | - Grasshorse [Inventory](https://docs.google.com/spreadsheets/d/1KjOBpD3Bz_bT0rMGfP9HB43t5N-6cx5WmbyCsVMJcF0/edit#gid=0)
114 | - Document and code for processing: Storage, Sell or Dispose
115 | - Setup maintaince meetings ??
116 | - Setup online selling ??
117 |
118 | - Storage (physical and digital)
119 | - Document all storage locations
120 | - Size Storage requirements and eliminate external storage location
121 | - Review and project maintaince cost on storage locations
122 |
123 | - Houses
124 | - Rent / Sell / Remove
125 | - Maintainance (TH Twig)
126 | - Attach structures to farm land maintaince
127 | - Review depreciation for short-term rental / renovation loans
128 |
129 | - Farms
130 | - Rent / Custom
131 | - Maintainence
132 | - Operational Loans
133 | - Storage and Marketing
134 | - Commodity trading
135 |
136 | - LLC and Tax Structure [blog.christrees.com/tax](https://blog.christrees.com/tax/)
137 |
138 | ---
139 | ---
140 |
141 | # 2023 Aug shutdown
142 | - grasshorse data arch verification
143 | - media backup verification
144 | - computer hardware inventory spreadsheet
145 | - bring down network and sort network hardware
146 |
147 | # 2023 July cold storage project [coldstorage](./docs/coldstorage)
148 | - grasshorse data backup index
149 | - grasshorse network shutdown
150 | - cat crap corner
151 | - personal backup data
152 | - inplace inventory
153 | - Brayden stuff (ask brad, get portalTV)
154 | - Brad media backup
155 |
156 | # 2023 Project Proposal review required
157 | - [http://thetheatremuseum.com/they-had-a-dream](http://thetheatremuseum.com/they-had-a-dream)
158 | - Create LLC name tbd - Target is educational opensource based production (mainly blender and blender add-ons)
159 | - Donate personal digital capital assets for video production
160 | - Offer purchase any Grasshorse capital assets (up to Steve)
161 | - The main purpose is to create a supportable IT technology stack (see CroftUP) educational verticals
162 | - Project 1 - Blender and Robot Digital twin (see Blender Animation inititive) - sponsor Steve for SEC target
163 | - Project 2 - Clinic Support Staff training for TeleHealth - sponsor Brad with UNI target (talk to Carol)
164 | - Project 3 - Blender robot AI simulation tools - sponsor Chris with co.bot target
165 | - Project 4 - Local Media distribution network
166 | - Udemy Stop Motion Animation Course
167 | - Stop Motion Animation Blender python addon
168 | - Stop Motion Animation Robot Blender python addon
169 | - Udemy Animation Robot Course
170 | - Udemy Course for current Grasshorse production
171 | - Udemy Course for IT support of Video production
172 |
173 | ## Quick Links
174 | - [gh Documents](./docs) based on [netstack.org](https://netstack.org/docs/) topology
175 | - [ghlearn](http://ghlearn.2cld.net/) video tutorial guide for a network geek
176 |
177 |
178 | - [Grasshorse Google Meetup Room - Click HERE](https://meet.google.com/efv-bzzx-pqa)
179 |
--------------------------------------------------------------------------------
/docs/teststack/ubuntu-19.10-Template.md:
--------------------------------------------------------------------------------
1 | # ubuntu-19.10 Template in 2cld grid
2 |
3 | ## Creation
4 |
5 | - Create on [pm01 VM 300](https://192.168.9.121:8006/#v1:0:=qemu%2F300:4::::::=cluster)
6 | - Used ubuntu-19.10-live-server-amd64.iso [pm01 -> local -> Content](https://192.168.9.121:8006/#v1:0:=storage%2Fpm01%2Flocal:4::19::::=cluster)
7 | - SSH server
8 |
9 | ## Updates pre-template
10 |
11 | ```bash
12 | radmin@ratestweb:~$ sudo apt update
13 | radmin@ratestweb:~$ sudo apt install unzip
14 | radmin@ratestweb:~$ sudo apt install apt-transport-https ca-certificates curl software-properties-common
15 | radmin@ratestweb:~$ curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
16 | radmin@ratestweb:~$ sudo add-apt-repository "deb [arch=amd64] https://download.docker.com/linux/ubuntu bionic stable"
17 | radmin@ratestweb:~$ sudo apt update
18 | radmin@ratestweb:~$ apt-cache policy docker-ce
19 | radmin@ratestweb:~$ sudo apt install docker-ce
20 | radmin@ratestweb:~$ sudo docker
21 | radmin@ratestweb:~$ sudo systemctl status docker
22 | radmin@ratestweb:~$ sudo usermod -aG docker ${USER}
23 | radmin@ratestweb:~$ su - ${USER}
24 | radmin@ratestweb:~$ docker
25 | radmin@ratestweb:~$ ip addr
26 | radmin@ratestweb:~$ curl -s https://install.zerotier.com | sudo bash
27 | radmin@ratestweb:~$ sudo zerotier-cli join af78bf94368a72f4
28 | ```
29 |
30 | ## Network pre-template
31 |
32 | ```bash
33 | radmin@ratestweb:~$ ip addr
34 | 1: lo: mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
35 | link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
36 | inet 127.0.0.1/8 scope host lo
37 | valid_lft forever preferred_lft forever
38 | inet6 ::1/128 scope host
39 | valid_lft forever preferred_lft forever
40 | 2: ens18: mtu 1500 qdisc fq_codel state UP group default qlen 1000
41 | link/ether xx:xx:xx:xx:xx:x8 brd ff:ff:ff:ff:ff:ff
42 | inet 192.168.9.19/24 brd 192.168.9.255 scope global dynamic ens18
43 | valid_lft 84527sec preferred_lft 84527sec
44 | inet6 xx/64 scope link
45 | valid_lft forever preferred_lft forever
46 | 3: zthnhdlzwc: mtu 2800 qdisc fq_codel state UNKNOWN group default qlen 1000
47 | link/ether xx:xx:xx:xx:xx:xe brd ff:ff:ff:ff:ff:ff
48 | inet 10.147.19.89/24 brd 10.147.19.255 scope global zthnhdlzwc
49 | valid_lft forever preferred_lft forever
50 | inet6 xxx/64 scope link
51 | valid_lft forever preferred_lft forever
52 | 4: docker0: mtu 1500 qdisc noqueue state DOWN group default
53 | link/ether xx:xx:xx:xx:xx:xa brd ff:ff:ff:ff:ff:ff
54 | inet 172.17.0.1/16 brd 172.17.255.255 scope global docker0
55 | valid_lft forever preferred_lft forever
56 | radmin@ratestweb:~$
57 | ```
58 |
59 | ## Cloud-Init config [See docs/proxmox](https://github.com/2cld/gh/new/master/docs/proxmox)
60 |
61 | ### Prep VM
62 |
63 | 1. Install cloud-init package
64 | ```bash
65 | radmin@ratestweb:~$ sudo apt install cloud-init
66 | [sudo] password for radmin:
67 | Reading package lists... Done
68 | Building dependency tree
69 | Reading state information... Done
70 | cloud-init is already the newest version (19.2-36-g059d049c-0ubuntu3).
71 | 0 upgraded, 0 newly installed, 0 to remove and 20 not upgraded.
72 | radmin@ratestweb:~$
73 | ```
74 | 2. Remove extra cloud config stuff
75 | - Edit cloud.cfg [See Video](https://youtu.be/8qwnXd1yRK4?list=PLT98CRl2KxKGDJbitpQQPOKE__pXlWH7U&t=118)
76 | m ```bash
77 | radmin@ratestweb:~$ sudo vi /etc/cloud/cloud.cfg
78 | ```
79 | - Go to: cloud_config_modules
80 | - Remove "snap stuff" 2 lines
81 | - Remove "ubuntu-advantage"
82 | - Remove "disable-ec2-metadata"
83 | - Remove "byobu"
84 | - Go to: cloud_final_modules
85 | - Remove snappy
86 | - Remove fan, lxd, puppet, chef, mcollective, salt-minion, rightscale_userdata
87 | 3. Fix MAC Clone Issue
88 | - REMOVE machine ID from VM
89 | ```bash
90 | radmin@ratestweb:~$ sudo rm /etc/machine-id
91 | radmin@ratestweb:~$ sudo touch /etc/machine-id
92 | radmin@ratestweb:~$ cat /etc/machine-id
93 | radmin@ratestweb:~$
94 | ```
95 | - soft link machine-id seemed to be fixed in 19.10 (softlink was there)
96 | ```bash
97 | radmin@ratestweb:~$ cat /etc/machine-id
98 | radmin@ratestweb:~$ cat /var/lib/dbus/machine-id
99 | radmin@ratestweb:~$ ls -l /var/lib/dbus/machine-id
100 | lrwxrwxrwx 1 root root 15 Dec 9 03:45 /var/lib/dbus/machine-id -> /etc/machine-id
101 | radmin@ratestweb:~$ sudo apt clean
102 | radmin@ratestweb:~$ sudo poweroff
103 | Connection to 10.147.19.89 closed by remote host.
104 | Connection to 10.147.19.89 closed.
105 | ```
106 | 4. Create Cloud Init Drive (Remove CD as it causes issues durning migration)
107 | - pm01 -> Hardware -> Add -> CloudInit Drive
108 | - Storage: local-lvm
109 | - pm01 -> Hardware -> Click "CD/DVD Drive" -> Click "Remove"
110 | - pm01 -> Cloud-Init -> Edit
111 | - User: radmin
112 | - Password: see#note
113 | 5. Create Clone of Template
114 | - Target Node: pm01
115 | - VM ID: 601
116 | - Name: raweb01
117 | - Mode: Full Clone
118 | - Repeat... should get machines
119 | 6. Fix zerotier - Remove /var/lib/zerotier-one/identity.public and /var/lib/zerotier-one/identity.secret and regen
120 | - ra01web 10.147.19.90
121 | - ra02auth 10.147.19.91
122 | - ra03api 10.147.19.115
123 | - ra04db 10.147.19.189
124 | - Following Edits
125 | ```bash
126 | radmin@ratestweb:~$ sudo vi /etc/hostname
127 | radmin@ratestweb:~$ sudo vi /etc/hosts
128 | radmin@ratestweb:~$ sudo rm /var/lib/zerotier-one/identity.*
129 | radmin@ratestweb:~$ sudo zerotier-cli join af78bf94368a72f4
130 | radmin@ratestweb:~$ sudo reboot
131 | ```
132 | - After REBOOT Add new machine to zerotier auth
133 |
134 |
189 |
--------------------------------------------------------------------------------
/docs/blender/tutorial/learn-bg-anvil.md:
--------------------------------------------------------------------------------
1 | # Create an Anvil with [Blender Guru](https://www.youtube.com/watch?v=7tdUxzhEy_E&list=PLjEaoINr3zgHJVJF3T3CFUAZ6z11jKg6a)
2 |
3 | ## Blender Intermediate Modelling Tutorial - [Part 1](https://www.youtube.com/embed/yi87Dap_WOc?list=PLjEaoINr3zgHJVJF3T3CFUAZ6z11jKg6a)
4 | VIDEO
5 |
6 | 1. [Setup workspace tc2:02](https://youtu.be/yi87Dap_WOc?list=PLjEaoINr3zgHJVJF3T3CFUAZ6z11jKg6a&t=122)
7 | - Get Anvil Reference [bg refernce.zip](https://drive.google.com/file/d/0B8PFSrI9B3iwcWt0ZWZOcFZveHM/view)
8 | - Load Anvil Image as reference
9 | - Delete everything in scene
10 | - Save as catanvil001.blend using "Save Copy"
11 | 2. [Start with plane tc4:11](https://youtu.be/yi87Dap_WOc?list=PLjEaoINr3zgHJVJF3T3CFUAZ6z11jKg6a&t=251)
12 | - I started with the default cube as when I used the plane I did not get the normals correct
13 | - Shift-A Mesh Plane (Cube)
14 | - Select cube object mode
15 | - g z 1 return - Grab z move 1 unit up
16 | - Alt-z (toggle on xray)
17 | - Tab E (Toggle to Edit mode)
18 | - Select top plane
19 | - e z 2 (extrude up 2 units)
20 | 3. [Tappered Loop Cuts tc6:06](https://youtu.be/yi87Dap_WOc?list=PLjEaoINr3zgHJVJF3T3CFUAZ6z11jKg6a&t=366)
21 | - Shift-A Mesh Plane
22 | - Tab E (Toggle to Edit mode, Extrude) to make trunk
23 | - Cntrl R (Loop Cuts) then scroll wheel to create 12 loop cuts
24 | 4. [Prortional Edit the loop cuts tc6:38](https://youtu.be/yi87Dap_WOc?list=PLjEaoINr3zgHJVJF3T3CFUAZ6z11jKg6a&t=398)
25 | - Select 3rd from top loop cut
26 | - O toogle proportional editing
27 | - S scale Shift-Z to NOT scale loops in Z
28 | - Enter to keep
29 | - Save as catanvil014.blend using "Save Copy"
30 | 5. [Extrude top tc9:52](https://youtu.be/yi87Dap_WOc?list=PLjEaoINr3zgHJVJF3T3CFUAZ6z11jKg6a&t=592)
31 | - Select top plane
32 | - E Shift-Z -1 Extrude Z-axis -1 unit
33 | - Select left plane
34 | - E Shift-X -1 Extrude X-axis -1 unit
35 | - Cntrl R 1 Loop cut one
36 | - Select bottom left plane
37 | - G Z -.2 Move up .2 units in Z-axis only
38 | 6. [Extrude left and right sides tc10:11](https://youtu.be/yi87Dap_WOc?list=PLjEaoINr3zgHJVJF3T3CFUAZ6z11jKg6a&t=611)
39 | - Select right plane
40 | - E X 2 Extrude X-axis 2 units
41 | - Cntrl R 5 Loop cut one
42 | - Select top Loop cuts and Hide H
43 | - Set Propotional edit to sphere
44 | - Select bottom left edge to curl up
45 | - Alt H to unhide hidden verts
46 | 7. [Cleanup and save tc12:36](https://youtu.be/yi87Dap_WOc?list=PLjEaoINr3zgHJVJF3T3CFUAZ6z11jKg6a&t=756)
47 | - Save as catanvil017.blend using "Save Copy"
48 | - Save fixed normals as catanvil017-2.blend using "Save Copy"
49 |
50 | ## Blender Intermediate Modelling Tutorial - [Part 2](https://youtu.be/WxMwa0njGSM?list=PLjEaoINr3zgHJVJF3T3CFUAZ6z11jKg6a)
51 | VIDEO
52 |
53 | 1. [Boolean Cut object tc3:45](https://youtu.be/WxMwa0njGSM?list=PLjEaoINr3zgHJVJF3T3CFUAZ6z11jKg6a&t=225)
54 | - 7 top view
55 | - Shift-A m y enter Add Mesh cYlinder
56 | - g y -1.5 enter Grab selected y-axis Move -1.5 units
57 | 2. [Boolean Cut Select tc3:53](https://youtu.be/WxMwa0njGSM?list=PLjEaoINr3zgHJVJF3T3CFUAZ6z11jKg6a&t=233)
58 | - Select object you want to keep first
59 | - Add Modifier (wrench icon) Boolean Operation Difference
60 | - Click on eyedroper then click on cylinder to select
61 | 3. [Mirror operation tc](https://youtu.be/WxMwa0njGSM?list=PLjEaoINr3zgHJVJF3T3CFUAZ6z11jKg6a&t=380)
62 | - Add Modifier Mirror
63 | - Need to loop cut and delete object y axis
64 | - 7 (top view) Tab (Edit mode) Select verts in pos y
65 | - Ctrl R (add loop cut at half) rght click enter
66 | - x (delete vertices) enter
67 | 4. [Save to another page before merge apply tc](https://youtu.be/WxMwa0njGSM?list=PLjEaoINr3zgHJVJF3T3CFUAZ6z11jKg6a&t=482)
68 | - Shift D (Duplicate)
69 | - M (Move)
70 | - Apply Boolean
71 | - Delete Cylinder
72 | 5. [Clean up mesh tc](https://youtu.be/WxMwa0njGSM?list=PLjEaoINr3zgHJVJF3T3CFUAZ6z11jKg6a&t=571)
73 | - Add Subsurface Modifier (just to see the mess)
74 | - k x click enter (Knife tool c to constrain click to edge)
75 | - select edge g g slide to good
76 | - a (select all) mesh -> cleanup -> merge by distance
77 | - merge any 3 point verts into 1
78 | - select verts alt-m to merge at center
79 | - ctrl R to loop cut from the vert
80 | - delete the face with 5 verts
81 | - add two faces with 4 verts
82 | 6. [ tc]()
83 | - Save fixed normals as catanvil026.blend using "Save Copy"
84 |
85 |
86 | ## Blender Intermediate Modelling Tutorial - [Part 3]()
87 |
88 | 1. [ tc]()
89 | - test
90 | - test
91 | - test
92 | - test
93 | 2. [ tc]()
94 | - test
95 | - test
96 | - test
97 | - test
98 | 3. [ tc]()
99 | - test
100 | - test
101 | - test
102 | - test
103 | 4. [ tc]()
104 | - test
105 | - test
106 | - test
107 | - test
108 | 5. [ tc]()
109 | - test
110 | - test
111 | - test
112 | - test
113 | 6. [ tc]()
114 | 7. [ tc]()
115 |
116 | ## Blender Intermediate Modelling Tutorial - [Part 4]()
117 |
118 | 1. [ tc]()
119 | - test
120 | - test
121 | - test
122 | - test
123 | 2. [ tc]()
124 | - test
125 | - test
126 | - test
127 | - test
128 | 3. [ tc]()
129 | - test
130 | - test
131 | - test
132 | - test
133 | 4. [ tc]()
134 | - test
135 | - test
136 | - test
137 | - test
138 | 5. [ tc]()
139 | - test
140 | - test
141 | - test
142 | - test
143 | 6. [ tc]()
144 | 7. [ tc]()
145 |
146 | ## Blender Intermediate Modelling Tutorial - [Part 5 - UV Unwrapping]()
147 |
148 | 1. [ tc]()
149 | - test
150 | - test
151 | - test
152 | - test
153 | 2. [ tc]()
154 | - test
155 | - test
156 | - test
157 | - test
158 | 3. [ tc]()
159 | - test
160 | - test
161 | - test
162 | - test
163 | 4. [ tc]()
164 | - test
165 | - test
166 | - test
167 | - test
168 | 5. [ tc]()
169 | - test
170 | - test
171 | - test
172 | - test
173 | 6. [ tc]()
174 | 7. [ tc]()
175 |
176 | ## Blender Intermediate Modelling Tutorial - [Part 6 Scuipt Details]()
177 |
178 | 1. [ tc]()
179 | - test
180 | - test
181 | - test
182 | - test
183 | 2. [ tc]()
184 | - test
185 | - test
186 | - test
187 | - test
188 | 3. [ tc]()
189 | - test
190 | - test
191 | - test
192 | - test
193 | 4. [ tc]()
194 | - test
195 | - test
196 | - test
197 | - test
198 | 5. [ tc]()
199 | - test
200 | - test
201 | - test
202 | - test
203 | 6. [ tc]()
204 | 7. [ tc]()
205 |
206 | ## Blender Intermediate Modelling Tutorial - [Part 7 Normals]()
207 |
208 | 1. [ tc]()
209 | - test
210 | - test
211 | - test
212 | - test
213 | 2. [ tc]()
214 | - test
215 | - test
216 | - test
217 | - test
218 | 3. [ tc]()
219 | - test
220 | - test
221 | - test
222 | - test
223 | 4. [ tc]()
224 | - test
225 | - test
226 | - test
227 | - test
228 | 5. [ tc]()
229 | - test
230 | - test
231 | - test
232 | - test
233 | 6. [ tc]()
234 | 7. [ tc]()
235 |
236 | ## Blender Intermediate Modelling Tutorial - [Texturing Part 1]()
237 |
238 | 1. [ tc]()
239 | - test
240 | - test
241 | - test
242 | - test
243 | 2. [ tc]()
244 | - test
245 | - test
246 | - test
247 | - test
248 | 3. [ tc]()
249 | - test
250 | - test
251 | - test
252 | - test
253 | 4. [ tc]()
254 | - test
255 | - test
256 | - test
257 | - test
258 | 5. [ tc]()
259 | - test
260 | - test
261 | - test
262 | - test
263 | 6. [ tc]()
264 | 7. [ tc]()
265 |
266 | ## Blender Intermediate Modelling Tutorial - [Texturing Part 2]()
267 |
268 | 1. [ tc]()
269 | - test
270 | - test
271 | - test
272 | - test
273 | 2. [ tc]()
274 | - test
275 | - test
276 | - test
277 | - test
278 | 3. [ tc]()
279 | - test
280 | - test
281 | - test
282 | - test
283 | 4. [ tc]()
284 | - test
285 | - test
286 | - test
287 | - test
288 | 5. [ tc]()
289 | - test
290 | - test
291 | - test
292 | - test
293 | 6. [ tc]()
294 | 7. [ tc]()
295 |
296 | ## Blender Intermediate Modelling Tutorial - [Texturing Part 3]()
297 |
298 | 1. [ tc]()
299 | - test
300 | - test
301 | - test
302 | - test
303 | 2. [ tc]()
304 | - test
305 | - test
306 | - test
307 | - test
308 | 3. [ tc]()
309 | - test
310 | - test
311 | - test
312 | - test
313 | 4. [ tc]()
314 | - test
315 | - test
316 | - test
317 | - test
318 | 5. [ tc]()
319 | - test
320 | - test
321 | - test
322 | - test
323 | 6. [ tc]()
324 | 7. [ tc]()
325 |
--------------------------------------------------------------------------------
/docs/blender/README.md:
--------------------------------------------------------------------------------
1 | # Blender
2 | Blender infrastructure and workflow support documentation. [Edit this](https://github.com/2cld/gh/edit/master/docs/blender/README.md)
3 |
4 | ## Quick Links
5 | - [Blender Cheatsheet 0v1.pdf](./Blender%20Cheatsheet%20v1.pdf)
6 |
7 | ## CAToDo
8 | - [blender/architecture](./architecture/) Setup for achitecture drawing in blender
9 | - [blender/architecture/catArchModelNotes](./architecture/catArchModelNotes) Chris notes as he learns blender architecture cad
10 | - [blender/tutorial/learn-bg-anvil](./tutorial/learn-bg-anvil) Chris notes as he builds an anvil for an nft project
11 | - [blender/](./blender-create-shelf) Chris creates shelf for data center airflow issue
12 | - [tbd]()
13 | - [tbd]()
14 | - [tbd]()
15 |
16 |
17 | ## Reminder - Infrastructure
18 | Blender test machine is on the ghadmin - horseoff [network](https://my.zerotier.com/network/d5e5fb65371eb4a4) using windows 10 machines on bare metal (see ebay for the parts you got 2020.06.07)
19 |
20 | ### catghwin10
21 | - Device name: catghwin10
22 | - CPU: 2 x Intel Xeon E5472 3GHz
23 | - RAM: 32GB
24 | - OS: Windows 10 Pro - 1903 (build 18362.900) - Installed 6/11/2020
25 |
26 | ## References
27 | - Learning Architecture Drawing with Blender [https://www.blender3darchitect.com/course/blender-basics-architecture/](https://www.blender3darchitect.com/course/blender-basics-architecture/)
28 | - Arch Blender [Dimensions](https://www.blender3darchitect.com/modeling-for-architecture/architectural-modeling-how-to-display-lengths-in-blender-2-8/)
29 | - Blender [100 Blender 2.8 tips with index](https://www.youtube.com/watch?v=_9dEqM3H31g)
30 | - Blender [Create Shelf](https://www.youtube.com/watch?v=OOBKo-O6i_8&feature=youtu.be&t=27)
31 | - Blender [aur blender shelf](https://www.youtube.com/watch?v=ElGc34VtoA4)
32 | - Blender [Learning Blender 2023 tutorial reviews](https://www.youtube.com/watch?v=8K4AShjq-MU)
33 | - Blender [I wish I knew before starting to learn blender](https://www.youtube.com/watch?v=m6U09BKETHY)
34 | - Blender [tips youtube](https://www.youtube.com/watch?v=4YDf_ctubbI)
35 | - [BlenderBIM](./bim/)
36 | - BlenderBIM [IFC Architect](https://www.youtube.com/@IfcArchitect/videos)
37 | - BlenderBIM [IFC Architect - Begin](https://www.youtube.com/watch?v=kF2k_VW-yrQ)
38 | - BlenderBIM [https://blenderbim.org](https://blenderbim.org/index.html)
39 | - BlenderBIM [https://ifcopenshell.org/](https://ifcopenshell.org/)
40 | - BlenderBIM [Add on - youtube](https://www.youtube.com/watch?v=kYs6w5LlfNM)
41 | - BlenderBIM [update - youtube](https://www.youtube.com/watch?v=oljVAjW9QVw)
42 |
43 | ## Precision Transformations
44 | 1. Object Transform
45 | - Location
46 | - Rotation
47 | - Scale
48 | - G X 4 - Will translate the object 4 units in the x direction
49 | - Alt-G will clear translate
50 | - R X 45 - Will rotate the object 45 degrees in the x direction
51 | - Alt-R will clear rotate
52 | - S Z 2 - will double the size in the z direction
53 | 2. Setting up units
54 | - Blender unit is 1 meter
55 | - Scene tab -> Units -> Dropdown to select the blender units
56 | 3. Basic Object
57 | - Select Edit Mode
58 | - Select edge
59 | - Move edge
60 | - Select face
61 | - Use tab to toggle between object and edit modes
62 | - Extrude
63 | - Select face by right clicking on dot in edit mode
64 | - E then move or type num value to extrude
65 | - Click left mouse to finish
66 | - Loop cut
67 | - Cntl-R put mouse over edge move along edge click left button
68 | 4. Create new object
69 | - Add -> Mesh (or Shift-A) -> Select your Mesh object
70 | - Objects are created at the 3D cursor
71 | - Shift-C will put the cursor back at origin of 3D view
72 | 5. Basic Wall
73 | - Shift-A -> Plane
74 | - Scale to wall thickness
75 | - Ctrl-A -> Scale (to apply scale to object which sets base unit)
76 | - Edit mode, select edge, extrude x 5 return
77 | - Edit mode, select edge, extrude y -4 return
78 | - Edit mode, select 3 faces, hold shift and right click on all
79 | - E 3
80 |
81 | ### Blender 2.8 Fundamentals [List of 48 Blender Foundation Videos](https://www.youtube.com/playlist?list=PLa1F2ddGya_-UvuAqHAksYnB0qL9yWDO6)
82 | 1. First Steps [Blender 2.80 Fundamentals 1](https://www.youtube.com/watch?v=MF1qEhBSfq4&list=PLa1F2ddGya_-UvuAqHAksYnB0qL9yWDO6&index=2&t=0s)
83 | 2. Viewport Navigation [Blender 2.80 Fundamentals 2](https://www.youtube.com/watch?v=ILqOWe3zAbk&list=PLa1F2ddGya_-UvuAqHAksYnB0qL9yWDO6&index=2)
84 | - 3D-Viewport Select [Video](https://youtu.be/ILqOWe3zAbk?list=PLa1F2ddGya_-UvuAqHAksYnB0qL9yWDO6&t=10)
85 | - Left Click to select, Left click blank space to deselect
86 | - A to select ALL, Alt-A to deselect all
87 | - Change button functions in Edit -> Preferences -> Keymap
88 | - Pan and Zoom [Video](https://youtu.be/ILqOWe3zAbk?list=PLa1F2ddGya_-UvuAqHAksYnB0qL9yWDO6)
89 | - Upper Right of view Click on X, Y, Z to get orthographic
90 | - Click and Drag X, Y, Z to rotate OR Middle Mouse Click and Drag
91 | - Click Hand Icon and Drag to where you want the scene to rotate around
92 | - View -> Frame Selected (Numpad .) zooms frame to selected object
93 | - Click Camera icon to view what the camera sees (Numpad 0)
94 | - Grid switches betwee Orthographic and Prospective modes
95 | 3. Interface Overview [Blender 2.80 Fundamentals 3](https://www.youtube.com/watch?v=8XyIYRW_2xk&list=PLa1F2ddGya_-UvuAqHAksYnB0qL9yWDO6&index=3)
96 | - Bottom of screen shows what the mouse buttons will do
97 | - You can scale panels by click and drag edges
98 | - Right click edge to create more or delete pannels
99 | - Cntl-Space will maximize a panel, Cntl-Space again will return max panel to original
100 | - Press T to bring up Tools menu, Press T again to hide Tools menu
101 | - Tools are Select box, Move, Rotate and Scale
102 | - Shift space will also bring up menu
103 | - Press N or left-click to open additional quick settings
104 | - Shift right-click to set position of 3D cursor
105 | - Shift S to bring up world pie menu
106 | - Bottom panel is Timeline mainly for animation
107 | - Right panel is Properies menu
108 | - Properties also contains object properies tab for each object in Scene
109 | - Create new scenes and switch senes in top menu dropdown
110 | - Tabs in Properties [Video](https://youtu.be/8XyIYRW_2xk?list=PLa1F2ddGya_-UvuAqHAksYnB0qL9yWDO6&t=303)
111 | - File - Render properties
112 | - Printer - Output properties
113 | - Image - View layer properties (separte layers for viewing and rendering)
114 | - General Scene - Active camera, units, ridge body settings
115 | - Globe tab - Sky and Air of scene
116 | - Tabs specific for Object selected [Video](https://youtu.be/8XyIYRW_2xk?list=PLa1F2ddGya_-UvuAqHAksYnB0qL9yWDO6&t=456)
117 | - Object - basic info about Location, rotation, scale of object, visiblity, parent-child relationships
118 | - Wrench - Modifiers icon for manipulation of pbject using predefines
119 | - Particles -
120 | - Physics (Hydrogen) - Enable various physics properties and modify
121 | - Constrains - Like modifiers tab, but deals with relationships between modifiers
122 | - Mesh (green triangle) - object mesh data
123 | - Materials (sphere) - Apply materials to objects
124 | - Tab for Texture
125 | - Tab for Lamp (if light source is selected) - Modify light source
126 | - Tab for Camera (if camera is selected) - Modify camera properties
127 | - Scene collection (above properties)
128 | 4. Select and Transform [Blender 2.80 Fundamentals 4](https://www.youtube.com/watch?v=hTL6AKR8YDs&list=PLa1F2ddGya_-UvuAqHAksYnB0qL9yWDO6&index=4)
129 | - Left-Click object to select, Left-Click empty space to de-select
130 | - Select Box Tool in Tools (type T) Ctrl-Click to de-select
131 | - Circle Select (type C) acts as paint brush to select objects
132 | - Hold Shift and select objects to multiple select and de-select
133 | - Put in Wireframe mode (upper right) so you can select easier
134 | - Select menu also has all the above selection tools
135 | - Transform Tools [Video](https://youtu.be/hTL6AKR8YDs?list=PLa1F2ddGya_-UvuAqHAksYnB0qL9yWDO6&t=173)
136 | - Tools -> Move (Arrow out)
137 | - Click Color Arrow to move on that axis
138 | - Click Color Plain to move on that plane
139 | - Hot key X, Y, Z contrains to that axis
140 | - Alt-G reset transformation
141 | - Tools -> Rotate (Arrows around)
142 | - Click color line to rotate about that axis
143 | - Outer white (spin around view axis)
144 | - Sphere white (3d sping around object origin) press R, then X, Y, Z to contrain and R again to go free
145 | - Tools -> Scale (Arrow out)
146 | - tbd
147 | 5. XXX [Blender 2.80 Fundamentals 5]()
148 | 6. XXX [Blender 2.80 Fundamentals 6]()
149 | 7. XXX [Blender 2.80 Fundamentals 7]()
150 | 8. XXX [Blender 2.80 Fundamentals 8]()
151 | 9. XXX [Blender 2.80 Fundamentals 9]()
152 | 10. XXX [Blender 2.80 Fundamentals 10]()
153 | 11. XXX [Blender 2.80 Fundamentals 11]()
154 | 12. XXX [Blender 2.80 Fundamentals 12]()
155 | 13. XXX [Blender 2.80 Fundamentals 13]()
156 | 14. XXX [Blender 2.80 Fundamentals 14]()
157 | 15. XXX [Blender 2.80 Fundamentals 15]()
158 | 16. XXX [Blender 2.80 Fundamentals 16]()
159 | 17. XXX [Blender 2.80 Fundamentals 17]()
160 | 18. XXX [Blender 2.80 Fundamentals 18]()
161 | 19. XXX [Blender 2.80 Fundamentals 19]()
162 | 20. XXX [Blender 2.80 Fundamentals 20]()
163 | 21. XXX [Blender 2.80 Fundamentals 21]()
164 | 22. XXX [Blender 2.80 Fundamentals 22]()
165 | 23. XXX [Blender 2.80 Fundamentals 23]()
166 | 24. XXX [Blender 2.80 Fundamentals 24]()
167 | 25. XXX [Blender 2.80 Fundamentals 25]()
168 | 26. XXX [Blender 2.80 Fundamentals 26]()
169 | 27. XXX [Blender 2.80 Fundamentals 27]()
170 | 28. XXX [Blender 2.80 Fundamentals 28]()
171 | 29. XXX [Blender 2.80 Fundamentals 29]()
172 | 30. XXX [Blender 2.80 Fundamentals 30]()
173 | 31. XXX [Blender 2.80 Fundamentals 31]()
174 | 32. XXX [Blender 2.80 Fundamentals 32]()
175 | 33. XXX [Blender 2.80 Fundamentals 33]()
176 | 34. XXX [Blender 2.80 Fundamentals 34]()
177 | 35. XXX [Blender 2.80 Fundamentals 35]()
178 | 36. XXX [Blender 2.80 Fundamentals 36]()
179 | 37. XXX [Blender 2.80 Fundamentals 37]()
180 | 38. XXX [Blender 2.80 Fundamentals 38]()
181 | 39. XXX [Blender 2.80 Fundamentals 39]()
182 | 40. XXX [Blender 2.80 Fundamentals 40]()
183 | 41. XXX [Blender 2.80 Fundamentals 41]()
184 | 42. XXX [Blender 2.80 Fundamentals 42]()
185 | 43. XXX [Blender 2.80 Fundamentals 43]()
186 | 44. XXX [Blender 2.80 Fundamentals 44]()
187 | 45. XXX [Blender 2.80 Fundamentals 45]()
188 | 46. XXX [Blender 2.80 Fundamentals 46]()
189 | 47. XXX [Blender 2.80 Fundamentals 47]()
190 | 48. XXX [Blender 2.80 Fundamentals 48]()
191 | 49. XXX [Blender 2.80 Fundamentals 49]()
192 | - xxx Some Subject [Video]()
193 | - xxx [Video]()
194 | - xxx [Video]()
195 | - xxx [Video]()
196 | - xxx [Video]()
197 | - xxx [Video]()
198 |
199 | ### Install Blender
200 | 1. tbd... link to other
201 |
--------------------------------------------------------------------------------
/docs/gridtemplate/gridtemplate-overview.drawio:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 |
28 |
29 |
30 |
31 |
32 |
33 |
34 |
35 |
36 |
37 |
38 |
39 |
40 |
41 |
42 |
43 |
44 |
45 |
46 |
47 |
48 |
49 |
50 |
51 |
52 |
53 |
54 |
55 |
56 |
57 |
58 |
59 |
60 |
61 |
62 |
63 |
64 |
65 |
66 |
67 |
68 |
69 |
70 |
71 |
72 |
73 |
74 |
75 |
76 |
77 |
78 |
79 |
80 |
81 |
82 |
83 |
84 |
85 |
86 |
87 |
88 |
89 |
90 |
91 |
92 |
93 |
94 |
95 |
96 |
97 |
98 |
99 |
100 |
101 |
102 |
103 |
104 |
105 |
106 |
107 |
108 |
109 |
110 |
111 |
112 |
113 |
114 |
115 |
116 |
117 |
118 |
119 |
120 |
121 |
122 |
123 |
124 |
125 |
126 |
127 |
128 |
129 |
130 |
131 |
132 |
133 |
134 |
135 |
136 |
137 |
138 |
139 |
140 |
141 |
142 |
143 |
144 |
145 |
146 |
147 |
148 |
149 |
150 |
151 |
152 |
153 |
154 |
155 |
156 |
157 |
158 |
--------------------------------------------------------------------------------
/ghbin/nodeRenderService.sh:
--------------------------------------------------------------------------------
1 | #!/bin/bash
2 |
3 | # BLARGH!
4 | # Version 0.6.04
5 | # 05-20-2019 - makeinto service
6 |
7 | # nodeRenderService.sh is Chris Trees attempt to make Blargh into a service
8 | # NOTES:
9 | # 1 - Service should only read from gh/XXXX_XXX_XXXXA_3danim
10 | # 2 - Service should only write good PNG to gh/XXXX_XXX_XXXXA_rend
11 | # 3 - Service should scan for and load project jobs
12 | # 4 - Service should validate blender output and stay with a project job
13 | # 5 - Sevvice should output status updates
14 |
15 |
16 | # s3://XXXX_XXX_XXXXA_rend - The nodes knows which buckets to look in (rend)
17 | # s3://XXXX_XXX_XXXXA_3danim - The nodes know where the zips are, because they are in the (3danim)
18 |
19 | # XXXX_XXX_XXXXA_3danim_v001.cfg -> .png
20 | # The image to render is the number of the cfg.
21 | # The name of the image is the name of the cfg.
22 |
23 | # The bucket the image goes in is the bucket the cfg is in.
24 | # 1,3,5,7 etc. - Tbe step of a render doesnt render because its not there.
25 |
26 | # METADATA IN CFG
27 | # The blend file name should be in metadata inthe cfg.
28 | # The zip file is the same name as the blend in the metadata in the cfg.
29 | # The computer can only accept renders of it's type in the cfg.
30 | # Time stamp of file creation
31 | # Time stamp of render start (Part of Lock)
32 | # Computer appends metadata with nodeURL in cfg (Part of Lock)
33 |
34 | # PROJECT TEMPLATE
35 | # This file is stored in the ghprojects bucket.
36 | # Example Name 0183_001.tpl
37 | # projectName='0183_001'
38 | # seriesNumber='0183'
39 | # showNumber='001'
40 | # animName='_3danim'
41 | # rendName='_rend'
42 | # instanceType='c3.4xlarge'
43 |
44 | # LEGACY PROJECT CFG
45 | # This file is stored in the ghprojects bucket.
46 | # This is a hold-over from a prior version of BLAM! This information should be integrated into the project and shot templates.
47 | # Example Name 0183_001_0004A.cfg
48 | # baseName='0183_001_0004A'
49 | # seriesName='0183'
50 | # showName='001'
51 | # shotName='0004A'
52 | # cfgName=$baseName'.cfg'
53 | # animBucket=$baseName'_3danim'
54 | # rendBucket=$baseName'_rend'
55 | # instanceType='c3.2xlarge'
56 | # start=675
57 | # end=838
58 |
59 | # SHOT TEMPLATE
60 | # This file is currently stored in the animBucket for the shot. It may actually be more needed in the ghprojects directory.
61 | # Example Name 0183_001_0004.tpl
62 | # shotName='_0004A'
63 | # start='675'
64 | # end='838'
65 | # step='1'
66 |
67 | # The following file is created from the above information as well as some version specific questions passed to the user.
68 |
69 | # JOB CFG FORMAT
70 | # projectTplName='0183_001.tpl'
71 | # shotTplName='0183_001_0004A.tpl'
72 | # baseName='0183_001_0004A'
73 | # animBucket='0183_001_0004A_3danim'
74 | # rendBucket='0183_001_0004A_rend'
75 | # zip='0183_001_0004A_3danim_v122.zip'
76 | # blend='0183_001_0004A_3danim_v122.blend'
77 | # fileName='0183_001_0004A_3danim_v122'
78 | # frameName='0183_001_0004A_3danim_v122.0838'
79 | # start='838'
80 | # end='838'
81 | # step='1'
82 |
83 | # The following is information that is addended to the cfg file at the time of job bidding, rendering and completion.
84 | # blamURL='rn01'
85 | # created='Wed Dec 14 12:50:54 CST 2016'
86 | # renderStart='Fri Dec 2 21:46:58 CST 2016'
87 | # renderFinished='Fri Dec 2 21:46:58 CST 2016'
88 |
89 |
90 | function ghDebug () {
91 | if [ "$debug" == 1 ]; then
92 | echo ">>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>"
93 | echo ">>>ghadminDEBUG: $1 "
94 | echo ">>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>"
95 | fi
96 | }
97 |
98 | # Pass in $1 frame, $2 status
99 | function ghRemoteStatusLog () {
100 | ## BEGIN: Append log status of node
101 | local iamNode=$(hostname)
102 | local iamNodeLogStatusFilePath=$nodeServiceCentralLogDir"nodeStatus_$iamNode.list"
103 | cat <> $iamNodeLogStatusFilePath
104 | {"node": "$(hostname)", "dateTime": "$(date)", "frame": "$1", "status": "$2"}
105 | EOF
106 | ## END: Append log status of node
107 | }
108 |
109 | # Pass in projectJobConfig
110 | function deployProject () {
111 | cd $nodeHome
112 | source $1
113 | echo " ___CODE: function deployProject sourced $1" >> $nodeServiceLogFileName
114 | echo "zipBucket is $zipBucket" >> $nodeServiceLogFileName
115 | echo "zipName is $zip" >> $nodeServiceLogFileName
116 | echo "fileName is $fileName" >> $nodeServiceLogFileName
117 |
118 | if [ ! -e $fileName.projectready ]
119 | then
120 | # No or wrong project so cleanup and load a new one
121 | rm -rf __ 0* *.tpl *.blend *.zip *.projectready rend
122 | # s3cmd get --force s3://$animBucket/* ~/ && unzip ~/$zipName
123 | cp $zipBucket$zip . && unzip $zip
124 | echo "Unzip complete" >> $nodeServiceLogFileName
125 |
126 | echo "About to check to see if the rend folder exists";
127 | # If the rend folder exists outside the directory structure, copy it into the directory structure.
128 | # if [ -e rend ]
129 | if [ -d "rend" ]
130 | then
131 | echo "The rend folder exists. Moving it in the working path.";
132 | cp -r rend __/__/
133 | touch $fileName.copiedRend
134 | fi
135 |
136 | echo "About to check to see if the 000 folder exists";
137 | # If the 000 folder exists outside the direcotory structure, copy it into the directory structure.
138 | if [ -d "000" ]
139 | then
140 | touch $fileName.copiedSharedFolder
141 | echo "The 000 folder exists. Moving it into the working path";
142 | cp -r 000 __/__/__/__/__/
143 | fi
144 |
145 | touch $fileName.projectready
146 |
147 | if [ -e $fileName.projectready ]
148 | then
149 | echo "currentJobProject="$fileName >> $fileName.projectready
150 | echo "# Project: "$fileName >> $fileName.projectready
151 | echo "# Date: $(date)" >> $fileName.projectready
152 | echo "Loaded Project "$fileName" on $(date)" >> $nodeServiceLogFileName
153 | ghRemoteStatusLog $frameName "ProjectLoaded"
154 | else
155 | echo "Project Deploy Error." >> $nodeServiceLogFileName
156 | ghRemoteStatusLog $frameName "ERROR-ProjectLoad"
157 | exit
158 | fi
159 | else
160 | echo "Project was Ready: $fileName.projectready" >> $nodeServiceLogFileName
161 | fi
162 | }
163 |
164 | function cleanUpHome {
165 | echo " ___CODE: function cleanUpHome" >> $nodeServiceLogFileName
166 | ghDebug "Cleaning up the home directory."
167 | cd $nodeHome
168 | rm -rf *.cfg *.png *.tpl *.old *.lock
169 | # rm -rf ~/*.cfg ~/*.png ~/*.2s3 ~/*.tpl ~/*.old ~/*.go
170 | # s3cmd get s3://ghprojects/*.cfg .
171 | # cp -p /media/projects/gh/ghprojects/*.cfg .
172 | }
173 |
174 | function beginRender () {
175 | source $1
176 | echo " ___CODE: function beginRender sourced $1" >> $nodeServiceLogFileName
177 | echo "fileName is $fileName" >> $nodeServiceLogFileName
178 | echo "frameName is $frameName" >> $nodeServiceLogFileName
179 | echo "blend is $blend" >> $nodeServiceLogFileName
180 |
181 | nodeType=2
182 |
183 | ghRemoteStatusLog $frameName "renderBegin"
184 |
185 | if [ "$nodeType" == "1" ] && [ -e $nodeHome$blend ] && [ ! -e $nodeHome"badBlender.txt" ]; then
186 | echo "blender server mode started: $(date)" >> $nodeServiceLogFileName
187 | blender -b $blend -y -F PNG -o $fileName.#### -s $start -e $end -j $step -t 0 -a > $nodeServiceBlenderLogFileName
188 | #echo "BlenderCommand: blender -b $blend -F PNG -o $fileName.#### -s $start -e $end -j $step -t 0 -a"
189 | #echo "BlenderSimFile" >> $frameName.png
190 | echo "blender server ended: $(date)" >> $nodeServiceLogFileName
191 | elif [ "$nodeType" == "2" ] && [ -e $nodeHome$blend ] && [ ! -e $nodeHome"badBlender.txt" ]; then
192 | echo "blender desktop mode started: $(date)" >> $nodeServiceLogFileName
193 | blender -b $nodeHome$blend -y -F PNG -o $nodeHome$fileName.#### -t 0 -f $start > $nodeServiceBlenderLogFileName
194 | #echo "BlenderCommand: blender -b $blend -F PNG -o $fileName.#### -t 0 -f $start"
195 | echo "blender desktop ended: $(date)" >> $nodeServiceLogFileName
196 | else
197 | echo "Command given falls outside of expectations" >> $nodeServiceLogFileName
198 | echo "nodeRenderService Exit on $(date)" >> $nodeServiceLogFileName
199 | ghRemoteStatusLog $frameName "ERROR-RenderBeginParm-EXIT"
200 | exit
201 | fi
202 |
203 | # file=file.txt
204 | minimumsize=1
205 | actualsize=$(wc -c <"$frameName.png")
206 | if [ $actualsize -ge $minimumsize ]; then
207 | echo "size is over $minimumsize bytes" >> $nodeServiceLogFileName
208 | chmod 666 $frameName.png
209 | cp -p $frameName.png $rendBucket$frameName.png
210 | ghRemoteStatusLog $frameName "renderFinished"
211 | else
212 | echo "Blender did not produce a good image" > badBlender.txt
213 | echo "Blender did not produce a good image nodeRenderService exit on $(date)" >> $nodeServiceLogFileName
214 | #something bad happened exit blargh.
215 | ghRemoteStatusLog $frameName "ERROR-FrameRenderBadBlender-exit"
216 | exit
217 | fi
218 | echo "About to exit renderJob"
219 | #echo "About ready to clean up the home directory" >> $nodeServiceLogFileName
220 | #cleanUpHome
221 | }
222 |
223 |
224 | # pass the base name as a parameter
225 | function checkProjectJob () {
226 | source $1
227 | frameLockFile=$rendBucket$frameName.lock
228 | echo "CheckingFrameLock: $frameLockFile" >> $nodeServiceLogFileName
229 | if [ -e $frameLockFile ]
230 | then
231 | echo "Moving to next, lock found on "$frameLockFile >> $nodeServiceLogFileName
232 | else
233 | echo "found file to render" >> $nodeServiceLogFileName
234 | echo "Create Bid Lock for: "$frameLockFile >> $nodeServiceLogFileName
235 | (umask 002; touch $frameLockFile)
236 | local bidLock="blamURL=$(hostname)"
237 | local bidCreated="bidCreated='$(date)'"
238 | echo $bidLock >> $frameLockFile
239 | sleep 1
240 | local readLock=`cat $frameLockFile`
241 | echo "diff $readLock $bidLock" >> $nodeServiceLogFileName
242 | local diffCheckResults=$( cmp -s $readLock $bidLock )
243 | local diffReturnChars=${#diffCheckResults}
244 | ghDebug $diffCheckResults
245 | ghDebug $diffReturnChars
246 | if [ "$diffReturnChars" == 0 ]
247 | then
248 | echo "Files Match BID WIN begin work on $frameName" >> $nodeServiceLogFileName
249 | local bidWon="bidWon='$(date)'"
250 | echo $bidCreated >> $frameLockFile
251 | echo $bidWon >> $frameLockFile
252 | rm $nodeHome'*.cfg'
253 | cp $rendBucket$frameName.cfg $nodeHome
254 | deployProject $nodeHome$frameName.cfg
255 | beginRender $nodeHome$frameName.cfg
256 | else
257 | echo "Files different BID FAIL moving on to next frame" >> $nodeServiceLogFileName
258 | fi
259 | fi
260 | }
261 |
262 |
263 | function getProject () {
264 | # Read jobPriority.list file into array to scan projects for work
265 | listOfJobs=`cat $nodeFileOfJobPrior`
266 | echo " ___CODE: function getProject" >> $nodeServiceLogFileName
267 | echo "fileOfJobPrior: "$nodeFileOfJobPrior >> $nodeServiceLogFileName
268 | for line in $listOfJobs; do
269 | echo "$line"
270 | case $line in
271 | allstop)
272 | echo "jobPriority.list is at allstop exit service on: $(date)" >> $nodeServiceLogFileName
273 | ghRemoteStatusLog "jobPriority.list-allstop" "ServiceStopping"
274 | echo "$(date) ALLSTOP: $(hostname)" >> $nodeServiceCentralLogDir'gridNodes.list'
275 | exit
276 | ;;
277 | rescan)
278 | echo "jobPriority.list is rescanning at: $(date)" >> $nodeServiceLogFileName
279 | # ghRemoteStatusLog "jobPriority.list-rescan" "ServiceJobListScan"
280 | break
281 | ;;
282 | *)
283 | currentScanPath=($nodeAssetsPath$line)
284 | echo "setting current job project to: "$currentScanPath >> $nodeServiceLogFileName
285 | echo "Loading currentScanPath job project on $(date)" >> $nodeServiceLogFileName
286 | echo "currentScanPathConfigFilePath is: "$currentScanPath >> $nodeServiceLogFileName
287 | if [ -f ${currentScanPath[0]} ]
288 | then
289 | echo "Scanning Project"
290 | for currentJobToCheck in $( ls -A $nodeAssetsPath$line ); do
291 | echo " ___CODE: CALL function checkProjectJob $currentJobToCheck" >> $nodeServiceLogFileName
292 | # ghRemoteStatusLog $rendBucket "ScanRendBucket"
293 | checkProjectJob $currentJobToCheck
294 | done
295 | else
296 | echo "ERROR: Unknown jobPriority.List command or project on: $(date)" >> $nodeServiceLogFileName
297 | echo "ERROR: no match - "$line >> $nodeServiceLogFileName
298 | # ghRemoteStatusLog $line "ERROR-UnknownCommand_$line"
299 | fi
300 | ;;
301 | esac
302 | done
303 | }
304 |
305 | #####
306 | ##### Main
307 | #####
308 |
309 | # Program has been created with the assumption it is running from the home directory. Making it so.
310 | cd '/home/ghadmin/'
311 | scanProjectsLoop=0
312 | scanClearLogs=3
313 | nodeHome='/home/ghadmin/'
314 | nodeAssetsPath='/media/farm/'
315 | nodeServiceCentralLogDir=$nodeAssetsPath'ghlogs/'
316 | ghRemoteStatusLog "noFrame" "ServiceBegin"
317 | echo "$(date) STARTED: $(hostname)" >> $nodeServiceCentralLogDir'gridNodes.list'
318 | while true
319 | do
320 | let "scanProjectsLoop++"
321 | let "scanClearLogs++"
322 | # Load config or set defaults
323 | if [ -f ".nodeRenderServiceConfig" ]
324 | then
325 | echo "Loading .nodeRenderServiceConfig"
326 | source .nodeRenderServiceConfig
327 | else
328 | debug=0
329 | nodeType=1
330 | nodeHome='/home/ghadmin/'
331 | nodeAssetsPath='/media/farm/'
332 | nodeProjectsConfigDir=$nodeAssetsPath'ghprojects/'
333 | nodeFileOfJobPrior=$nodeProjectsConfigDir'jobPriority.list'
334 | nodeScanLoopSleepTime=10
335 | nodeServiceLogFileName=$nodeHome'nodeService.log'
336 | nodeServiceBlenderLogFileName=$nodeHome'nodeServiceBlender.log'
337 | nodeServiceCentralLogDir=$nodeAssetsPath'ghlogs/'
338 | nodeLogResetLoopCount=3
339 | fi
340 | # Log maintainance
341 | if [ $scanClearLogs -gt $nodeLogResetLoopCount ]
342 | then
343 | cd
344 | rm *.log
345 | scanClearLogs=0
346 | touch $nodeServiceLogFileName
347 | ghDebug "Writting $nodeServiceLogFileName"
348 | # Create current Status File
349 | echo " Current Node Settings: $(date)" >> $nodeServiceLogFileName
350 | echo " Current Loop Count: "$scanProjectsLoop >> $nodeServiceLogFileName
351 | echo " nodeRenderServiceConfigValues" >> $nodeServiceLogFileName
352 | echo " =============================" >> $nodeServiceLogFileName
353 | echo " nodeType is used for blender command mod where 1 - server 2 - desktop" >> $nodeServiceLogFileName
354 | echo " current nodeType: "$nodeType >> $nodeServiceLogFileName
355 | echo " -----------------------------" >> $nodeServiceLogFileName
356 | echo " nodePath is used by node to access project configs and job assets" >> $nodeServiceLogFileName
357 | echo " current nodePath: "$nodeAssetsPath >> $nodeServiceLogFileName
358 | echo " -----------------------------" >> $nodeServiceLogFileName
359 | echo " nodeProjectConfigDir is used by node to access project" >> $nodeServiceLogFileName
360 | echo " current nodeProjectConfigDir: "$nodeProjectsConfigDir >> $nodeServiceLogFileName
361 | echo " -----------------------------" >> $nodeServiceLogFileName
362 | fi
363 | echo "Current Loop Count: "$scanProjectsLoop
364 | ghDebug "GETTING PROJECT"
365 | getProject
366 | echo "LoopSleep for "$nodeScanLoopSleepTime
367 | # ghRemoteStatusLog "noFrame" "ScanSleep$nodeScanLoopSleepTime"
368 | sleep $nodeScanLoopSleepTime
369 | cleanUpHome
370 | done
371 |
372 | ghRemoteStatusLog "noFrame" "ServiceStopping"
373 | ghDebug "Node Render service Stopping..."
374 |
--------------------------------------------------------------------------------
/docs/proxmox/README.md:
--------------------------------------------------------------------------------
1 | # ProxMox Setup for VM
2 |
3 | - [ProxMox = H2DC - How to do Computers](https://www.youtube.com/playlist?list=PLk3oVaFzBUufFbrE4Y0gnQcjzfmEmT93o0)
4 | - [Configuring Storage in ProxMox](https://www.youtube.com/watch?v=HqOGeqT-SCA)
5 | - [Proxmox - Techno Tim](https://www.youtube.com/playlist?list=PL8cwSAAaP9W37Vnxkw6__sshVY-XohWNm)
6 | - [Proxmox Tutorials - apalrd's adventures](https://www.youtube.com/playlist?list=PLZcFwaChdgSpJLyxoXd2mf_JsokmwlLKi)
7 | - [Turning Proxmox Into a Pretty Good NAS](https://youtu.be/Hu3t8pcq8O0)
8 | - [Proxmox Full Course - Learn Linux TV](https://www.youtube.com/playlist?list=PLT98CRl2KxKHnlbYhtABg6cF50bYa8Ulo)
9 |
10 | ## Mantainance
11 |
12 | 1. Add Hardrives [Configuring Storage in ProxMox](https://www.youtube.com/watch?v=HqOGeqT-SCA) using [https://cf.christrees.com/ns/](https://cf.christrees.com/ns/)
13 | - [https://192.168.6.103:8006/](https://192.168.6.103:8006/) Proxmox server
14 | - [Proxmox - ZFS on Linux](https://pve.proxmox.com/wiki/ZFS_on_Linux#sysadmin_zfs_raid_considerations)
15 | - See all storage
16 | ```bash
17 | root@cf:~# lsblk
18 | ```
19 | - [smartctl -a /dev/sda youtube](https://youtu.be/GoZaMgEgrHw?t=354)
20 | ```bash
21 | root@cf:~# smartctl -a /dev/sdb
22 | ```
23 | - [fdisk /dev/sdb youtube](https://youtu.be/GoZaMgEgrHw?t=245)
24 | ```bash
25 | root@cf:~# fdisk /dev/sdb
26 | ```
27 | ```bash
28 | p - partition list
29 | d - delete partitions
30 | g - gpt
31 | w - write out
32 | ```
33 | - [Disk wipe Error disk/partition '/dev/sdb' has a holder (500)](https://forum.proxmox.com/threads/pve7-wipe-disk-doesnt-work-in-gui.92198/)
34 | ```bash
35 | root@cf:~# dd if=/dev/zero of=/dev/sdb
36 | ```
37 | - [Configure ZFS storage - clear disks](https://youtu.be/GoZaMgEgrHw?t=191)
38 | - [Configure ZFS storage - Create ZFS](https://youtu.be/GoZaMgEgrHw?t=285) Drive-ZFS-CreateZFS
39 | - Name: zfs2tb - RAID: Single Disk - Compression: on - ashift 12 - device: /dev/sdb
40 | - Name: zfs3tc - RAID: Single Disk - Compression: on - ashift 12 - device: /dev/sdc
41 | - Name: zfs3td - RAID: Single Disk - Compression: on - ashift 12 - device: /dev/sdd
42 | - [tbd]()
43 | 2. Add NAS container [Turning Proxmox Into a Pretty Good NAS - youtube](https://youtu.be/Hu3t8pcq8O0) [blog post](https://www.apalrd.net/posts/2023/ultimate_nas/)
44 | - [Create container for NAS using template](https://youtu.be/Hu3t8pcq8O0?t=111) debian-11-standard
45 | - Node: cg Name: catnas CTID: 102 storsge: local-lvm 8G CPU: 2 Mem: 512 Net: 192.168.2.2/24 gw 192.168.2.1 vmbr0
46 | - [Update sources list](https://youtu.be/Hu3t8pcq8O0?t=386)
47 | ```bash
48 | vi /etc/apt/sources.list
49 | ```
50 | ```bash
51 | deb http://deb.debian.org/debian bullseye-backports main contrib
52 | ```
53 | ```bash
54 | apt update && apt full-upgrade
55 | ```
56 | - [Install Cockpit](https://youtu.be/Hu3t8pcq8O0?t=460)
57 | ```bash
58 | apt install -t bullseye-backports cockpit --no-install-recommends
59 | ```
60 | - [Allow root login](https://youtu.be/Hu3t8pcq8O0?t=531) delete root in /etc/cockpit/disallowed-users
61 | ```bash
62 | vi /etc/cockpit/disallowed-users
63 | ```
64 | - Login to cockpit ui [https://192.168.2.2:9090](https://192.168.2.2:9090) from the 192.168.2.0/24 subnet only
65 | - [Add cockpit modules](https://youtu.be/Hu3t8pcq8O0?t=581)
66 | - [https://github.com/45Drives/cockpit-file-sharing](https://github.com/45Drives/cockpit-file-sharing)
67 | ```bash
68 | wget https://github.com/45Drives/cockpit-file-sharing/releases/download/v3.2.9/cockpit-file-sharing_3.2.9-2focal_all.deb
69 | ```
70 | ```bash
71 | apt install ./cockpit-file-sharing_3.2.9-2focal_all.deb
72 | ```
73 | - [https://github.com/45Drives/cockpit-navigator](https://github.com/45Drives/cockpit-navigator)
74 | ```bash
75 | wget https://github.com/45Drives/cockpit-navigator/releases/download/v0.5.10/cockpit-navigator_0.5.10-1focal_all.deb
76 | ```
77 | ```bash
78 | apt install ./cockpit-navigator_0.5.10-1focal_all.deb
79 | ```
80 | - [https://github.com/45Drives/cockpit-identities](https://github.com/45Drives/cockpit-identities)
81 | ```bash
82 | wget https://github.com/45Drives/cockpit-identities/releases/download/v0.1.10/cockpit-identities_0.1.10-1focal_all.deb
83 | ```
84 | ```bash
85 | apt install ./cockpit-identities_0.1.10-1focal_all.deb
86 | ```
87 | - remove deb packages in root
88 | ```bash
89 | cd ~
90 | pwd
91 | ls
92 | ```
93 | ```bash
94 | rm *.deb
95 | ```
96 | - Verify models added to cockpit ui on left tab [https://192.168.2.2:9090](https://192.168.2.2:9090) from the 192.168.2.0/24 subnet only
97 | - [Click on File Sharing - click on Fix Now warning](https://youtu.be/Hu3t8pcq8O0?t=692)
98 | - [Add Storage to catnas container](https://youtu.be/Hu3t8pcq8O0?t=710)
99 | - cg->102->resources->add->mountpoint
100 | - mountpointID: 0 Storage: zfs2tb Disksize: 1000 Path: /mnt/zfs2tbplexdvr
101 | - [Add Users to catnas container](https://youtu.be/Hu3t8pcq8O0?t=795)
102 |
103 | 3. Add Storage from [catfreenas.gh.lan http://192.168.252.2/](http://192.168.252.2/)
104 | - Datacenter -> Storage -> Add -> NFS
105 | - [tbd]()
106 | - [tbd]()
107 | - [tbd]()
108 |
109 | ## Setup
110 | - [ProxMox Windows 10 VM best practices](https://pve.proxmox.com/wiki/Windows_10_guest_best_practices)
111 | - [ProxMox Windows 10 VM idiots guide](https://jonspraggins.com/the-idiot-installs-windows-10-on-proxmox/)
112 | - [Windows 10 iso - Download link](https://www.microsoft.com/en-us/software-download/windows10ISO)
113 | - [ProxMox Windows 10 virtio link](https://docs.fedoraproject.org/en-US/quick-docs/creating-windows-virtual-machines-using-virtio-drivers/index.html)
114 | - [ProxMox Windows 10 virtio-win iso](https://fedorapeople.org/groups/virt/virtio-win/direct-downloads/stable-virtio/virtio-win.iso)
115 | - [ProxMox Windows 10 - NFS mount](https://graspingtech.com/mount-nfs-share-windows-10/)
116 |
117 | 1. Setup [ProxMox LearningLinuxTV 1/9](https://www.youtube.com/watch?v=MO4CaHn1EjM&list=PLT98CRl2KxKGDJbitpQQPOKE__pXlWH7U)
118 | - Start Install (via USB Stick)
119 | - Select HardDrive [See Video](https://youtu.be/MO4CaHn1EjM?list=PLT98CRl2KxKGDJbitpQQPOKE__pXlWH7U&t=131)
120 | - Admin Password [See Video](https://youtu.be/MO4CaHn1EjM?list=PLT98CRl2KxKGDJbitpQQPOKE__pXlWH7U&t=201)
121 | - Network Config [See Video](https://youtu.be/MO4CaHn1EjM?list=PLT98CRl2KxKGDJbitpQQPOKE__pXlWH7U&t=265)
122 | - Checkout [WebGUI - https://192.168.9.121:8006](https://192.168.9.121:8006) [See Video](https://youtu.be/MO4CaHn1EjM?list=PLT98CRl2KxKGDJbitpQQPOKE__pXlWH7U&t=371)
123 | - Update ProxMox and Reboot [See Video](https://youtu.be/MO4CaHn1EjM?list=PLT98CRl2KxKGDJbitpQQPOKE__pXlWH7U&t=453)
124 | 2. Create First VM [ProxMox LearningLinuxTV 2/9](https://www.youtube.com/watch?v=BiIFLFhXByE&list=PLT98CRl2KxKGDJbitpQQPOKE__pXlWH7U&index=2)
125 | - Download ISO [https://help.ubuntu.com/community/Installation/MinimalCD](https://help.ubuntu.com/community/Installation/MinimalCD) [See Video](https://youtu.be/BiIFLFhXByE?list=PLT98CRl2KxKGDJbitpQQPOKE__pXlWH7U&t=51)
126 | - 19.10 [Download Rochester Institute of Technology](http://mirrors.rit.edu/ubuntu-releases/19.10/)
127 | - 19.10 [Download TeraSwithc](http://mirror.pit.teraswitch.com/ubuntu-releases/19.10/)
128 | - Upload 19.10 ISO [See Video](https://youtu.be/BiIFLFhXByE?list=PLT98CRl2KxKGDJbitpQQPOKE__pXlWH7U&t=116)
129 | - pm01 -> local -> Content -> Upload
130 | - Create VM [See Video](https://youtu.be/BiIFLFhXByE?list=PLT98CRl2KxKGDJbitpQQPOKE__pXlWH7U&t=163)
131 | - General [See Video](https://youtu.be/BiIFLFhXByE?list=PLT98CRl2KxKGDJbitpQQPOKE__pXlWH7U&t=180)
132 | - Node: pm01
133 | - VM ID: 300
134 | - Name: ubuntu-19.10
135 | - OS [See Video](https://youtu.be/BiIFLFhXByE?list=PLT98CRl2KxKGDJbitpQQPOKE__pXlWH7U&t=230)
136 | - Use CD: ISO image: ubuntu-19.10-live-server-amd64.iso
137 | - System no video this is new
138 | - Graphics: Default
139 | - SCSI Controller: VirtIO SCSI
140 | - Hard Disk [See Video](https://youtu.be/BiIFLFhXByE?list=PLT98CRl2KxKGDJbitpQQPOKE__pXlWH7U&t=310)
141 | - Bus/Device: VirtIO Block
142 | - Storage: local-lvm
143 | - Disk size: 64 GiB
144 | - Cache: Default (No cache)
145 | - CPU [See Video](https://youtu.be/BiIFLFhXByE?list=PLT98CRl2KxKGDJbitpQQPOKE__pXlWH7U&t=317)
146 | - Cores: 4
147 | - Memory [See Video](https://youtu.be/BiIFLFhXByE?list=PLT98CRl2KxKGDJbitpQQPOKE__pXlWH7U&t=361)
148 | - Memory: 4096
149 | - Network [See Video](https://youtu.be/BiIFLFhXByE?list=PLT98CRl2KxKGDJbitpQQPOKE__pXlWH7U&t=373)
150 | - Bridge: vmbr0
151 | - VLAN Tag: no VLAND
152 | - Model: VirtIO (paravirtualized)
153 | - MAC: auto
154 | - Boot Ubuntu Installer [See Video](https://youtu.be/BiIFLFhXByE?list=PLT98CRl2KxKGDJbitpQQPOKE__pXlWH7U&t=481)
155 | - English
156 | - Your Name: radmin
157 | - Server Name: ratestweb - see#note
158 | - DHCP
159 | - Remove CD [See Video](https://youtu.be/BiIFLFhXByE?list=PLT98CRl2KxKGDJbitpQQPOKE__pXlWH7U&t=633)
160 | - test SSH access [See Video](https://youtu.be/BiIFLFhXByE?list=PLT98CRl2KxKGDJbitpQQPOKE__pXlWH7U&t=685)
161 | 3. User Interface [ProxMox LearningLinuxTV 3/9](https://www.youtube.com/watch?v=GHzMaTar0fw&list=PLT98CRl2KxKGDJbitpQQPOKE__pXlWH7U&index=3)
162 | - Navigation Menu [See Video](https://youtu.be/GHzMaTar0fw?list=PLT98CRl2KxKGDJbitpQQPOKE__pXlWH7U&t=42)
163 | - Summary View [See Video](https://youtu.be/GHzMaTar0fw?list=PLT98CRl2KxKGDJbitpQQPOKE__pXlWH7U&t=213)
164 | - Subscription Plans [See Video](https://youtu.be/GHzMaTar0fw?list=PLT98CRl2KxKGDJbitpQQPOKE__pXlWH7U&t=416)
165 | - Start On Boot Option [See Video](https://youtu.be/GHzMaTar0fw?list=PLT98CRl2KxKGDJbitpQQPOKE__pXlWH7U&t=460)
166 | - Change Hardware [See Video](https://youtu.be/GHzMaTar0fw?list=PLT98CRl2KxKGDJbitpQQPOKE__pXlWH7U&t=538)
167 | - Backup to Local [See Video](https://youtu.be/GHzMaTar0fw?list=PLT98CRl2KxKGDJbitpQQPOKE__pXlWH7U&t=621)
168 | 4. Container Setup [ProxMox LearningLinuxTV 4/9](https://www.youtube.com/watch?v=cyjXxsQ8Igw&list=PLT98CRl2KxKGDJbitpQQPOKE__pXlWH7U&index=4)
169 | - Pull down a Template [See Video](https://youtu.be/cyjXxsQ8Igw?list=PLT98CRl2KxKGDJbitpQQPOKE__pXlWH7U&t=56)
170 | - pm01 -> local -> Click "Template"
171 | - Click "ubuntu-19.10-standard" then Click "Download"
172 | - Create a Container [See Video](https://youtu.be/cyjXxsQ8Igw?list=PLT98CRl2KxKGDJbitpQQPOKE__pXlWH7U&t=95)
173 | - Container vs VM [See Video](https://youtu.be/cyjXxsQ8Igw?list=PLT98CRl2KxKGDJbitpQQPOKE__pXlWH7U&t=540)
174 | - Use Container when you can (Dynamic Share)
175 | - Container smaller footprint
176 | - Nesting Docker in a Container is not good
177 | - Use VM for Docker / K8s Host
178 | 5. Create Template via CloudInit [ProxMox LearningLinuxTV 5/9](https://www.youtube.com/watch?v=8qwnXd1yRK4&list=PLT98CRl2KxKGDJbitpQQPOKE__pXlWH7U&index=5)
179 | - Install Cloud Init in VM [See Video](https://youtu.be/8qwnXd1yRK4?list=PLT98CRl2KxKGDJbitpQQPOKE__pXlWH7U&t=25)
180 | - sudo apt install cloud-init
181 | - Edit cloud.cfg [See Video](https://youtu.be/8qwnXd1yRK4?list=PLT98CRl2KxKGDJbitpQQPOKE__pXlWH7U&t=118)
182 | - sudo vi /etc/cloud/cloud.cfg
183 | - Go to: cloud_config_modules
184 | - Remove "snap stuff" 2 lines
185 | - Remove "ubuntu-advantage"
186 | - Remove "disable-ec2-metadata"
187 | - Remove "byobu"
188 | - Go to: cloud_final_modules
189 | - Remove snappy
190 | - Remove fan, lxd, puppet, chef, mcollective, salt-minion, rightscale_userdata
191 | - Talks about 18.04 MAC Address Issue [See Video](https://youtu.be/8qwnXd1yRK4?list=PLT98CRl2KxKGDJbitpQQPOKE__pXlWH7U&t=302)
192 | - REMOVE machine ID from VM
193 | - cat /etc/machine-id
194 | - sudo rm /etc/machine-id
195 | - sudo touch /etc/machine-id
196 | - soft link machine-id [See Video](https://youtu.be/8qwnXd1yRK4?list=PLT98CRl2KxKGDJbitpQQPOKE__pXlWH7U&t=420)
197 | - cat /var/lib/dbus/machine-id
198 | - sudo rm /var/lib/dbus/machine-id
199 | - sudo ln -s /etc/machine-id /var/lib/dbus/machine-id
200 | - ls -l /var/lib/dbus/mahcine-id
201 | - cat /etc/machine-id (should be an empty file)
202 | - sudo apt clean
203 | - sudo poweroff
204 | - Create Cloud Init Drive [See Video](https://youtu.be/8qwnXd1yRK4?list=PLT98CRl2KxKGDJbitpQQPOKE__pXlWH7U&t=573)
205 | - pm01 -> Hardware -> Add -> CloudInit Drive
206 | - Storage: local-lvm
207 | - pm01 -> Cloud-Init -> Edit
208 | - User: radmin
209 | - Password: see#note
210 | - Create Clone of Template [See Video](https://youtu.be/8qwnXd1yRK4?list=PLT98CRl2KxKGDJbitpQQPOKE__pXlWH7U&t=653)
211 | - Target Node: pm01
212 | - VM ID: 601
213 | - Name: ratestclone01
214 | - Mode: Full Clone
215 | - Repeat... should get machines
216 | 6. Create Cluster [ProxMox LearningLinuxTV 6/9](https://www.youtube.com/watch?v=s9FODQi2-20&list=PLT98CRl2KxKGDJbitpQQPOKE__pXlWH7U&index=6)
217 | - Datacenter [See Video](https://youtu.be/s9FODQi2-20?list=PLT98CRl2KxKGDJbitpQQPOKE__pXlWH7U&t=71)
218 | - Click on "Datacenter"
219 | - Click on "Cluster" under "Summary"
220 | - Click "Create Cluster" -> Name: cat9clusterl
221 | - Click on "Join Information" -> "Copy Information"
222 | - Go to another node (pm02)
223 | - Click on "Datacenter"
224 | - Click on "Cluster" under "Summary"
225 | - Click "Join Cluster"
226 | - Paste in Info -> type in root pw of pm01 -> Click "Join"
227 | - Refresh GUI
228 | - Should have 3 nodes to do HA
229 | - Migrate a Container to other node [See Video](https://youtu.be/s9FODQi2-20?list=PLT98CRl2KxKGDJbitpQQPOKE__pXlWH7U&t=267)
230 | - Stop Container
231 | - Right Click on Container -> Migrate -> Select target node -> Click "Migrate"
232 | - You cannot Live migrate "Container" but you CAN LIVE migrate a VM
233 | - Live Migrate VM to other node [See Video](https://youtu.be/s9FODQi2-20?list=PLT98CRl2KxKGDJbitpQQPOKE__pXlWH7U&t=403)
234 | 7. [ProxMox LearningLinuxTV 7/9](https://www.youtube.com/watch?v=h1czc-ztRTQ&list=PLT98CRl2KxKGDJbitpQQPOKE__pXlWH7U&index=7)
235 | - xxx [See Video]()
236 | - xxx [See Video]()
237 | - xxx [See Video]()
238 | - xxx [See Video]()
239 | - xxx [See Video]()
240 | 8. Upgrade Proxmox to 6.0 [ProxMox LearningLinuxTV 8/9](https://www.youtube.com/watch?v=-izPmkID0dI&list=PLT98CRl2KxKGDJbitpQQPOKE__pXlWH7U&index=8)
241 | - xxx [See Video]()
242 | - xxx [See Video]()
243 | - xxx [See Video]()
244 | - xxx [See Video]()
245 | - xxx [See Video]()
246 | 9. Updates on ProxMox with no VM Downtime [ProxMox LearningLinuxTV 9/9](https://www.youtube.com/watch?v=llsB_dhTjVI&list=PLT98CRl2KxKGDJbitpQQPOKE__pXlWH7U&index=9)
247 | - xxx [See Video]()
248 | - xxx [See Video]()
249 | - xxx [See Video]()
250 | - xxx [See Video]()
251 | - xxx [See Video]()
252 |
253 | ## Extras
254 | 1. Upgrading Proxmox VE to 6.0 [See Video](https://www.youtube.com/watch?v=-izPmkID0dI)
255 | 1. Installing Proxmox Virtual Enviroment Updates in a Cluster [See Video](https://www.youtube.com/watch?v=llsB_dhTjVI)
256 | 1. Create custom Proxmox via CLI [See Video](https://youtu.be/BwQhG7OR5Rg?t=1282)
257 |
--------------------------------------------------------------------------------