Heat oil in a large stock pot over medium heat. Add the onions and cook for 5 minutes or until translucent, stirring occasionally.
Add in the celery and carrots and cook another 3 minutes, stirring occasionally.
Stir in the garlic and cook another 30 seconds.
Add in the chicken broth, cabbage, tomatoes, Italian seasoning, salt, and pepper.
Bring to a boil, reduce heat to low, cover, and let simmer for 15 minutes or until cabbage is wilted.
Ladle soup into a bowl and top with parsley and shaved Parmesan cheese.