This topic describes the configuration and settings requirements for Sybase ASE source environments and databases. 

Source environments are servers which contain the source databases from which virtual database copies are made.

Source Host Requirements

  • There must be an operating system user, such as delphix_os, that meets the following requirements:

    • The $SYBASE environment variable is set for non-interactive shells (such as via the .bashrc configuration file).  Set the variable as follows:
      • Set the PermitUserEnvironment configuration parameter to "yes" in the sshd_config file
      • Add the SYBASE variable to the user's .ssh/environment file (for example: SYBASE=/opt/ase157)
      • Restart the SSH daemon
    • Can login to the source host via SSH

    • On Solaris, can run pargs as superuser.  For more information, see Sudo Privilege Requirements for SAP ASE Environments.
    • Designating the Delphix operating system user’s primary group to be the same as the ASE instance’s means the file system permissions can be more restrictive and is a better security practice than granting world read access to the toolkit or the backup files. If the target host is used to host the staging databases, consider the following:

      • If you don’t add the Delphix operating system user to the ASE instance owner’s group, greater permissions will need to be granted to the backup files to ensure read access to the dumps and/or transaction logs. Delphix looks for the backup files on the staging host (unless a "remote" backup server is used in which case, the remote host is used which is often the source environment).

      • If you sync Delphix with a dSource by asking ASE to create a new backup, the ASE instance owner will need write permission to the toolkit (or the mount point if you use the CLI to specify a directory other than the toolkit). Delphix will issue the "DUMP DATABASE" command to write to staging database's "temp" directory which is mounted on the staging host.
      • Has write permission for the mount-point directory (by default the toolkit directory but can be a separate mount point specified in the command line interface).

  • A change was made in ASE 15.7.0 SP100 which made permissions on the backup server log file more restrictive: "rw-r-----" (the permissions had previously been "rw-r--r--"). If the delphix_os user is not the backup server owner or in the same group, the following workaround can be used: How to make the permission settings on ASE's errorlog less restrictive.

  • There must be a directory on the source host where you can install the Delphix Engine toolkit, for example: /var/opt/delphix/Toolkit 
    • The delphix_os user must own the directory
    • The directory must have permissions 0770, for example, -rwxrwx---. However, you can also use more permissive settings.

    • The directory should have 256MB of available storage.

The Delphix Engine must be able to make an ssh connection (for example, TCP port 22) to the source host

Sample Script

USER=delphix_os
GROUP=sybase

if [ ! `grep $USER /etc/passwd` ]
then
  echo "Creating User $USER with no Password"
  adduser --gid $GROUP --home-dir /home/$USER $USER
  mkdir /home/$USER/.ssh
  chmod 755 /home/$USER
  echo "PATH=$PATH:/opt/sybase/ASE15_0/bin; export PATH" >> /home/$USER/.bashrc
  echo "SYBASE=/opt/sybase; export SYBASE" >> /home/$USER/.bashrc
  chown $USER:$GROUP /home/$USER/.ssh
else
  echo "User $USER Already Exists"
fi

if [ ! -d /home/$USER/toolkit ]
then
  echo "Creating Toolkit Directory"
  mkdir /home/$USER/toolkit
  chown $USER:$GROUP /home/$USER/toolkit
  chmod 0770 /home/$USER/toolkit
else
  echo "Toolkit Directory already Exists"
fi

Source Database Requirements

When adding a source ASE environment to Delphix, you may use a single login to discover the ASE instances and link the source databases OR you may use a single login to discover all of the ASE instances and separate logins to link each dSource.

  • Delphix uses a single database user for discovery of all ASE instances and their databases for each environment added to Delphix.

    • The discovery database user (delphix_disc for example) must have SELECT privileges on the following tables for each ASE instance on the source host:

      • sysdatabases

      • sysservers

      • syslisteners

  • Another user must be specified when linking each dSource (delphix_link for example) that has SELECT privileges on the above tables.

    • If you will select New Full Backup when linking, this user must also have privileges to take a new full database dump of the source database. For more information about linking options, see Linking an SAP ASE Data Source.

    • The link database user can be different for each instance and database on the source host.

    • You can also use the delphix_link user for discovery, in which case only one user login needs to be created.


Requirements when resizing source databases

If the source database is resized and trunc log on chkpt is disabled, take a transaction log dump immediately after the resize operation completes. If trunc log on chkpt is enabled, take a full database dump immediately after the resize operation completes.

If multiple resizing operations are performed without taking transaction log dumps between each operation it may be necessary to manually sync the dSource with a new full database dump for Delphix to be able to continue ingesting source database dumps.

Sample Script

sp_addlogin delphix_link, "StrongPassword"
go
sp_adduser delphix_link
go
grant select on sysdatabases to delphix_link
go
grant select on sysservers to delphix_link
go
grant select on syslisteners to delphix_link
go