Skip to main content

%Net.Provision.Configure

class %Net.Provision.Configure extends %Library.RegisteredObject

Represents a Cache Provisioning object. Each Provisioning object must first be connected, then authenticated with the remote system. Note that there are multiple methods of authentication: password and publickey. Once connected and authenticated, the Provisioning object can be used to perform Cache install to a remote system. Once installed, the object can also be used to apply for EM Management. NOTE: Provisioning is not supported on OpenVMS platforms.
NOTE: Sudo is required for install. Note also that the "Defaults requiretty" setting in /etc/sudoers must be disabled (the default). SSH must be configured on the target machine, with PasswordAuthentication for sshd.

Property Inventory

Method Inventory

Properties

property Authenticated as %Boolean [ InitialExpression = 0 ];
Property methods: AuthenticatedDisplayToLogical(), AuthenticatedGet(), AuthenticatedIsValid(), AuthenticatedLogicalToDisplay(), AuthenticatedNormalize(), AuthenticatedSet()
property CacheGroup as %String [ InitialExpression = "cacheusr" ];
Property methods: CacheGroupDisplayToLogical(), CacheGroupGet(), CacheGroupIsValid(), CacheGroupLogicalToDisplay(), CacheGroupLogicalToOdbc(), CacheGroupNormalize(), CacheGroupSet()
property CacheKeyFile as %String;
Property methods: CacheKeyFileDisplayToLogical(), CacheKeyFileGet(), CacheKeyFileIsValid(), CacheKeyFileLogicalToDisplay(), CacheKeyFileLogicalToOdbc(), CacheKeyFileNormalize(), CacheKeyFileSet()
property CachePassword as %String [ InitialExpression = "SYS" ];
Property methods: CachePasswordDisplayToLogical(), CachePasswordGet(), CachePasswordIsValid(), CachePasswordLogicalToDisplay(), CachePasswordLogicalToOdbc(), CachePasswordNormalize(), CachePasswordSet()
property CacheUser as %String [ InitialExpression = "cacheusr" ];
Property methods: CacheUserDisplayToLogical(), CacheUserGet(), CacheUserIsValid(), CacheUserLogicalToDisplay(), CacheUserLogicalToOdbc(), CacheUserNormalize(), CacheUserSet()
property EMManageStatus as %String;
Output log from execution of EM Manage Cache.
Property methods: EMManageStatusDisplayToLogical(), EMManageStatusGet(), EMManageStatusIsValid(), EMManageStatusLogicalToDisplay(), EMManageStatusLogicalToOdbc(), EMManageStatusNormalize(), EMManageStatusSet()
property EMSystemLog as %String;
System log from EM Manage
Property methods: EMSystemLogDisplayToLogical(), EMSystemLogGet(), EMSystemLogIsValid(), EMSystemLogLogicalToDisplay(), EMSystemLogLogicalToOdbc(), EMSystemLogNormalize(), EMSystemLogSet()
property InstallDir as %String;
Where we install the instance on the remote machine.
Property methods: InstallDirDisplayToLogical(), InstallDirGet(), InstallDirIsValid(), InstallDirLogicalToDisplay(), InstallDirLogicalToOdbc(), InstallDirNormalize(), InstallDirSet()
property InstanceName as %String;
Instance name we install on the remote machine
Property methods: InstanceNameDisplayToLogical(), InstanceNameGet(), InstanceNameIsValid(), InstanceNameLogicalToDisplay(), InstanceNameLogicalToOdbc(), InstanceNameNormalize(), InstanceNameSet()
property KitDir as %String;
Directory where the kit lives on the local machine.
This may be a network drive which is available on the remote machine as well.
Property methods: KitDirDisplayToLogical(), KitDirGet(), KitDirIsValid(), KitDirLogicalToDisplay(), KitDirLogicalToOdbc(), KitDirNormalize(), KitDirSet()
property KitFile as %String;
Name of the tar file we are going to install.
Property methods: KitFileDisplayToLogical(), KitFileGet(), KitFileIsValid(), KitFileLogicalToDisplay(), KitFileLogicalToOdbc(), KitFileNormalize(), KitFileSet()
property Log as %String [ InitialExpression = "Provision_"_$j_".log" ];
Output log from this session.
Property methods: LogDisplayToLogical(), LogGet(), LogIsValid(), LogLogicalToDisplay(), LogLogicalToOdbc(), LogNormalize(), LogSet()
property ManagerGroup as %String [ InitialExpression = "root" ];
Property methods: ManagerGroupDisplayToLogical(), ManagerGroupGet(), ManagerGroupIsValid(), ManagerGroupLogicalToDisplay(), ManagerGroupLogicalToOdbc(), ManagerGroupNormalize(), ManagerGroupSet()
property Manifest as %String;
Property methods: ManifestDisplayToLogical(), ManifestGet(), ManifestIsValid(), ManifestLogicalToDisplay(), ManifestLogicalToOdbc(), ManifestNormalize(), ManifestSet()
property Password as %String;
Property methods: PasswordDisplayToLogical(), PasswordGet(), PasswordIsValid(), PasswordLogicalToDisplay(), PasswordLogicalToOdbc(), PasswordNormalize(), PasswordSet()
property RemoteOutput as %String;
Output from remote operation
Property methods: RemoteOutputDisplayToLogical(), RemoteOutputGet(), RemoteOutputIsValid(), RemoteOutputLogicalToDisplay(), RemoteOutputLogicalToOdbc(), RemoteOutputNormalize(), RemoteOutputSet()
property SSHHostKey as %String;
Property methods: SSHHostKeyDisplayToLogical(), SSHHostKeyGet(), SSHHostKeyIsValid(), SSHHostKeyLogicalToDisplay(), SSHHostKeyLogicalToOdbc(), SSHHostKeyNormalize(), SSHHostKeySet()
property SSHHostName as %String;
Property methods: SSHHostNameDisplayToLogical(), SSHHostNameGet(), SSHHostNameIsValid(), SSHHostNameLogicalToDisplay(), SSHHostNameLogicalToOdbc(), SSHHostNameNormalize(), SSHHostNameSet()
property SSHPassPhrase as %String;
Property methods: SSHPassPhraseDisplayToLogical(), SSHPassPhraseGet(), SSHPassPhraseIsValid(), SSHPassPhraseLogicalToDisplay(), SSHPassPhraseLogicalToOdbc(), SSHPassPhraseNormalize(), SSHPassPhraseSet()
property SSHPort as %Integer [ InitialExpression = 22 ];
Property methods: SSHPortDisplayToLogical(), SSHPortGet(), SSHPortIsValid(), SSHPortLogicalToDisplay(), SSHPortNormalize(), SSHPortSet()
property SSHPrivateKeyFile as %String;
Property methods: SSHPrivateKeyFileDisplayToLogical(), SSHPrivateKeyFileGet(), SSHPrivateKeyFileIsValid(), SSHPrivateKeyFileLogicalToDisplay(), SSHPrivateKeyFileLogicalToOdbc(), SSHPrivateKeyFileNormalize(), SSHPrivateKeyFileSet()
property SSHPublicKeyFile as %String;
Property methods: SSHPublicKeyFileDisplayToLogical(), SSHPublicKeyFileGet(), SSHPublicKeyFileIsValid(), SSHPublicKeyFileLogicalToDisplay(), SSHPublicKeyFileLogicalToOdbc(), SSHPublicKeyFileNormalize(), SSHPublicKeyFileSet()
property SSPort as %Integer;
Property methods: SSPortDisplayToLogical(), SSPortGet(), SSPortIsValid(), SSPortLogicalToDisplay(), SSPortNormalize(), SSPortSet()
property SecurityType as %String [ InitialExpression = "Minimal" ];
Property methods: SecurityTypeDisplayToLogical(), SecurityTypeGet(), SecurityTypeIsValid(), SecurityTypeLogicalToDisplay(), SecurityTypeLogicalToOdbc(), SecurityTypeNormalize(), SecurityTypeSet()
property Session as %Net.SSH.Session;
Property methods: SessionGet(), SessionGetSwizzled(), SessionIsValid(), SessionNewObject(), SessionSet()
property Sftp as %Net.SSH.SFTP;
Property methods: SftpGet(), SftpGetSwizzled(), SftpIsValid(), SftpNewObject(), SftpSet()
property Status as %Integer;
Property methods: Status(), StatusDisplayToLogical(), StatusGet(), StatusIsValid(), StatusLogicalToDisplay(), StatusNormalize(), StatusSet()
property TempDir as %String [ InitialExpression = "/tmp/cache_install" ];
Temporary directory on the remote machine which we create, and the kit is unpacked to.
The instance name gets appended to this.
Property methods: TempDirDisplayToLogical(), TempDirGet(), TempDirIsValid(), TempDirLogicalToDisplay(), TempDirLogicalToOdbc(), TempDirNormalize(), TempDirSet()
property Unicode as %Boolean [ InitialExpression = 1 ];
Property methods: UnicodeDisplayToLogical(), UnicodeGet(), UnicodeIsValid(), UnicodeLogicalToDisplay(), UnicodeNormalize(), UnicodeSet()
property Upgrade as %Boolean [ InitialExpression = 0 ];
Property methods: UpgradeDisplayToLogical(), UpgradeGet(), UpgradeIsValid(), UpgradeLogicalToDisplay(), UpgradeNormalize(), UpgradeSet()
property Username as %String;
Property methods: UsernameDisplayToLogical(), UsernameGet(), UsernameIsValid(), UsernameLogicalToDisplay(), UsernameLogicalToOdbc(), UsernameNormalize(), UsernameSet()
property WSPort as %Integer;
Property methods: WSPortDisplayToLogical(), WSPortGet(), WSPortIsValid(), WSPortLogicalToDisplay(), WSPortNormalize(), WSPortSet()

Methods

method AuthenticateWithKeyPair() as %Status
Authenticate with the remote server using a public/private key pair and passphrase (for the private key)
method AuthenticateWithUsername() as %Status
Authenticate with the remote server using a username/password via the "password" authentication scheme. Note that this is NOT the same as keyboard-interactive which is typically what login sessions use.
method EMGetGUID(Output GUID As %String) as %Status
method EMManage(CredentialAlias As %String, CAfile As %String, Certfile As %String, Keyfile As %String, cachegrp As %String = "cacheusr", Pass As %String, Host As %String, Port As %Integer, Prefix As %String = "", Description As %String = "") as %Status
Sends an Apply for Management request on behalf of the instance to the specified EM Server.
An X509 Credential alias, and location of X509 Certificates are passed. An X509 Credential corresponding to the Alias is created if it does not already exist.
The EM Manager host, port number, and prefix are used to contact the EM Server.
CredentialAlias - Credential alias to be used.
CAfile - Certificate Authority X.509 certificate file (should also be in the /mgr directory of the instance).
Certfile - Client certificate file.
Keyfile - Client certificate key file.
cachegrp - group owner for the files on target system.
Pass - Client certificate password (if any).
Host - EM host name or IP address.
Port - EM Webserver port number.
Prefix - EM instance URLPrefix (if any).
Description (optional) - User text to describe the Apply for Management request on the EM Server.
method EMManagePass(Host As %String, Port As %Integer, Prefix As %String = "", Description As %String = "") as %Status
Sends an Apply for Management request on behalf of the instance to the specified EM Server based on password policy.
Host - EM host name or IP address.
Port - EM Webserver port number.
Prefix - EM instance URLPrefix (if any).
Description (optional) - User text to describe the Apply for Management request on the EM Server.
method EMRemove() as %Status
Sends an Apply for Management request on behalf of the instance to the specified EM Server.
An X509 Credential alias, and location of X509 Certificates are passed. An X509 Credential corresponding to the Alias is created if it does not already exist.
The EM Manager host, port number, and prefix are used to contact the EM Server.
CredentialAlias - Credential alias to be used.
CAfile - Certificate Authority X.509 certificate file (should also be in the /mgr directory of the instance).
Certfile - Client certificate file.
Keyfile - Client certificate key file.
cachegrp - group owner for the files on target system.
Pass - Client certificate password (if any).
Host - EM host name or IP address.
Port - EM Webserver port number.
Prefix - EM instance URLPrefix (if any).
Description (optional) - User text to describe the Apply for Management request on the EM Server.
method ManageCache(instancename As %String = "", command As %String = "stop", options As %String = "", ByRef Status As %String) as %Status
method Provision() as %Status
Provision the target machine.
User must have sudo privilege on target machine.
cachekitfile - tar file for the cache installation kit.
cachekey (optional) - cache key file.
manifest (optional) - user install manifest file.
At the end, the tarfile has been expanded and is ready for install.
method Status(ByRef Properties As %String, ByRef Response As %String) as %Status
Get status of a Cache instance. Response is one of the following: LongForm = 0 - CACHE^/usr/cachesys^2016.1.0.513.0^running, since Fri Jul 24 10:29:04 2015^cache.cpf^1972^57772^62972^ok^
LongForm = 1 -
Configuration 'CACHE' (default)
directory: /usr/cachesys
versionid: 2016.1.0.513.0
conf file: cache.cpf (SuperServer port = 1972, WebServer = 57772)
status: running, since Fri Jul 24 10:29:04 2015
state: ok
If the instance doesn't exist, then - ccontrol: instance 'CACHE1' not found

Inherited Members

Inherited Methods

FeedbackOpens in a new tab