Load balancer service using wrong Docker image

I thought I had to be missing something at first, but I’ve now tested this in the UI and via API (many times each) and got the same results every time.

Reproduction steps with v1.1.4:

  • create an empty stack
  • add a load balancer service to that stack and start it
  • go to the info page for that load balancer, click through to the containers in it, and observe that it’s rancher/agent-instance:v0.8.3 instead of haproxy
    (optionally make the same check with the API and see the same results)

No errors anywhere - UI, API, server logs, or “audit logs” in the UI.

So, am I nuts or is that definitely broken?

(the API request)


// POST https://rancher.example.com/v1/projects/1a5/loadbalancerservices/

{
  "name": "lb-test",
  "environmentId": "1e5",
  "launchConfig": {
    "labels": {
      "io.rancher.loadbalancer.ssl.ports": "443"
    },
    "ports": [
      "80:80",
      "443:80"
    ]
  },
  "startOnCreate": true
}

The load balancer has always created containers with agent-instance. It’s a basic Ubuntu image plus the few things we need for the Network Agent and Balancers installed. load-balancer-service that you see in yaml is not an actual image. Though this will all be changing with the refactoring for 1.2.

Also inside the agent-instance is where haproxy software is running.

Thanks for the quick response guys. Not sure how I never saw that before if it has always been that way.

Didn’t it used to show a load balancer instance in the host view? That’s what originally caught my attention this time. I launched it on a specific host, but then there appeared to be no containers on that host when I checked it. Yes, I know the agent containers haven’t been visible in that UI view for a while, but I swear I remember seeing a load balancer container before. No?

Check this box in the upper-right corner: