ok. there we go.
here my settings i want to use
[PHP]new virtual host: vhost01
ipaddress : 192.168.10.17
streaming port: 1936[/PHP]
Step 1. add new virtual host to /conf/VHosts.xml
[PHP]<?xml version="1.0" encoding="UTF-8"?>
defaultVHost
${com.wowza.wms.ConfigHome}
10
vhost01
${com.wowza.wms.ConfigHome}/vhost01
0
[/PHP]
Step 2.Directory structure to copy the files to: this is what the structure should be.
[PHP][install-dir]
[defaultVHost]
[applications]
[conf]
Application.xml
clientaccesspolicy.xml
crossdomain.xml
MediaCache.xml
StartupStreams.xml
Tune.xml
VHost.xml
admin.password
publish.password
[content]
[keys]
[logs]
[transcoder]
[newVHost] // vhost01
[applications]
[conf]
Application.xml
clientaccesspolicy.xml
crossdomain.xml
MediaCache.xml
StartupStreams.xml
Tune.xml
VHost.xml
admin.password
publish.password (Optional, see Notes below)
[content]
[keys]
[logs]
[transcoder][/PHP]
- so the vhost01 structure should be placed in /usr/local/WowzaStreamingEngine/vhost01 if you look at the directory structure
note: if i look at step 1 the vhost01 should be placed in the config directory (${com.wowza.wms.ConfigHome}/vhost01) <= i will ignore this one
copy the files to /usr/local/WowzaStreamingEngine/vhost01 (just like the directory structure says and ignoring the directory class from the VHosts.xml
[PHP]— code copy and deleting files—
root@wowza40:/usr/local/WowzaStreamingEngine# mkdir vhost01 [enter]
keeping it simple copy directories and files:
root@wowza40:/usr/local/WowzaStreamingEngine# cp -r applications/ conf/ content/ keys/ logs/ transcoder/ /usr/local/WowzaStreamingEngine/vhost01/ [enter]
now remove unnessesary files from config and log directory
root@wowza40:/usr/local/WowzaStreamingEngine# cd conf/ [enter]
root@wowza40:/usr/local/WowzaStreamingEngine/conf# rm jmxremote.access jmxremote.password log4j.properties publish.password PushPublishMap.txt Server.guid Server.license Server.xml
root@wowza40:/usr/local/WowzaStreamingEngine/conf# cd …/logs [enter]
root@wowza40:/usr/local/WowzaStreamingEngine/vhost01/logs# rm -r * [enter][/PHP]
#note: you might want to remove your applications too in your new vhost directory. i was lazy
- The above changes only take place when you restart the wowza server. but first setup your log to follow problems that might occur
[PHP]follow error log before reboot: root@wowza40:/usr/local/WowzaStreamingEngine/logs# tail -f wowzastreamingengine_error.log[/PHP]
now you can restart the server from the browser : go to the streamingmanager (ip:8088). and restart the server
restarting… checking error log
darn:
[PHP]Error##: – - vhost01 Bind failed, try again ([any]:1935): java.net.BindException: Address already in use[/PHP]
thats correct: the new vhost should run on a different port. lets set it to 1936 (page 63 from the user guide)
Refresh your browser: F5
you now can see under Server -> vhost01. click vhost01
then go on the left to Virtual Host Setup
click in the middle on Edit and change the Host Ports
Default Streaming / Streaming / * / 1935 / false
to
Default Streaming / Streaming / 192.168.10.17 (server ip) / 1936 / false
apply -> save -> restart vhost + check your error log again that is still running
error log is changing: from any ip to the new ip i have set:
[PHP]WARN vhost comment 2014-02-17 23:25:38 - - - - - 348.93 - - - - – - vhost01 Bind failed, try again ([any]:1935): java.net.BindException: Address already in use
WARN vhost comment 2014-02-17 23:25:43 - - - - - 353.938 - - - - – - vhost01 Bind failed, try again ([any]:1935): java.net.BindException: Address already in use
WARN vhost comment 2014-02-17 23:25:47 - - - - - 358.416 - - - - – - vhost01 Bind failed, try again (192.168.10.17:5085): java.net.BindException: Address already in use[/PHP]
now also port 5085 is present which is also available in the default vhost.
you know what?
press F5 in your browser and just restart the complete server.
this will activate the port change (1936). only the admin port is still present now
[PHP]#Software: Wowza Streaming Engine 4.0.0.00 build10425
#Date: 2014-02-17
#Fields: x-severity x-category x-event date time c-client-id c-ip c-port cs-bytes sc-bytes x-duration x-sname x-stream-id x-spos sc-stream-bytes cs-stream-bytes x-file-size x-file-length x-ctx x-comment
WARN server comment 2014-02-17 23:28:35 - - - - - 3.155 - - - - – - - REST API: Loading XML: Invalid number format (8087,8088) for /Root/Server/RESTInterface/Port/text()
WARN vhost comment 2014-02-17 23:28:40 - - - - - 7.786 - - - - – - vhost01 Bind failed, try again (192.168.10.17:5085): java.net.BindException: Address already in use
WARN vhost comment 2014-02-17 23:28:45 - - - - - 12.795 - - - - – - vhost01 Bind failed, try again (192.168.10.17:5085): java.net.BindException: Address already in use[/PHP]
now how do i get rid of the 5085 notice?
in your browser go to your vhost01 -> virtual host setup -> edit -> Host Ports and delete the line Default Admin from the Host Ports -> Save and restart the vhost after that. nothing happens.
go to server Setup and just restart the complete server
annnd gone. no more errors
to make sure. follow your access.log :
[PHP]tail -f /usr/local/WowzaStreamingEngine/logs/wowzastreamingengine_access.log[/PHP]
and restart the complete server to check if the vhosts are binded and if everything is starting
check the access.log and just restart it to check if the new vhost get binded
[PHP]2014-02-17 23:36:58 CET comment vhost INFO 200 vhost01 Bind attempt (192.168.10.17:1936:4) - - -8.004 - - - - - - - - - - - - - - - - – - - - - - - -
2014-02-17 23:36:58 CET comment vhost INFO 200 vhost01 Bind successful (192.168.10.17:1936) - - -8.014 - - - - - - - - - - - - - - - - – - - - - - - -
2014-02-17 23:36:58 CET comment server INFO 200 - Server.startShutdownHook: Start server shutdown hook - - - 8.02 - - - - - - - - - - - - – - - - - - - - - - - -
2014-02-17 23:36:58 CET comment server INFO 200 - StatsManager:startManager() Enabled=true - – 8.274 - - - - - - - - - - - - - - - – - - - - - - - -
2014-02-17 23:36:58 CET comment server INFO 200 - Wowza Streaming Engine is started! - - -8.28 - - - - - - - - - - - - - - [/PHP]
when i check the error.log after i have created an live application i get a new error:
[PHP]
WARN server comment 2014-02-17 23:39:29 - - - - - 159.207 - - - - – - - REST API: Server request (GET): Resource not found-404: http://localhost:8087/v1/server/vhosts/vhost01/applications/live_vhost01
[/PHP]
[PHP]WARN server comment 2014-02-17 23:56:14 - - - - - 1163.869 - - - – - - - Application folder ([install-location]/applications/vhost01) is missing
[/PHP]
i can solve this error by changing the file VHosts.xml in /usr/local/WowzaStreamingEngine/conf/VHosts.xml
from:
[PHP]${com.wowza.wms.ConfigHome}/vhost01[/PHP]
to:
[PHP] /usr/local/WowzaStreamingEngine/vhost01
[/PHP]
this error looks to me of an error in the Setup. {comb.wowza.wms.ConfigHome} = /usr/local/WowzaStreamingEngine/conf but should be above the conf directory according to the directory structure.
@Wowza admins can you check this one out?
it is working eventually, but some things aren’t documented correctly
to test a stream to the new vhost i add this address in my flme
[PHP]rtmp://192.168.10.17:1936/live_vhost01[/PHP]
where the ip is my server ip
the port is from the new vhost
and live_vhost01 is just a test application i have setup unde the new vhost.
Note: sometimes the browser isnt updating after a restart. because i wanted to use the testplayer in wowza to test my new live stream and it wanted to connect to rtmp://192.168.10.17:5085. after an F5 it was corrected to 1936