docs: def createCluster(self, clusterName, machineNames="", tcpClusterPort=""):
          """
          Creating a new cluster involves defining a clustering protocol that
          will be shared by all server machines participating in the cluster.
          All server machines that are added to the cluster must be
          registered with the site. The clustering protocol and the initial
          list of server machines are optional. In this case, the server
          picks the default clustering protocol and selects the port numbers
          such that they do not conflict with other configured ports on the
          server machine. Once a cluster has been created you can add more
          machines (to increase the compute power) or remove them (to reduce
          the compute power) dynamically.
  
          Inputs:
             clusterName - The name of the cluster. This must be a unique
                           name within a site
             machineNames - An optional comma-separated list of server
                            machines to be added to this cluster.
             tcpClusterPort - A TCP port number that will be used by all the
                              server machines to communicate with each other
                              when using the TCP clustering protocol. This is
                              the default clustering protocol. If this
                              parameter is missing, a suitable default will
                              be used.
          """
          url = self._url + "/create"
          params = {
              "f" : "json",
              "clusterName" : clusterName,
              "machineNames" : machineNames,
              "tcpClusterPort" : tcpClusterPort
          }
          return self._post(url=url,
                               param_dict=params,
                               securityHandler=self._securityHandler,
                               proxy_url=self._proxy_url,
                               proxy_port=self._proxy_port)