deploying a load- balanced data pipeline · named tweeter. tweeter is an app similar to twitter...
TRANSCRIPT
HAPROXY_0_VHOST tweeter.jsonHAPROXY_0_VHOST
HAPROXY_0_VHOST
http:// /
[email protected]:mesosphere/[email protected]:mesosphere/tweeter.git
instances tweeter.json
node-0.cassandra.mesos:9042
]],,"labels""labels"::{{"HAPROXY_GROUP""HAPROXY_GROUP"::"external""external",,"HAPROXY_0_VHOST""HAPROXY_0_VHOST"::"<Master-Public-IP>""<Master-Public-IP>"}}}}
]],,"labels""labels"::{{"HAPROXY_GROUP""HAPROXY_GROUP"::"external""external",,"HAPROXY_0_VHOST""HAPROXY_0_VHOST"::"joel-oss-publicsl-e21skwtlxt0c-2029962837.us-west-2.elb.amazonaws.com""joel-oss-publicsl-e21skwtlxt0c-2029962837.us-west-2.elb.amazonaws.com"}}}}
dcosmarathonappadd1.8/tweeter.jsondcosmarathonappadd1.8/tweeter.json
dcosmarathonappupdatetweeterinstancesdcosmarathonappupdatetweeterinstances==<<number_of_desired_instancesnumber_of_desired_instances>>
dcos-enterprise-cli
dcospackagesearch enterprise*
dcospackagesearchenterprise*dcospackagesearchenterprise*
NAMEVERSIONSELECTEDFRAMEWORKDESCRIPTIONNAMEVERSIONSELECTEDFRAMEWORKDESCRIPTIONdcos-enterprise-cli1.0.3FalseFalseDC/OSEnterpriseCLIdcos-enterprise-cli1.0.3FalseFalseDC/OSEnterpriseCLI
public-key.pem
dcospackagedcospackageinstallinstalldcos-enterprise-clidcos-enterprise-cli
dcossecurityorgservice-accountskeypairprivate-key.pempublic-key.pemdcossecurityorgservice-accountskeypairprivate-key.pempublic-key.pem
-----BEGINPUBLICKEY----------BEGINPUBLICKEY-----
marathon-lb-service-acctpublic-key.pem
marathon-lb-secret private-key.pem marathon-lb-service-acct
MIIBIjANBgkqhkiMIIBIjANBgkqhki......-----ENDPUBLICKEY----------ENDPUBLICKEY-----
dcossecurityorgservice-accountscreate-ppublic-key.pem-ddcossecurityorgservice-accountscreate-ppublic-key.pem-d"Marathon-LBserviceaccount""Marathon-LBserviceaccount"
dcossecuritysecretscreate-sa-secretprivate-key.pemmarathon-lb-service-acctmarathon-lb-secretdcossecuritysecretscreate-sa-secretprivate-key.pemmarathon-lb-service-acctmarathon-lb-secret
<master-ip>
dcossecuritysecretslist/dcossecuritysecretslist/
-marathon-lb-secret-marathon-lb-secret
curl-k-vhttp://curl-k-vhttp://<<master-ipmaster-ip>>/ca/dcos-ca.crt/ca/dcos-ca.crt
>>GET/ca/dcos-ca.crtHTTP/1.1GET/ca/dcos-ca.crtHTTP/1.1>>Host:54.149.23.77Host:54.149.23.77>>User-Agent:curl/7.43.0User-Agent:curl/7.43.0>>Accept:*/*Accept:*/*>><<HTTP/1.1200OKHTTP/1.1200OK<<Server:openresty/1.8.15.1Server:openresty/1.8.15.1<<Date:Tue,11Oct201618:30:49GMTDate:Tue,11Oct201618:30:49GMT<<Content-Type:application/x-x509-ca-certContent-Type:application/x-x509-ca-cert<<Content-Length:1241Content-Length:1241<<Last-Modified:Tue,11Oct201615:17:28GMTLast-Modified:Tue,11Oct201615:17:28GMT<<Connection:keep-aliveConnection:keep-alive<<ETag:ETag:"57fd0288-4d9""57fd0288-4d9"
dcos-ca.crt -----BEGINCERTIFICATE----- -----ENDCERTIFICATE----- dcos-cert.pem
dcos-cert.pem
<<Accept-Ranges:bytesAccept-Ranges:bytes<<-----BEGINCERTIFICATE----------BEGINCERTIFICATE-----MIIDaDCCAlCgAwIMIIDaDCCAlCgAwI......-----ENDCERTIFICATE----------ENDCERTIFICATE-----
curl-XPUT--cacertdcos-cert.pem-Hcurl-XPUT--cacertdcos-cert.pem-H"Authorization:token="Authorization:token=$($(dcosconfigshowcore.dcos_acs_tokendcosconfigshowcore.dcos_acs_token
curl-XPUT--cacertdcos-cert.pem-Hcurl-XPUT--cacertdcos-cert.pem-H"Authorization:token="Authorization:token=$($(dcosconfigshowcore.dcos_acs_tokendcosconfigshowcore.dcos_acs_token
curl-XPUT--cacertdcos-cert.pem-Hcurl-XPUT--cacertdcos-cert.pem-H"Authorization:token="Authorization:token=$($(dcosconfigshowcore.dcos_acs_tokendcosconfigshowcore.dcos_acs_token
curl-XPUT--cacertdcos-cert.pem-Hcurl-XPUT--cacertdcos-cert.pem-H"Authorization:token="Authorization:token=$($(dcosconfigshowcore.dcos_acs_tokendcosconfigshowcore.dcos_acs_token
config.json
config.json
{{"marathon-lb""marathon-lb"::{{"secret_name""secret_name"::"marathon-lb-secret""marathon-lb-secret"}}}}
dcospackagedcospackageinstallinstall--options--options==config.jsonmarathon-lbconfig.jsonmarathon-lb
tweeter tweeter.json
HAPROXY_0_VHOST
[email protected]:mesosphere/[email protected]:mesosphere/tweeter.git
http:// /
instances tweeter.json
]],,"labels""labels"::{{"HAPROXY_GROUP""HAPROXY_GROUP"::"external""external",,"HAPROXY_0_VHOST""HAPROXY_0_VHOST"::"<public-agent-IP>""<public-agent-IP>"}}}}
......]],,"labels""labels"::{{"HAPROXY_GROUP""HAPROXY_GROUP"::"external""external",,"HAPROXY_0_VHOST""HAPROXY_0_VHOST"::"joel-ent-publicsl-e7wjol669l9f-741498241.us-west-2.elb.amazonaws.com""joel-ent-publicsl-e7wjol669l9f-741498241.us-west-2.elb.amazonaws.com"}}}}
dcosmarathonappadd1.8/tweeter.jsondcosmarathonappadd1.8/tweeter.json
dcosmarathonappupdatetweeterinstancesdcosmarathonappupdatetweeterinstances==<<number_of_desired_instancesnumber_of_desired_instances>>
node-0.cassandra.mesos:9042broker-0.kafka.mesos:9557
HAPROXY_0_VHOST tweeter.json
HAPROXY_0_VHOST tweeter.json
post-tweets.json
post-tweets.json
dcosmarathonappaddpost-tweets.jsondcosmarathonappaddpost-tweets.json
1.1.1.1:30000cmd post-tweets.json
tweeter.json VIP_0
{{"id""id"::"/post-tweets""/post-tweets",,"cmd""cmd"::"bin/tweetshakespeare-tweets.jsonhttp://1.1.1.1:30000""bin/tweetshakespeare-tweets.jsonhttp://1.1.1.1:30000",,......}}
{{......"containerPort""containerPort"::30003000,,"hostPort""hostPort"::00,,"servicePort""servicePort"::1000010000,,"labels""labels"::{{"VIP_0""VIP_0"::"1.1.1.1:30000""1.1.1.1:30000"}}......}}