Sort and wash beans; place in a large Dutch oven. Cover with water to 2 inches above beans; bring to a boil. Cook 2 minutes; remove from heat. Cover and let stand 1 hour. Drain beans; rinse and drain.
Return beans to pan; cover with 6 cups warm water. Stud whole onion with cloves; place in pan. Add celery, thyme, parsley sprigs, ham hocks, and bay leaf; bring to a boil. Cover, reduce heat, and simmer 45 minutes.
Discard onion, thyme, parsley sprigs, and bay leaf. Remove ham hocks from pan; cool slightly. Remove meat from bones; finely chop to yield 1/3 cup meat. Discard bones, skin, and fat. Add meat, kale, potato, chopped onion, carrot, salt, and pepper to pan; stir well. Cover and simmer 30 minutes or until beans and vegetables are tender. Stir in parsley.