code: func (ipvsc *ipvsControllerController) sync(key string) error {
  	ipvsc.reloadRateLimiter.Accept()
  
  	if !ipvsc.epController.HasSynced() || !ipvsc.svcController.HasSynced() {
  		time.Sleep(100 * time.Millisecond)
  		return fmt.Errorf("deferring sync till endpoints controller has synced")
  	}
  
  	ns, name, err := parseNsName(ipvsc.configMapName)
  	if err != nil {
  		glog.Warningf("%v", err)
  		return err
  	}
  	cfgMap, err := ipvsc.getConfigMap(ns, name)
  	if err != nil {
  		return fmt.Errorf("unexpected error searching configmap %v: %v", ipvsc.configMapName, err)
  	}
  
  	svc := ipvsc.getServices(cfgMap)
  	ipvsc.ruCfg = svc
  
  	err = ipvsc.keepalived.WriteCfg(svc)
  	if err != nil {
  		return err
  	}
  	glog.V(2).Infof("services: %v", svc)
  
  	md5, err := checksum(keepalivedCfg)
  	if err == nil && md5 == ipvsc.ruMD5 {
  		return nil
  	}
  
  	ipvsc.ruMD5 = md5
  	err = ipvsc.keepalived.Reload()
  	if err != nil {
  		glog.Errorf("error reloading keepalived: %v", err)
  	}
  
  	return nil
  }
docs: // sync all services with the