A composite cloud application can achieve economies of scale by sharing partner services between tenants at runtime, following the Single-Instance Multi-Tenancy (SIMT) model. However, supporting runtime sharing with tenant-specific functional and performance variations in an SIMT application is challenging. We address this challenge by proposing the Software-Defined Service Networking (SDSN) approach. SDSN realizes an SIMT composite cloud application with a managed service network and a set of managed virtual service networks (VSNs) that share the service network. The service network is formed by connecting a set of partner services according to their capabilities and interoperability. To achieve the functional and performance requirements of a particular tenant, a VSN composes a subset of the services under a specific configuration design over the service network, and regulates the interactions between the services concerned according to a specific regulation design. We describe how a service network and its VSNs are designed and enacted to achieve the SIMT objectives. We show the feasibility of SDSN, demonstrate the utilization benefits it achieves, and quantify the runtime overhead it incurs.