def __init__(self, ip=None,<EOL>username=None, password=None, scope=<NUM_LIT:0>, sec_file=None,<EOL>timeout=None,<EOL>heartbeat_interval=None,<EOL>naviseccli=None,<EOL>file_username=None, file_password=None):
super(VNXSystem, self).__init__()<EOL>self._ip = ip<EOL>self._username = username<EOL>self._password = password<EOL>self._scope = scope<EOL>self._sec_file = sec_file<EOL>self._timeout = timeout<EOL>self._hb_interval = heartbeat_interval<EOL>self._naviseccli = naviseccli<EOL>self._file_username = file_username<EOL>self._file_password = file_password<EOL>self._cli = self._init_block_cli()<EOL>if heartbeat_interval:<EOL><INDENT>daemon(self.update_nodes_ip)<EOL><DEDENT>
initialize a `VNXSystem` instance

        The `VNXSystem` instance act as a entry point for all
        VNX resources.

        :param ip: ip of one block sp
        :param username: username for block system
        :param password: password for the specified block user
        :param scope: scope of the specified block user
        :param sec_file: security file used by naviseccli
        :param timeout: naviseccli command timeout
        :param heartbeat_interval: heartbeat interval used to check the
        alive of sp.  Set to 0 if heart beat is not required.
        :param naviseccli: binary location of naviseccli in your host.
        :param file_username: username for control station login, default to
        username
        :param file_password: password for control station login, default to
        password
        :return: vnx system instance