====== Install Octopus Tentacle on Windows Deployment Targets ====== Each node that will be a deployment target needs to have a tentacle agent installed. - First, Install .Net 4.5 framework. - Install tentacle MSI from [[http://octopus.com/downloads/]] - The Tentacle Setup Wizard should launch after the setup is complete. - For "Storage", Accept the defaults, then click "Next". - Choose "Listening Tentacle", and then click "Next". - Accept the default Listen port and add the server thumbprint from the server (Configuration --> Certificates) page. - Click Next, then click "Install" - When the setup wizard completes, Click ''Add deployment target'' back in the server UI for the the appropriate environment. * Click "Listening Tentacle" for Target Type. * Type the hostname of the deployment target. * Click ''Discover'' * On ''Settings'', Give the deployment target a meaningful name such as web01 or app01 as appropiate for the role. * For ''Roles'', type the appropiate role for the target. Examples are: ''web'', ''app'', ''api'', ''db'', and ''service'' - Repeat for remaining deployment targets. I typically use this script to install the Tentacles: $DeployDirectory = "D:\" $Thumbprint = Read-Key "Enter Octopus Server Thumbprint" ########################################################################### # Install Octopus Tentacle $url = "https://octopus.com/downloads/latest/OctopusTentacle64" $downloadPath = "$env:TEMP\octopus\" if (Test-Path $downloadPath) { Remove-Item -Path $downloadPath -Recurse -Force } New-Item -Type Directory -Path $downloadPath | Out-Null [System.Net.ServicePointManager]::SecurityProtocol = [System.Net.SecurityProtocolType]::Tls12 (New-Object System.Net.WebClient).DownloadFile($url, "$downloadPath\Octopus.Tentacle.msi") & "$downloadPath\Octopus.Tentacle.msi" /passive while ((Get-Process | where { $_.ProcessName -eq 'msiexec' } | Measure-Object).Count -ne 1) { Start-Sleep -Seconds 1 } Write-Output "Octopus Tentacle Installed." ########################################################################### # Configure Octopus Tentacle Push-Location "C:\Program Files\Octopus Deploy\Tentacle" & .\Tentacle.exe create-instance --instance "Tentacle" --config "C:\Octopus\Tentacle.config" & .\Tentacle.exe new-certificate --instance "Tentacle" --if-blank & .\Tentacle.exe configure --instance "Tentacle" --reset-trust & .\Tentacle.exe configure --instance "Tentacle" --home "C:\Octopus" ` --app "$DeployDirectory " --port "10933" --noListen "False" & .\Tentacle.exe configure --instance "Tentacle" --trust $Thumbprint netsh.exe advfirewall firewall add rule "name=Octopus Deploy Tentacle" ` dir=in action=allow protocol=TCP localport=10933 & .\Tentacle.exe service --instance "Tentacle" --install --start Pop-Location Write-Output "Octopus Tentacle Configured. You will need to Add this server to Octopus:" $fqdn = (Get-WmiObject win32_computersystem).DNSHostName+"."+(Get-WmiObject win32_computersystem).Domain Write-Output " * $fqdn"