Skip to content
This repository has been archived by the owner on Apr 3, 2024. It is now read-only.

New GitHub release #33

Open
gdhgdhgdh opened this issue Aug 26, 2016 · 5 comments
Open

New GitHub release #33

gdhgdhgdh opened this issue Aug 26, 2016 · 5 comments

Comments

@gdhgdhgdh
Copy link

Hello!

I'm using mr-redis today for the first time (on DC/OS) and this is a great project :) Is there any chance of publishing a 0.0.2 release on GitHub (and DC/OS package Universe ?) ?

The 0.0.1 in March 2016 was a long time ago and many new features have been contributed!

Gavin

@dhilipkumars
Copy link
Member

HI Gavin, Sorry for the delay in responding. it is great to hear from you. I will update the docker image (so that you get the latest in DC/OS) as well as update the release with the latest binaries.

I have planned certain things for the next release dockerizing the workload and wanted to use the latest Mesos's POD facility (especially the Auto Restart Policy) as soon as its available. It might take bit more time.

It would be great to hear more from you on this project.

Thanks Dhilip

@gdhgdhgdh
Copy link
Author

Excellent - thank you :)

One of the key points for me is the need for better service discovery... e.g. the DC/OS Cassandra and Kafka frameworks all have callable API's to get connection information, e.g.

https://github.com/mesosphere/dcos-cassandra-service#retrieve-connection-info

Similarly being able to call <dcos_url>/mr-redis/v1/nodes/<INSTANCENAME>/connect and get the addresses + ports of masters + slaves would be much more consistent with DC/OS design.

This is key because only nodes inside DC/OS are able to resolve 'mr-redis.marathon.mesos' and our automation relies on this information being accessed from other networks via a well-known URL.

@gdhgdhgdh
Copy link
Author

Actually, even more useful would be 'VIP' (virtual IP) support.. This is a new internal load-balancer https://github.com/dcos/minuteman in DC/OS 1.8 which uses iptables to pass traffic into userspace:

In short, by accessing a special hostname format, you can access a service on a fixed hostname and IP address, and get the same benefit as using HAProxy, but without having to use HAProxy, and without any DNS caching problems.

Taking Kafka as an example: See step 3 of https://github.com/mesosphere/dcos-kafka-service#quick-start

Now rather than having to store + access each of the broker hostnames (broker-0, broker-1, broker-2) individually, it is now possible to access the single hostname broker.kafka.l4lb.thisdcos.directory (minuteman will automatically allocate a fictional IP address and adjust the networking)

It would be excellent to be able to access master.instancename.mr-redis.l4lb.thisdcos.directory or slave.instancename.mr-redis.l4lb.thisdcos.directory !

@dhilipkumars
Copy link
Member

@gdhgdhgdh we can easily expose a 'connect api but not sure how they have integrated it with dcos_url, ill check for now you could use mr-redis:port/v1//STATUS returns a json with connection information.

with respect to VIP, i have been looking at the VIP options and want to give it a try. I will create ISSUES and add it to the next milestone. Hopefully you should be able to get these the next version.

@gdhgdhgdh
Copy link
Author

Ah excellent, thank you :) I have already been using the JSON output from the STATUS endpoint - the complexity in our environment is that we submit new Marathon jobs from Jenkins, which lives outside the DC/OS cluster...

So whilst it's fine to access the external-facing DC/OS URL for Cassandra/Kafka, the mr-redis admin endpoint is only available inside the DC/OS cluster on port 5656... that means some bad trickery is needed to get the host/port :)

I'm really looking forward to future releases - thanks for picking this up!

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants