Latest CloudFormation template does not use correct IP

Hi. The latest CloudFormation template for 2.13.0 does not use my Elastic IP. On completion the Stack parameters shows my IP, but the output and the EC2 IP is something different.

This is also happening not with the 2.12.0 template, though that worked correctly before.

Thank you.

  • Adam

Hi @Adam. Thank you for reporting.

Can you show us the values you set in Cloud Formation (with a screen capture, for example) and the content of /opt/openvidu/.env file?

Hi Micael. That file doesnā€™t seem to exist. In that path I seeā€¦

application.properties custom-layout openvidu-server.jar recordings update version

Here are screenshots of the output and parameters. Let me know if you need anything else.

I @Adam, looking to screen capture, it seems you have deployed 2.12 version (instead 2.13). I know it because some of the properties are no longer available in 2.13.

Please reinstall 2.13 version from scratch.

Regards.

Yes they are both currently not working. Both are not using my IP. The above was for 2.12.0. For 2.13.0 I do have a .env file. Here is the contents and screenshots are belowā€¦

# OpenVidu configuration
# ----------------------
# Documentation: https://docs.openvidu.io/en/stable/reference-docs/openvidu-config/

# NOTE: This file doesn't need to quote assignment values, like most shells do.
# All values are stored as-is, even if they contain spaces, so don't quote them.

# Domain name. If you do not have one, the public IP of the machine.
# For example: 198.51.100.1, or openvidu.example.com
OPENVIDU_DOMAIN_OR_PUBLIC_IP=ec2-18-208-247-20.compute-1.amazonaws.com

# OpenVidu SECRET used for apps to connect to OpenVidu server and users to access to OpenVidu Dashboard
OPENVIDU_SECRET=jk4h5j4h4wjkh4wjk5h

# Certificate type:
# - selfsigned:  Self signed certificate. Not recommended for production use.
#                Users will see an ERROR when connected to web page.
# - owncert:     Valid certificate purchased in a Internet services company.
#                Please put the certificates files inside folder ./owncert
#                with names certificate.key and certificate.cert
# - letsencrypt: Generate a new certificate using letsencrypt. Please set the
#                required contact email for Let's Encrypt in LETSENCRYPT_EMAIL
#                variable.
CERTIFICATE_TYPE=selfsigned

# If CERTIFICATE_TYPE=letsencrypt, you need to configure a valid email for notifications
LETSENCRYPT_EMAIL=

# Whether to enable recording module or not
OPENVIDU_RECORDING=false

# Openvidu Folder Record used for save the openvidu recording videos. Change it
# with the folder you want to use from your host.
OPENVIDU_RECORDING_PATH=/opt/openvidu/recordings

# System path where OpenVidu Server should look for custom recording layouts
OPENVIDU_RECORDING_CUSTOM_LAYOUT=/opt/openvidu/custom-layout

# if true any client can connect to
# https://OPENVIDU_SERVER_IP:OPENVIDU_PORT/recordings/any_session_file.mp4
# and access any recorded video file. If false this path will be secured with
# OPENVIDU_SECRET param just as OpenVidu Server dashboard at
# https://OPENVIDU_SERVER_IP:OPENVIDU_PORT
# Values: true | false
OPENVIDU_RECORDING_PUBLIC_ACCESS=false

# Which users should receive the recording events in the client side
# (recordingStarted, recordingStopped). Can be all (every user connected to
# the session), publisher_moderator (users with role 'PUBLISHER' or
# 'MODERATOR'), moderator (only users with role 'MODERATOR') or none
# (no user will receive these events)
OPENVIDU_RECORDING_NOTIFICATION=publisher_moderator

# Timeout in seconds for recordings to automatically stop (and the session involved to be closed)
# when conditions are met: a session recording is started but no user is publishing to it or a session
# is being recorded and last user disconnects. If a user publishes within the timeout in either case,
# the automatic stop of the recording is cancelled
# 0 means no timeout
OPENVIDU_RECORDING_AUTOSTOP_TIMEOUT=120

# Maximum video bandwidth sent from clients to OpenVidu Server, in kbps.
# 0 means unconstrained
OPENVIDU_STREAMS_VIDEO_MAX_RECV_BANDWIDTH=1000

# Minimum video bandwidth sent from clients to OpenVidu Server, in kbps.
# 0 means unconstrained
OPENVIDU_STREAMS_VIDEO_MIN_RECV_BANDWIDTH=300

# Maximum video bandwidth sent from OpenVidu Server to clients, in kbps.
# 0 means unconstrained
OPENVIDU_STREAMS_VIDEO_MAX_SEND_BANDWIDTH=1000

# Minimum video bandwidth sent from OpenVidu Server to clients, in kbps.
# 0 means unconstrained
OPENVIDU_STREAMS_VIDEO_MIN_SEND_BANDWIDTH=300

# true to enable OpenVidu Webhook service. false' otherwise
# Values: true | false
OPENVIDU_WEBHOOK=false

# HTTP endpoint where OpenVidu Server will send Webhook HTTP POST messages
# Must be a valid URL: http(s)://ENDPOINT
#OPENVIDU_WEBHOOK_ENDPOINT=

# List of headers that OpenVidu Webhook service will attach to HTTP POST messages
#OPENVIDU_WEBHOOK_HEADERS=

# List of events that will be sent by OpenVidu Webhook service
# Leave blank if all events.
OPENVIDU_WEBHOOK_EVENTS=[sessionCreated,sessionDestroyed,participantJoined,participantLeft,webrtcConnectionCreated,webrtcConnectionDestroyed,recordingStatusChanged,filterEventDispatched,mediaNodeStatusChanged]

# How often the garbage collector of non active sessions runs.
# This helps cleaning up sessions that have been initialized through
# REST API (and maybe tokens have been created for them) but have had no users connected.
# Default to 900s (15 mins). 0 to disable non active sessions garbage collector
OPENVIDU_SESSIONS_GARBAGE_INTERVAL=900

# Minimum time in seconds that a non active session must have been in existence
# for the garbage collector of non active sessions to remove it. Default to 3600s (1 hour).
# If non active sessions garbage collector is disabled
# (property 'OPENVIDU_SESSIONS_GARBAGE_INTERVAL' to 0) this property is ignored
OPENVIDU_SESSIONS_GARBAGE_THRESHOLD=3600

# Call Detail Record enabled
# Whether to enable Call Detail Record or not
# Values: true | false
OPENVIDU_CDR=false

# Path where the cdr log files are hosted
OPENVIDU_CDR_PATH=/opt/openvidu/cdr

# Kurento Media Server image
# --------------------------
# Docker hub kurento media server: https://hub.docker.com/r/kurento/kurento-media-server-dev
# Uncomment the next line and define this variable with KMS image that you want use
# KMS_IMAGE=kurento/kurento-media-server-dev:6.13

# Kurento Media Server Level logs
# -------------------------------
# Uncomment the next line and define this variable to change
# the verbosity level of the logs of KMS
# Documentation: https://doc-kurento.readthedocs.io/en/stable/features/logging.html
# KMS_DEBUG_LEVEL=3,Kurento*:4,kms*:4,sdp*:4,webrtc*:4,*rtpendpoint:4,rtp*handler:4,rtpsynchronizer:4,agnosticbin:4

# Openvidu Server Level logs
# --------------------------
# Uncomment the next line and define this variable to change
# the verbosity level of the logs of Openvidu Service
# RECOMENDED VALUES: INFO for normal logs DEBUG for more verbose logs
# OV_CE_DEBUG_LEVEL=INFO

# Java Options
# --------------------------
# Uncomment the next line and define this to add
# options to java command
# Documentation: https://docs.oracle.com/cd/E37116_01/install.111210/e23737/configuring_jvm.htm#OUDIG00058
# JAVA_OPTIONS=-Xms2048m -Xmx4096m

For some reason, your domain (maybe a bug) is not written in .env file.

Can you redeploy again with letsencrypt certificate? It is possible that we are ignoring DomainName Cloud Formation property if certificate type is selfsigned as we consider that it is unlikely that having a domain you want to select selfsigned instead of letsencrypt.

Please test and let us know.

Yes I deployed with self signed cert because I hit the letsencrypt limit. But Iā€™m able to use letsencrypt today. Iā€™m still not able to ping my domain or use the API though.

Hereā€™s my .env file with letsencrypt used. Iā€™ve removed my domain name because I havenā€™t launched yet. But my domain is in there correctly.

# OpenVidu configuration
# ----------------------
# Documentation: https://docs.openvidu.io/en/stable/reference-docs/openvidu-config/

# NOTE: This file doesn't need to quote assignment values, like most shells do.
# All values are stored as-is, even if they contain spaces, so don't quote them.

# Domain name. If you do not have one, the public IP of the machine.
# For example: 198.51.100.1, or openvidu.example.com
OPENVIDU_DOMAIN_OR_PUBLIC_IP=###.app

# OpenVidu SECRET used for apps to connect to OpenVidu server and users to access to OpenVidu Dashboard
OPENVIDU_SECRET=9a7de5619b5748d58549b495f9900799

# Certificate type:
# - selfsigned:  Self signed certificate. Not recommended for production use.
#                Users will see an ERROR when connected to web page.
# - owncert:     Valid certificate purchased in a Internet services company.
#                Please put the certificates files inside folder ./owncert
#                with names certificate.key and certificate.cert
# - letsencrypt: Generate a new certificate using letsencrypt. Please set the
#                required contact email for Let's Encrypt in LETSENCRYPT_EMAIL
#                variable.
CERTIFICATE_TYPE=letsencrypt

# If CERTIFICATE_TYPE=letsencrypt, you need to configure a valid email for notifications
LETSENCRYPT_EMAIL=###@###.com

# Whether to enable recording module or not
OPENVIDU_RECORDING=false

# Openvidu Folder Record used for save the openvidu recording videos. Change it
# with the folder you want to use from your host.
OPENVIDU_RECORDING_PATH=/opt/openvidu/recordings

# System path where OpenVidu Server should look for custom recording layouts
OPENVIDU_RECORDING_CUSTOM_LAYOUT=/opt/openvidu/custom-layout

# if true any client can connect to
# https://OPENVIDU_SERVER_IP:OPENVIDU_PORT/recordings/any_session_file.mp4
# and access any recorded video file. If false this path will be secured with
# OPENVIDU_SECRET param just as OpenVidu Server dashboard at
# https://OPENVIDU_SERVER_IP:OPENVIDU_PORT
# Values: true | false
OPENVIDU_RECORDING_PUBLIC_ACCESS=false

# Which users should receive the recording events in the client side
# (recordingStarted, recordingStopped). Can be all (every user connected to
# the session), publisher_moderator (users with role 'PUBLISHER' or
# 'MODERATOR'), moderator (only users with role 'MODERATOR') or none
# (no user will receive these events)
OPENVIDU_RECORDING_NOTIFICATION=publisher_moderator

# Timeout in seconds for recordings to automatically stop (and the session involved to be closed)
# when conditions are met: a session recording is started but no user is publishing to it or a session
# is being recorded and last user disconnects. If a user publishes within the timeout in either case,
# the automatic stop of the recording is cancelled
# 0 means no timeout
OPENVIDU_RECORDING_AUTOSTOP_TIMEOUT=120

# Maximum video bandwidth sent from clients to OpenVidu Server, in kbps.
# 0 means unconstrained
OPENVIDU_STREAMS_VIDEO_MAX_RECV_BANDWIDTH=1000

# Minimum video bandwidth sent from clients to OpenVidu Server, in kbps.
# 0 means unconstrained
OPENVIDU_STREAMS_VIDEO_MIN_RECV_BANDWIDTH=300

# Maximum video bandwidth sent from OpenVidu Server to clients, in kbps.
# 0 means unconstrained
OPENVIDU_STREAMS_VIDEO_MAX_SEND_BANDWIDTH=1000

# Minimum video bandwidth sent from OpenVidu Server to clients, in kbps.
# 0 means unconstrained
OPENVIDU_STREAMS_VIDEO_MIN_SEND_BANDWIDTH=300

# true to enable OpenVidu Webhook service. false' otherwise
# Values: true | false
OPENVIDU_WEBHOOK=false

# HTTP endpoint where OpenVidu Server will send Webhook HTTP POST messages
# Must be a valid URL: http(s)://ENDPOINT
#OPENVIDU_WEBHOOK_ENDPOINT=

# List of headers that OpenVidu Webhook service will attach to HTTP POST messages
#OPENVIDU_WEBHOOK_HEADERS=

# List of events that will be sent by OpenVidu Webhook service
# Leave blank if all events.
OPENVIDU_WEBHOOK_EVENTS=[sessionCreated,sessionDestroyed,participantJoined,participantLeft,webrtcConnectionCreated,webrtcConnectionDestroyed,recordingStatusChanged,filterEventDispatched,mediaNodeStatusChanged]

# How often the garbage collector of non active sessions runs.
# This helps cleaning up sessions that have been initialized through
# REST API (and maybe tokens have been created for them) but have had no users connected.
# Default to 900s (15 mins). 0 to disable non active sessions garbage collector
OPENVIDU_SESSIONS_GARBAGE_INTERVAL=900

# Minimum time in seconds that a non active session must have been in existence
# for the garbage collector of non active sessions to remove it. Default to 3600s (1 hour).
# If non active sessions garbage collector is disabled
# (property 'OPENVIDU_SESSIONS_GARBAGE_INTERVAL' to 0) this property is ignored
OPENVIDU_SESSIONS_GARBAGE_THRESHOLD=3600

# Call Detail Record enabled
# Whether to enable Call Detail Record or not
# Values: true | false
OPENVIDU_CDR=false

# Path where the cdr log files are hosted
OPENVIDU_CDR_PATH=/opt/openvidu/cdr

# Kurento Media Server image
# --------------------------
# Docker hub kurento media server: https://hub.docker.com/r/kurento/kurento-media-server-dev
# Uncomment the next line and define this variable with KMS image that you want use
# KMS_IMAGE=kurento/kurento-media-server-dev:6.13

# Kurento Media Server Level logs
# -------------------------------
# Uncomment the next line and define this variable to change
# the verbosity level of the logs of KMS
# Documentation: https://doc-kurento.readthedocs.io/en/stable/features/logging.html
# KMS_DEBUG_LEVEL=3,Kurento*:4,kms*:4,sdp*:4,webrtc*:4,*rtpendpoint:4,rtp*handler:4,rtpsynchronizer:4,agnosticbin:4

# Openvidu Server Level logs
# --------------------------
# Uncomment the next line and define this variable to change
# the verbosity level of the logs of Openvidu Service
# RECOMENDED VALUES: INFO for normal logs DEBUG for more verbose logs
# OV_CE_DEBUG_LEVEL=INFO

# Java Options
# --------------------------
# Uncomment the next line and define this to add
# options to java command
# Documentation: https://docs.oracle.com/cd/E37116_01/install.111210/e23737/configuring_jvm.htm#OUDIG00058
# JAVA_OPTIONS=-Xms2048m -Xmx4096m

Updateā€¦ I am able to get a Welcome to OpenVidu Server response from my domain, but Iā€™m not able to get a response from the API. My credentials are the same and Iā€™ve been using them successfully with v2.12.0 for a while now.

Ok, then that is the bugā€¦ when certificate type is selfsigned, then domain is ignored.

Now, please describe what problem you have when use https://yourdomain/ in the browser.

If you have a timeout, please check if you correctly configured DNS to point from custom domain name to ElasticIP selected.

Regards.

Hi Micael. Not sure if you saw my previous messageā€¦ looks like we posted at the same time.

Yes, Iā€™m able to access my domain in the browser and I see Welcome to OpenVidu Server. But Iā€™m unable to access the REST API which has always worked fine in v.2.12.0 with the same credentials and code.

Hi Adam,

Now the API listens on 443 port and before the API listened on 4443 port. For this reason you must now use https://YOUR_DOMAIN/ to connect to the API and not https://YOUR_DOMAIN:4443/ try this.

Regards.

Hi Oscar. Thanks for the reply. Unfortunately thatā€™s not working either. Iā€™m just getting Connection refused.

Edit: Actually this time I canā€™t even access my domain in the browser. Here is the log fileā€¦

Cloud-init v. 19.4-33-gbb4131a2-0ubuntu1~16.04.1 running 'init-local' at Tue, 28 Apr 2020 01:13:44 +0000. Up 18.29 seconds.
Cloud-init v. 19.4-33-gbb4131a2-0ubuntu1~16.04.1 running 'init' at Tue, 28 Apr 2020 01:13:45 +0000. Up 19.93 seconds.
ci-info: ++++++++++++++++++++++++++++++++++++++Net device info+++++++++++++++++++++++++++++++++++++++
ci-info: +--------+------+-----------------------------+---------------+--------+-------------------+
ci-info: | Device |  Up  |           Address           |      Mask     | Scope  |     Hw-Address    |
ci-info: +--------+------+-----------------------------+---------------+--------+-------------------+
ci-info: |  eth0  | True |        172.31.42.191        | 255.255.240.0 | global | 0e:66:59:6d:d9:4b |
ci-info: |  eth0  | True | fe80::c66:59ff:fe6d:d94b/64 |       .       |  link  | 0e:66:59:6d:d9:4b |
ci-info: |   lo   | True |          127.0.0.1          |   255.0.0.0   |  host  |         .         |
ci-info: |   lo   | True |           ::1/128           |       .       |  host  |         .         |
ci-info: +--------+------+-----------------------------+---------------+--------+-------------------+
ci-info: +++++++++++++++++++++++++++++Route IPv4 info+++++++++++++++++++++++++++++
ci-info: +-------+-------------+-------------+---------------+-----------+-------+
ci-info: | Route | Destination |   Gateway   |    Genmask    | Interface | Flags |
ci-info: +-------+-------------+-------------+---------------+-----------+-------+
ci-info: |   0   |   0.0.0.0   | 172.31.32.1 |    0.0.0.0    |    eth0   |   UG  |
ci-info: |   1   | 172.31.32.0 |   0.0.0.0   | 255.255.240.0 |    eth0   |   U   |
ci-info: +-------+-------------+-------------+---------------+-----------+-------+
ci-info: +++++++++++++++++++Route IPv6 info+++++++++++++++++++
ci-info: +-------+-------------+---------+-----------+-------+
ci-info: | Route | Destination | Gateway | Interface | Flags |
ci-info: +-------+-------------+---------+-----------+-------+
ci-info: |   0   |  fe80::/64  |    ::   |    eth0   |   U   |
ci-info: |   3   |   ff00::/8  |    ::   |    eth0   |   U   |
ci-info: +-------+-------------+---------+-----------+-------+
Generating public/private rsa key pair.
Your identification has been saved in /etc/ssh/ssh_host_rsa_key.
Your public key has been saved in /etc/ssh/ssh_host_rsa_key.pub.
The key fingerprint is:
SHA256:OIgBP3/awjnrb0Bd9EVVoqDlYJKDloi/QHzxwPxjqDc root@ip-172-31-42-191
The key's randomart image is:
+---[RSA 2048]----+
|o.o+.o.o+ o.o.o..|
|.=.+* oo.* o . . |
|..=.oo o. o .    |
|. .*.=..         |
| .oo+ = S        |
| ..E.= .         |
|  . B..          |
|     +.          |
|   .oo.          |
+----[SHA256]-----+
Generating public/private dsa key pair.
Your identification has been saved in /etc/ssh/ssh_host_dsa_key.
Your public key has been saved in /etc/ssh/ssh_host_dsa_key.pub.
The key fingerprint is:
SHA256:rmGqK+jHqXyVx1vL+bteWVh+NUhhP0jngonF4IcsL2I root@ip-172-31-42-191
The key's randomart image is:
+---[DSA 1024]----+
|         .o. =.. |
|        o +.* *  |
|       . = + + *.|
|        o .   = +|
|     Eo.S.   . o.|
|    .o.+..    o .|
|. . o + = o  o   |
|+  = o + +  .    |
|.=*o. .   o=o    |
+----[SHA256]-----+
Generating public/private ecdsa key pair.
Your identification has been saved in /etc/ssh/ssh_host_ecdsa_key.
Your public key has been saved in /etc/ssh/ssh_host_ecdsa_key.pub.
The key fingerprint is:
SHA256:DGdQ0feOqXR5wzAyP57nCbD9j2Bmmk1DDZJtElIASs0 root@ip-172-31-42-191
The key's randomart image is:
+---[ECDSA 256]---+
|    .ooo==o      |
|   . .E. ..+.    |
|    . . o +.+.   |
|       =  o+oo.  |
|        S .+.O.  |
|          .=B =  |
|         ..+X+ . |
|          .Oo=.o |
|          o .o=..|
+----[SHA256]-----+
Generating public/private ed25519 key pair.
Your identification has been saved in /etc/ssh/ssh_host_ed25519_key.
Your public key has been saved in /etc/ssh/ssh_host_ed25519_key.pub.
The key fingerprint is:
SHA256:awr3Fy5g68LOBiuk4OOt9t9kzPHMTMQSIKhgLIxve6o root@ip-172-31-42-191
The key's randomart image is:
+--[ED25519 256]--+
|+ .. ...         |
|+=  .   o        |
|=.     . o       |
|. o     o        |
| . .   .S.       |
|..o . = B..      |
|=  *...Bo* .     |
|o++.+o=+. o      |
|E=+=++o..o       |
+----[SHA256]-----+
Cloud-init v. 19.4-33-gbb4131a2-0ubuntu1~16.04.1 running 'modules:config' at Tue, 28 Apr 2020 01:13:56 +0000. Up 30.79 seconds.
+ set -eu -o pipefail
+ cfn-init --region us-east-1 --stack arn:aws:cloudformation:us-east-1:424836695104:stack/###/597c0c70-88ed-11ea-a4d7-12342204bca9 --resource OpenviduServer
+ /usr/local/bin/feedGroupVars.sh
+ WORKINGDIR=/opt/openvidu
+ sed -i s/OPENVIDU_SECRET=/OPENVIDU_SECRET=###/ /opt/openvidu/.env
+ [[ letsencrypt == \l\e\t\s\e\n\c\r\y\p\t ]]
+ sed -i s/OPENVIDU_DOMAIN_OR_PUBLIC_IP=/OPENVIDU_DOMAIN_OR_PUBLIC_IP=###/ /opt/openvidu/.env
+ sed -i s/CERTIFICATE_TYPE=selfsigned/CERTIFICATE_TYPE=letsencrypt/ /opt/openvidu/.env
+ sed -i s/LETSENCRYPT_EMAIL=user@example.com/LETSENCRYPT_EMAIL=###/ /opt/openvidu/.env
+ '[' false == false ']'
+ sed -i s/WITH_DEMOS=true/WITH_DEMOS=false/ /opt/openvidu/docker-compose.yml
+ rm /opt/openvidu/docker-compose.override.yml
+ crontab
+ echo '@reboot /usr/local/bin/restartCE.sh'
+ '[' letsencrypt == owncert ']'
+ pushd /opt/openvidu
/opt/openvidu /
+ docker-compose up -d
Creating openvidu_openvidu-server_1 ... done
Creating openvidu_redis_1           ... done
Creating openvidu_coturn_1          ... done
Creating openvidu_nginx_1           ... done
Creating openvidu_kms_1             ... done
+ popd
/
+ '[' false == true ']'
+ rm /usr/local/bin/ping.sh
+ /usr/local/bin/check_app_ready.sh
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
  0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0curl: (7) Failed to connect to localhost port 5443: Connection refused
/usr/local/bin/check_app_ready.sh: line 4: [: ==: unary operator expected
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
  0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0curl: (7) Failed to connect to localhost port 5443: Connection refused
/usr/local/bin/check_app_ready.sh: line 4: [: ==: unary operator expected
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
  0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0curl: (7) Failed to connect to localhost port 5443: Connection refused
/usr/local/bin/check_app_ready.sh: line 4: [: ==: unary operator expected
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
  0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0curl: (7) Failed to connect to localhost port 5443: Connection refused
/usr/local/bin/check_app_ready.sh: line 4: [: ==: unary operator expected
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
  0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0curl: (7) Failed to connect to localhost port 5443: Connection refused
/usr/local/bin/check_app_ready.sh: line 4: [: ==: unary operator expected
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
  0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0curl: (7) Failed to connect to localhost port 5443: Connection refused
/usr/local/bin/check_app_ready.sh: line 4: [: ==: unary operator expected
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
  0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0curl: (7) Failed to connect to localhost port 5443: Connection refused
/usr/local/bin/check_app_ready.sh: line 4: [: ==: unary operator expected
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
  0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0curl: (7) Failed to connect to localhost port 5443: Connection refused
/usr/local/bin/check_app_ready.sh: line 4: [: ==: unary operator expected
  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
  0  1000    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0
+ /usr/local/bin/cfn-hup -v
+ /usr/local/bin/cfn-signal -e 0 --stack arn:aws:cloudformation:us-east-1:424836695104:stack/###/597c0c70-88ed-11ea-a4d7-12342204bca9 --resource WaitCondition --region us-east-1
Cloud-init v. 19.4-33-gbb4131a2-0ubuntu1~16.04.1 running 'modules:final' at Tue, 28 Apr 2020 01:14:09 +0000. Up 43.45 seconds.
Cloud-init v. 19.4-33-gbb4131a2-0ubuntu1~16.04.1 finished at Tue, 28 Apr 2020 01:15:07 +0000. Datasource DataSourceEc2Local.  Up 101.66 seconds

Openvidu seems to be up according to the log. Please connect to the machine by ssh, then switch to root with the command sudo su go to the folder /opt/openvidu and run the command docker-compose logs nginx to get the proxy logs

Regards

What about "Failed to connect to localhost port 5443: Connection refused". Is that to be expected?

I have already deleted the stack but I will try again now and let you know.

EDIT: Tried again. The log is below. Looks like Iā€™m hitting the letsencrypt limit again. Thatā€™s annoying. :wink: Thanks for working through this with me. I guess Iā€™ll have to wait and try again. Shouldnā€™t the CloudFormation stack fail when this happens, like it did in v2.12.0?

Attaching to openvidu_nginx_1
nginx_1 | Domain name: ###
nginx_1 | Certificated: letsencrypt
nginx_1 | Letsencrypt Email: ###
nginx_1 | Proxy mode: CE
nginx_1 | Demos mode: false
nginx_1 | ===Mode letsencrypt===
nginx_1 | Requesting certificateā€¦
nginx_1 | Saving debug log to /var/log/letsencrypt/letsencrypt.log
nginx_1 | Plugins selected: Authenticator webroot, Installer None
nginx_1 | Obtaining a new certificate
nginx_1 | An unexpected error occurred:
nginx_1 | There were too many requests of a given type :: Error creating new order :: too many certificates already issued for exact set of domains: ###: see https://letsencrypt.org/docs/rate-limits/
nginx_1 | Please see the logfiles in /var/log/letsencrypt for more details.
nginx_1 | IMPORTANT NOTES:
nginx_1 | - Your account credentials have been saved in your Certbot
nginx_1 | configuration directory at /etc/letsencrypt. You should make a
nginx_1 | secure backup of this folder now. This configuration directory will
nginx_1 | also contain certificates and private keys obtained by Certbot so
nginx_1 | making regular backups of this folder is ideal.
nginx_1 | 2020/04/28 15:39:38 [emerg] 39#39: cannot load certificate ā€œ/etc/letsencrypt/live/###/fullchain.pemā€: BIO_new_file() failed (SSL: error:02001002:system library:fopen:No such file or directory:fopen(ā€™/etc/letsencrypt/live/###/fullchain.pemā€™,ā€˜rā€™) error:2006D080:BIO routines:BIO_new_file:no such file)
nginx_1 | nginx: [emerg] cannot load certificate ā€œ/etc/letsencrypt/live/###/fullchain.pemā€: BIO_new_file() failed (SSL: error:02001002:system library:fopen:No such file or directory:fopen(ā€™/etc/letsencrypt/live/###/fullchain.pemā€™,ā€˜rā€™) error:2006D080:BIO routines:BIO_new_file:no such file)
nginx_1 | nginx: configuration file /etc/nginx/nginx.conf test failed

@micael.gallego do you know when the bug with domain/ip and selfsigned is going to be fixed? My plan is to create the stack with selfsigned and then upload my own cert/key and overwrite the env file to use owncert. I donā€™t want to make my cert/key publically accessible in order to create the stack with owncert.

I canā€™t test that plan now because selfsigned causes the stack to be created without my ip address.

Thanks.

EDIT: I just tried to create the stack with selfsigned and then update the .env file with my domain and owncert. I then restarted openvidu but couldnā€™t access my domain in the browser.

We are working on it. Have you configured your ElasticIP in the CF form? It should work

Thatā€™s the bug I think. When I use selfsigned my ip and domain in the CF form are ignored. The .env file and output screenshots shows a different ip. I tried updating the ec2 instance afterwards to use my ip, and the update the .env file to use my domain, but that didnā€™t work.

Thanks again.

1 Like

Hi @micael.gallego, sorry to be a pest, but do you have an estimate on when this bug will be fixed? Iā€™m unable to get around it.

Thanks.

We plan to publish a new release at the end of the week.

Hi @micael.gallego. I see that v2.14.0 is coming out next week with new features. I appreciate that, but it would be helpful to have a bugfix release in the meantimeā€¦ possibly v2.13.1.

I have been unable to make any progress since v2.13.0 came out.

Do you ever release bug fixes when they are completed, or only when new features are added. I think releasing bug fixes as soon as possible would be appreciated by everyone.