Back up Sun SPARC servers in the Stromasys Charon-SSP emulator on the AWS Cloud - AWS Prescriptive Guidance

Back up Sun SPARC servers in the Stromasys Charon-SSP emulator on the AWS Cloud

Created by Kevin Yung (AWS), Luis Ramos (Stromasys), and Rohit Darji (AWS)

Environment: Production

Technologies: Storage & backup; Operating systems; DevOps

Workload: Oracle

AWS services: Amazon EFS; Amazon S3; AWS Storage Gateway; AWS Systems Manager; Amazon EC2

Summary

This pattern provides four options for backing up your Sun Microsystems SPARC servers after a migration from an on-premises environment to the Amazon Web Services (AWS) Cloud. These backup options help you to implement a backup plan that meets your organization’s recovery point objective (RPO) and recovery time objective (RTO), uses automated approaches, and lowers your overall operational costs. The pattern provides an overview of the four backup options and steps to implement them.

If you use a Sun SPARC server hosted as a guest on a Stromasys Charon-SSP emulator, you can use one of the following three backup options:

  • Backup option 1: Stromasys virtual tape – Use the Charon-SSP virtual tape feature to set up a backup facility in the Sun SPARC server and archive your backup files to Amazon Simple Storage Service (Amazon S3) and Amazon Simple Storage Service Glacier using AWS Systems Manager Automation

  • Backup option 2: Stromasys snapshot – Use the Charon-SSP snapshot feature to set up a backup facility for the Sun SPARC guest servers in Charon-SSP. 

  • Backup option 3: Amazon Elastic Block Store (Amazon EBS) volume snapshot  If you host the Charon-SSP emulator on Amazon Elastic Compute Cloud (Amazon EC2), you can use an Amazon EBS volume snapshot to create backups for a Sun SPARC file system. 

If you use a Sun SPARC server hosted as a guest on hardware and Charon-SSP on Amazon EC2, you can use the following backup option:

  • Backup option 4: AWS Storage Gateway virtual tape library (VTL) – Use a backup application with a Storage Gateway VTL Tape Gateway to back up the Sun SPARC servers. 

If you use a Sun SPARC server hosted as a branded zone in a Sun SPARC server, you can use backup options 1, 2, and 4.

Stromasys provides software and services to emulate legacy SPARC, Alpha, VAX, and PA-RISC critical systems. For more information about migrating to the AWS Cloud using Stromasys emulation, see Rehosting SPARC, Alpha, or other legacy systems to AWS with Stromasys on the AWS Blog.  

Prerequisites and limitations

Prerequisites 

  • An active AWS account. 

  • Existing Sun SPARC servers.

  • Existing licenses for Charon-SSP. Licenses for Charon-SSP are available from AWS Marketplace and licenses for Stromasys Virtual Environment (VE) are available from Stromasys. For more information, contact Stromasys sales.

  • Familiarity with Sun SPARC servers and Linux backups. 

  • Familiarity with Charon-SSP emulation technology. For more information about this, see Stromasys legacy server emulation in the Stromasys documentation.

  • If you want to use the virtual tape facility or backup applications for your Sun SPARC servers file systems, you must create and configure the backup facilities for the Sun SPARC server file system. 

  • An understanding of RPO and RTO. For more information about this, see Disaster recovery objectives from the Reliability Pillar whitepaper in the AWS Well-Architected Framework documentation. 

  • To use Backup option 4, you must have the following: 

    • A software-based backup application that supports a Storage Gateway VTL Tape Gateway. For more information about this, see Working with VTL devices in the AWS Storage Gateway documentation. 

    • Bacula Director or a similar backup application, installed and configured. For more information about this, see the Bacula Director documentation.

The following table provides information about the four backup options in this pattern.

Backup options

Achieves crash consistency?

Achieves application consistency?

Virtual backup appliance solution?

Typical use cases

Option 1 – Stromasys virtual tape 

Yes

You can automate Sun SPARC file system snapshots to back up data in a virtual tape. For example, you can use UFS or ZFS snapshots.

Yes

This backup option requires an automated script to flush in-flight transactions, configure a read-only or temporary offline mode during the file system snapshot, or take an application data dump. You might also require application downtime or read-only mode.

Yes

Sun SPARC server file systems backup with .tar or .zip files

Application data backup

Option 2 – Stromasys snapshot 

Yes

You must configure Charon-SSP Manager or use a command-line startup argument to enable this feature.

You must also run a Linux command to ask the Charon-SSP emulator to save the Sun SPARC guest server state into a snapshot file.

Important: You must shut down the Sun SPARC guest server. 

Yes

This backup option creates a snapshot of the emulated guest server, including its virtual disks and memory dump. 

Important: You must shut down the Sun SPARC guest server during the snapshot.

No

Sun SPARC server snapshot

Application data backup

Option 3 – Amazon EBS volume snapshot 

Yes

You can use AWS Backup to automate the Amazon EBS snapshot.

Yes

This backup option requires an automated script to flush in-flight transactions and configure a read-only or temporary stop of the EC2 instance during the Amazon EBS volume snapshot.  

Important: This backup option might require application downtime or read-only mode to achieve application consistency.

 

No

Sun SPARC server file systems snapshot

Application data backup

Option 4 – AWS Storage Gateway VTL

Yes

You can automatically back up Sun SPARC file system backup data to the VTL by using a backup agent.

Yes

This backup option requires an automated script to flush in-flight transactions and configure a read-only or temporary offline mode during the file system snapshot or application data dump.

Important: This backup option might require application downtime or read-only mode.

Yes

A large fleet of Sun SPARC server file system backups

Application data backup

Limitations

  • You can use this pattern's approaches to back up individual Sun SPARC servers, but you can also use these backup options for shared data if you have applications that run in a cluster.

Tools

Backup option 1: Stromasys virtual tape

  • Stromasys Charon-SSP emulator – Charon-SSP emulator creates the virtual replica of the original SPARC hardware inside a standard 64-bit x86 compatible computer system. It runs the original SPARC binary code, including operating systems (OSs) such as SunOS or Solaris, their layered products, and applications.

  • Amazon EC2 – Amazon Elastic Compute Cloud (Amazon EC2) is a web service that provides resizable computing capacity that you use to build and host your software systems.

  • Amazon EFS – Amazon Elastic File System (Amazon EFS) provides a simple, serverless, set-and-forget elastic file system for use with AWS Cloud services and on-premises resources.

  • Amazon S3 – Amazon Simple Storage Service (Amazon S3) is storage for the internet. 

  • Amazon S3 Glacier – Amazon Simple Storage Service Glacier is a secure, durable, and extremely low-cost Amazon S3 storage class for data archiving and long-term backup.

  • AWS Systems Manager Automation – Automation, a capability of AWS Systems Manager, simplifies common maintenance and deployment tasks of EC2 instances and other AWS resources.

 

Backup option 2: Stromasys snapshot

  • Stromasys Charon-SSP emulator – Charon-SSP emulator creates the virtual replica of the original SPARC hardware inside a standard 64-bit x86 compatible computer system. It runs the original SPARC binary code, including OSs such as SunOS or Solaris, their layered products, and applications.

  • Amazon EC2 – Amazon Elastic Compute Cloud (Amazon EC2) is a web service that provides resizable computing capacity that you use to build and host your software systems.

  • Amazon EFS – Amazon Elastic File System (Amazon EFS) provides a simple, serverless, set-and-forget elastic file system for use with AWS Cloud services and on-premises resources.

  • Amazon S3 – Amazon Simple Storage Service (Amazon S3) is storage for the internet. 

  • Amazon S3 Glacier – Amazon Simple Storage Service Glacier is a secure, durable, and extremely low-cost Amazon S3 storage class for data archiving and long-term backup.

  • AWS Systems Manager Automation – Automation, a capability of AWS Systems Manager, simplifies common maintenance and deployment tasks of EC2 instances and other AWS resources.

 

Backup option 3: Amazon EBS volume snapshot

  • Stromasys Charon-SSP emulator – Charon-SSP emulator creates the virtual replica of the original SPARC hardware inside a standard 64-bit x86 compatible computer system. It runs the original SPARC binary code, including OSs such as SunOS or Solaris, their layered products, and applications.

  • AWS Backup – AWS Backup is a fully-managed data protection service that makes it easy to centralize and automate across AWS services, in the cloud, and on premises.

  • Amazon EBS – Amazon Elastic Block Store (Amazon EBS) provides block level storage volumes for use with EC2 instances.

  • Amazon EC2 – Amazon Elastic Compute Cloud (Amazon EC2) is a web service that provides resizable computing capacity that you use to build and host your software systems.

 

Backup option 4: AWS Storage Gateway VTL

  • Stromasys Charon-SSP emulator – Charon-SSP emulator creates the virtual replica of the original SPARC hardware inside a standard 64-bit x86 compatible computer system. It runs the original SPARC binary code, including OSs such as SunOS or Solaris, their layered products, and applications.

  • Bacula – Bacula is an open-source, enterprise-level computer backup system. For more information about whether your existing backup application supports Tape Gateway, see Supported third-party backup applications for a Tape Gateway in the AWS Storage Gateway documentation. 

  • Amazon EC2 – Amazon Elastic Compute Cloud (Amazon EC2) is a web service that provides resizable computing capacity that you use to build and host your software systems.

  • Amazon RDS for MySQL – Amazon Relational Database Service (Amazon RDS) supports DB instances running several versions of MySQL. 

  • Amazon S3 – Amazon Simple Storage Service (Amazon S3) is storage for the internet. 

  • Amazon S3 Glacier – Amazon Simple Storage Service Glacier is a secure, durable, and extremely low-cost Amazon S3 storage class for data archiving and long-term backup.

  • AWS Storage Gateway – Storage Gateway connects an on-premises software appliance with cloud-based storage to provide seamless integration with data security features between your on-premises IT environment and the AWS storage infrastructure.

Epics

TaskDescriptionSkills required

Create an Amazon EFS shared file system for virtual tape file storage.

Sign in to the AWS Management Console or use AWS CLI to create an Amazon EFS file system.

For more information about this, see Create an Amazon EFS file system in the Amazon EFS documentation.

Cloud architect

Configure the Linux host to mount the shared file system.

Install the Amazon EFS driver on the Amazon EC2 Linux instance and configure the Linux OS to mount the Amazon EFS shared file system during startup.

For more information about this, see Mounting file systems using the EFS mount helper in the Amazon EFS documentation.

DevOps engineer

Install the Charon-SSP emulator.

Install the Charon-SSP emulator on the Amazon EC2 Linux instance.

For more information about this, see Setting up an AWS Cloud instance for Charon-SSP in the Stromasys documentation.

DevOps engineer

Create a virtual tape file container in the shared file system for each Sun SPARC guest server.

Run the touch <vtape-container-name> command to create a virtual tape file container in the shared file system for each Sun SPARC guest server deployed in the Charon-SSP emulator.

DevOps engineer

Configure Charon-SSP Manager to create virtual tape devices for the Sun SPARC guest servers.

Log in to Charon-SSP Manager, create virtual tape devices, and configure them to use the virtual tape container files for each Sun SPARC guest server.

For more information about this, see the Charon-SSP 5.2 for Linux user guide in the Stromasys documentation.

DevOps engineer

Validate that the virtual tape device is available in the Sun SPARC guest servers.

Log in to each Sun SPARC guest server and run the mt -f /dev/rmt/1 command to validate that the virtual tape device is configured in the OS.

DevOps engineer

Develop the Systems Manager Automation runbook and automation.

Develop the Systems Manager Automation runbook and set up maintenance windows and associations in Systems Manager for scheduling the backup process.

For more information about this, see Automation walkthroughs and Setting up maintenance windows in the AWS Systems Manager documentation.

Cloud architect

Configure Systems Manager Automation to archive rotated virtual tape container files.

Use the code sample from Back option 1 in the Additional information section to develop a Systems Manager Automation runbook to archive rotated virtual tape container files to Amazon S3 and Amazon S3 Glacier.

Cloud architect

Deploy the Systems Manager Automation runbook for archiving and scheduling.

Deploy the Systems Manager Automation runbook and schedule it to automatically run in Systems Manager.

For more information about this, see Automation walkthroughs in the Systems Manager documentation.

Cloud architect
TaskDescriptionSkills required

Create an Amazon EFS shared file system for virtual tape file storage.

Sign in to the AWS Management Console or use AWS CLI to create an Amazon EFS file system.

For more information about this, see Create your Amazon EFS file system in the Amazon EFS documentation.

Cloud architect

Configure the Linux host to mount the shared file system.

Install the Amazon EFS driver in the Amazon EC2 Linux instance and configure the Linux OS to mount the Amazon EFS shared file system during startup.

For more information about this, see Mounting file systems using the EFS mount helper in the Amazon EFS documentation. 

DevOps engineer

Install the Charon-SSP emulator.

Install the Charon-SSP emulator on the Amazon EC2 Linux instance.

For more information about this, see Setting up an AWS Cloud instance for Charon-SSP in the Stromasys documentation.

DevOps engineer

Configure the Sun SPARC guest servers to start up with the snapshot option.

Use Charon-SSP Manager to set up the snapshot option for each Sun SPARC guest servers.

For more information about this, see the Charon-SSP 5.2 for Linux user guide in the Stromasys documentation.  

DevOps engineer

Develop the Systems Manager Automation runbook.

Use the code sample from Backup option 2 in the Additional information section to develop a Systems Manager Automation runbook to remotely run the snapshot command on a Sun SPARC guest server during a maintenance window.

Cloud architect

Deploy the Systems Manager Automation runbook and set up the association to the Amazon EC2 Linux hosts.

Deploy the Systems Manager Automation runbook and set up maintenance windows and associations in Systems Manager for scheduling the backup process.

For more information about this, see Automation walkthroughs and Setting up Maintenance Windows in the AWS Systems Manager documentation.

Cloud architect

Archive snapshots into long-term storage.

Use the runbook sample code from the Additional information section to develop a Systems Manager Automation runbook to archive snapshot files to Amazon S3 and Amazon S3 Glacier.

Cloud architect
TaskDescriptionSkills required

Install the Charon-SSP emulator.

Install the Charon-SSP emulator on the Amazon EC2 Linux instance.

For more information about this, see Setting up an AWS Cloud instance for Charon-SSP in the Stromasys documentation. 

DevOps engineer

Create EBS volumes for the Sun SPRAC guest servers.

Sign in to the AWS Management Console, open the Amazon EBS console, and then create EBS volumes for the Sun SPRAC guest servers.

For more information about this, see Setting up an AWS Cloud instance for Charon-SSP in the Stromasys documentation.

Cloud architect

Attach the EBS volumes to the Amazon EC2 Linux instance.

On the Amazon EC2 console, attach the EBS volumes to the Amazon EC2 Linux instance.

For more information about this, see Attach an Amazon EBS volume to an instance in the Amazon EC2 documentation.

AWS DevOps

Map EBS volumes as SCSI drives in the Charon-SSP emulator.

Configure Charon-SSP Manager to map the EBS volumes as SCSI drives in the Sun SPARC guest servers.

For more information about this, see the SCSI storage configuration section of the Charon-SSP V5.2 for Linux guide in the Stromasys documentation.

AWS DevOps

Configure the AWS Backup schedule for snapshotting the EBS volumes.

Set up AWS Backup policy and schedules to snapshot the EBS volumes.

For more information about this, see the Amazon EBS backup and restore using AWS Backup tutorial in the AWS Developer Center documentation.

AWS DevOps
TaskDescriptionSkills required

Create a Tape Gateway device.

Sign in to the AWS Management Console, open the AWS Storage Gateway console, and then create a Tape Gateway device in a VPC.

For more information about this, see Creating a gateway in the AWS Storage Gateway documentation.

Cloud architect

Create an Amazon RDS DB instance for the Bacula Catalog.

Open the Amazon RDS console and create an Amazon RDS for MySQL DB instance.

For more information about this, see Creating a MySQL DB instance and connecting to a database on a MySQL DB instance in the Amazon RDS documentation.

Cloud architect

Deploy the backup application controller in the VPC.

Install Bacula on the EC2 instance, deploy the backup application controller, and then configure the backup storage to connect with the Tape Gateway device. You can use the sample Bacula Director storage daemon configuration in the Bacula-storage-daemon-config.txt file (attached).

For more information about this, see the Bacula documentation.

AWS DevOps

Set up backup application on the Sun SPARC guest servers.

Set up a second client to install and set up the backup application on the Sun SPARC guest servers by using the sample Bacula configuration in the SUN-SPARC-Guest-Bacula-Config.txt file (attached).

DevOps engineer

Set up the backup configuration and schedule.

Set up backup configuration and schedules in the backup application controller by using the sample Bacula Director configuration in the Bacula-Directory-Config.txt file (attached).

For more information about this, see the Bacula documentation.  

DevOps engineer

Validate that the backup configuration and schedules are correct.

Follow the instruction from the Bacula documentation to perform the validation and backup testing for your setup in the Sun SPARC guest servers.

For example, you can use the following commands to validate the configuration files:

  • bacula-dir -t -c bacula-dir.conf

  • bacula-fd -t -c bacula-fd.conf

  • bacula-sd -t -c bacula-sd.conf

DevOps engineer

Related resources

Additional information

Backup option 1 – Create a Stromasys virtual tape 

You can use the following sample Systems Manager Automation runbook code to automatically start the backup and then swap the tapes:

... # example backup script saved in SUN SPARC Server #!/usr/bin/bash mt -f rewind tar -cvf mt -f offline ... mainSteps: - action: aws:runShellScript name: inputs: onFailure: Abort timeoutSeconds: "1200" runCommand: - | # Validate tape backup container file exists if [ ! -f {{TapeBackupContainerFile}} ]; then logger -s -p local3.warning "Tape backup container file is not exists - {{TapeBackupContainerFile}}, create a new one" touch {{TapeBackupContainerFile}} fi - action: aws:runShellScript name: startBackup inputs: onFailure: Abort timeoutSeconds: "1200" runCommand: - | user={{BACKUP_USER}} keypair={{KEYPAIR_PATH}} server={{SUN_SPARC_IP}} backup_script={{BACKUP_SCRIPT}} ssh -i $keypair $user@$server -c "/usr/bin/bash $backup_script" - action: aws:runShellScript name: swapVirtualDiskContainer inputs: onFailure: Abort timeoutSeconds: "1200" runCommand: - | mv {{TapeBackupContainerFile}} {{TapeBackupContainerFile}}.$(date +%s) touch {{TapeBackupContainerFile}} - action: aws:runShellScript name: uploadBackupArchiveToS3 inputs: onFailure: Abort timeoutSeconds: "1200" runCommand: - | aws s3 cp {{TapeBackupContainerFile}} s3://{{BACKUP_BUCKET}}/{{SUN_SPARC_IP}}/$(date '+%Y-%m-%d')/ ...

Backup option 2 –  Stromasys snapshot 

 You can use the following sample Systems Manager Automation runbook code to automate the backup process:

      ... mainSteps: - action: aws:runShellScript name: startSnapshot inputs: onFailure: Abort timeoutSeconds: "1200" runCommand: - | # You may consider some graceful stop of the application before taking a snapshot # Query SSP PID by configuration file # Example: ps ax | grep ssp-4 | grep Solaris10.cfg | awk '{print $1" "$5}' | grep ssp4 | cut -f1 -d" " pid=`ps ax | grep ssp-4 | grep {{SSP_GUEST_CONFIG_FILE}} | awk '{print $1" "$5}' | grep ssp4 | cut -f1 -d" "` if [ -n "${pid}" ]; then kill -SIGTSTP ${pid} else echo "No PID found for SPARC guest with config {{SSP_GUEST_CONFIG_FILE}}" exit 1 fi - action: aws:runShellScript name: startBackup inputs: onFailure: Abort timeoutSeconds: "1200" runCommand: - | # upload snapshot and virtual disk files into S3 aws s3 sync {{SNAPSHOT_FOLDER}} s3://{{BACKUP_BUCKET}}/$(date '+%Y-%m-%d')/ aws s3 cp {{VIRTUAL_DISK_FILE}} s3://{{BACKUP_BUCKET}}/$(date '+%Y-%m-%d')/ - action: aws:runShellScript name: restratSPARCGuest inputs: onFailure: Abort timeoutSeconds: "1200" runCommand: - | /opt/charon-ssp/ssp-4u/ssp4u -f {{SSP_GUEST_CONFIG_FILE}} -d -a {{SPARC_GUEST_NAME}} --snapshot {{SNAPSHOT_FOLDER}} ...

Backup option 4 – AWS Storage Gateway VTL

If you use Solaris non-global zones to run virtualized legacy Sun SPARC servers, the backup application approach can be applied to non-global zones running in the Sun SPARC servers (for example, the backup client can run inside the non-global zones). However, the backup client can also run in the Solaris host and take snapshots of the non-global zones. The snapshots can then be backed up on a tape.

The following sample configuration adds the file system that hosts the Solaris non-global zones into the backup configuration for the Solaris host:

FileSet { Name = "Branded Zones" Include { Options { signature = MD5 } File = /zones } }

Attachments

To access additional content that is associated with this document, unzip the following file: attachment.zip