Heat olive oil in a large pot over medium heat.
Add onions, celery and carrots.
Cook, stirring often, until carrots are partly tender, about 10 minutes.
Add zucchini pieces and broth. Increase heat to high and bring to a boil. Once it reaches the boil, bring down to simmer and cover 5 minutes.
Add Swiss chard or kale, cabbage and tomatoes, and cover again.
Cook for 45 minutes to an hour.
If soup looks too dry, add a bit more broth.
When veggies are tender, add beans.
Season with salt and pepper, and the cheese rind if using.
Cook 15-30 more minutes, stirring every few minutes, until all veggies are tender and the entire mixture is creamy.
Adjust seasonings if necessary.
Serve hot!