Jump to content

Qos between dockers


danioj

Recommended Posts

Hi All, here starts another week!!

 

I went to access my website this morning (which I host and run from a docker container) and realised that it was unresponsive. I realised that another service running from within another container was sapping all the available b/w to the outside world. I could limit the b/w available to other services to ALWAYS leave enough for the container running my website but that seems inefficient to me - especially as it is for my own personal use and I don't get many visitors.

 

So ..... does anyone know of a method to apply Qos settings in this scenario. I have Qos on my dd-wrt router but that works with MAC addresses and IP addresses. Given the these dockers are all on one host machine I don't think that will be the answer. Unless I have missed something.

 

Anyone got any ideas?

Link to comment

I wish I could apply a different ip address to each docker. If I could then I would just use my router for QoS.

There is a thread here about doing that.  Search is your friend

 

A bit harsh to ping me for that I feel.

 

I searched qos and bandwidth throttling and neither brought back the thread you have pointed me too.

 

However, thank you for pointing me at it anyway. I'll take a look.

Link to comment

I wish I could apply a different ip address to each docker. If I could then I would just use my router for QoS.

There is a thread here about doing that.  Search is your friend

 

A bit harsh to ping me for that I feel.

 

I searched qos and bandwidth throttling and neither brought back the thread you have pointed me too.

 

However, thank you for pointing me at it anyway. I'll take a look.

 

danioj, look at the post Squid quoted, it wasn't in reference to your OP mate.  And then he posted the link anyway, he's a nice guy Squid, although there's something a bit fishy about him. ;)

 

I think you've raised an interesting point though and one that will affect me as well sooner or later, I don't have any answers at the moment, but if I find anything out I'll let you know and you can do the same.

 

QOS is something I've only recently started looking into, networking is a definite weak point of mine.

Link to comment

I wish I could apply a different ip address to each docker. If I could then I would just use my router for QoS.

There is a thread here about doing that.  Search is your friend

 

 

danioj, look at the post Squid quoted, it wasn't in reference to your OP mate.  And then he posted the link anyway, he's a nice guy Squid, although there's something a bit fishy about him. ;)

 

I think you've raised an interesting point though and one that will affect me as well sooner or later, I don't have any answers at the moment, but if I find anything out I'll let you know and you can do the same.

 

QOS is something I've only recently started looking into, networking is a definite weak point of mine.

 

@Squid: Jeez, sorry man. Over react much. God I am having a bad week. Hand up, I was wrong.

 

@CHBMB: I have been looking into this this morning.

 

**Firstly I apologise if what I have written below is technically wrong - it has been many years since I have fiddled at this level**

 

I was having a think over coffee at work this morning and I started doodling on a bit of paper. What about IP Address aliasing and virtual interfaces in the Unraid OS and then binding a specific container to that interface? what I mean is something like this:

 

So for example lets say I want to create four additional virtual interfaces and bind four IP's in the same range as the physical interface which is 192.168.1.2 (range: 192.168.1.40-44) to the one card I would do that via virtual interfaces or alias's. If my memory serves me I would do this via alias files. I believe the default interface has a config/script file (somewhere but I don't know where on Unraid called in using my example ifcfg-eth0) and I would create copies of this for each virtual interface I wanted to create for each four (ifcfg-eth0:0 - 3).

 

We could then edit the virtual interface files we have just created with different Device and IP Address Settings. Perhaps Like this:

 

DEVICE="eth0"

IPADDR=192.168.1.2

NETMASK=255.255.255.0

GATEWAY=192.168.1.1

HWADDR=00:00:00:00:00:00

 

DEVICE="eth0:0"

IPADDR=192.168.1.40

NETMASK=255.255.255.0

GATEWAY=192.168.1.1

HWADDR=00:00:00:00:00:00

 

DEVICE="eth0:1"

IPADDR=192.168.1.41

NETMASK=255.255.255.0

GATEWAY=192.168.1.1

HWADDR=00:00:00:00:00:00

 

....and so on and so on.

 

I "Think" you would leave the H/W Address alone as this wouldn't change. You are just assigning multiple IP Addresses to the same NIC. I also "Think" this file has more options in it but I can't remember.

 

You would then reset the network service and then that "should" be it. I think!

 

"Surely" then if the the Unraid OS has these additional interfaces there should be a way to bind a specific container to that IP?

 

OK - now I am Waaaaay out of my depth!

 

Next coffee break is in a few more hours so I'll look more then!

Link to comment

@danioj

 

Doesn't docker use a bridge docker0 as an access to the eth0?  Or am I getting muddled up?

 

PS Good of you to apologise, takes a man to admit to his mistakes, and it's not like you were rude about it either..

Link to comment

Archived

This topic is now archived and is closed to further replies.

×
×
  • Create New...