Я пытаюсь настроить связь через веб-сокет через классический ELB
с завершением ssl на wowza, медиа-сервер на основе java.
Настроить
VPC
R53
test.myTld.com
IPv4, Alias=Yes, Target myElb, Routing Simple
CLASSIC ELB: myElb
listeners: SSL 64443 -> TCP 64443 : SSL Cert managed by AWS Certificate Manager (ACM)
security group [sg-xxxxx] : Custom TCP Rule TCP (6) 64443 0.0.0.0/0
EC2
security group [sg-xxxxx] : Custom TCP Rule TCP (6) 64443 0.0.0.0/0
Трафик, отличный от wss, достигает экземпляра, как ожидалось. При подключении к ec2 wowza по прямому ip соединение работает и стрим подключается
wss://xxx.xxx.xxx.xxx:64443/webrtc-session.json
Frames = {status: 200, statusDescription: "OK", direction: "publish", command: "sendOffer",…}
Однако подключение через ELB
Я получаю сообщения об ошибках
WebSocket connection to 'wss://test.myTld.com:64443/webrtc-session.json' failed: Error during WebSocket handshake: net::ERR_RESPONSE_HEADERS_TRUNCATED
Итак, следуя нескольким руководствам и документам, таким как AWS ELB CLI Я добавил следующее
aws elb create-load-balancer-policy --load-balancer-name myElb --policy-name wowza --policy-type-name ProxyProtocolPolicyType --policy-attributes AttributeName=ProxyProtocol,AttributeValue=True
aws elb set-load-balancer-policies-for-backend-server --load-balancer-name myElb --instance-port 64443 --policy-names wowza
Подтверждая, что политика обновлена,
aws elb describe-load-balancers --load-balancer-name myElb
"VPCId": "vpc-xxxxxxxx",
"BackendServerDescriptions": [
{
"InstancePort": 64443,
"PolicyNames": [
"wowza"
]
}
],
"Instances": [
{
"InstanceId": "i-xxxxxxx"
}
],
Затем я пытаюсь установить соединение, используя test.myTld.com
& ELB
, отчеты о первой попытке
WebSocket connection to 'wss://test.myTld.com:64443/webrtc-session.json'
failed: Error during WebSocket handshake: Invalid status line
Frames = (Opcode -1)
затем отчет о последующих попытках
WebSocket connection to 'wss://test.myTld.com:64443/webrtc-session.json'
failed: Error during WebSocket handshake: net::ERR_RESPONSE_HEADERS_TRUNCATED
Frames = (Opcode -1)
Чего стоит, вот логи от wowza
server INFO 200 - WebSocketSession.create[94728968] - - - 9432.997
server INFO 200 - WebSocketSession.destroy[926674790]: source:server status:-1 description:Unknown - - - 9490.999
Итак, мои вопросы: что еще мне нужно настроить, чтобы ELB прошел wss
заголовки для установки веб-сокета.