++Update: August 2, 2018

This article provides a reference architecture as a sample for providing robust performing and highly available applications based on InterSystems Technologies that are applicable to Caché, Ensemble, HealthShare, TrakCare, and associated embedded technologies such as DeepSee, iKnow, Zen and Zen Mojo.

Azure has two different deployment models for creating and working with resources: Azure Classic and Azure Resource Manager. The information detailed in this article is based on the Azure Resource Manager model (ARM).

110
0 4 9,151

In this post I show strategies for backing up Caché using External Backup with examples of integrating with snapshot based solutions. The majority of solutions I see today are deployed on Linux on VMware so a lot of the post shows how solutions integrate VMware snapshot technology as examples.

160
4 21 6,752

Mirroring 101

Caché mirroring is a reliable, inexpensive, and easy to implement high availability and disaster recovery solution for Caché and Ensemble-based applications. Mirroring provides automatic failover under a broad range of planned and unplanned outage scenarios, with application recovery time typically limited to seconds. Logical data replication eliminates storage as a single point of failure and a source of data corruption. Upgrades can be executed with little or no downtime.

90
2 21 4,958

++ Update: August 1, 2018

The use of the InterSystems Virtual IP (VIP) address built-in to Caché database mirroring has certain limitations. In particular, it can only be used when mirror members reside the same network subnet. When multiple data centers are used, network subnets are not often “stretched” beyond the physical data center due to added network complexity (more detailed discussion here). For similar reasons, Virtual IP is often not usable when the database is hosted in the cloud.

Network traffic management appliances such as load balancers (physical or virtual) can be used to achieve the same level of transparency, presenting a single address to the client applications or devices. The network traffic manager automatically redirects clients to the current mirror primary’s real IP address. The automation is intended to meet the needs of both HA failover and DR promotion following a disaster. 

130
1 12 3,561

In this post, I am going to detail how to set up a mirror using SSL, including generating the certificates and keys via the Public Key Infrastructure built in to Caché. The goal of this is to take you from new installations to a working mirror with SSL, including a primary, backup, and DR async member, along with a mirrored database. I will not go into security recommendations or restricting access to the files. This is meant to just simply get a mirror up and running.

40
0 7 1,632
Question
Mikhail Khomenko · Oct 30, 2016
ISCAgent debug

Good day!
Is there an opportunity to debug the ISCAgent behaviour (in Linux)? ISCAgent uses /etc/iscagent/iscagent.conf as configuration file, but in docs I've found a description only for two parameters (port number and interface - http://docs.intersystems.com/latest/csp/docbook/DocBook.UI.Page.cls?KEY=...). Other parameters I can see by running /usr/local/etc/cachesys/ISCAgentCtrl status:

10
0 8 1,255
Question
William Proctor · Mar 23, 2017
problem with Mirroring

Hello,  Thanks in advance for all replies.  I have been practicing setting up mirroring between two development servers in preparation for mirroring our production server in a few weeks.  I started by setting the servers up with minimum security which worked easily, then I set it up in lock down mode again without any issues.  Now I am setting it up in lockdown mode with encryption and this one is testing me.  I have everything setup but my async dr member cannot connect to the primary.

 

from cconsole.log

00
0 14 1,177

Mirror Outage Procedures

Caché mirroring is a reliable, inexpensive and easy to implement high availability and disaster recovery solution for Caché and Ensemble-based applications. This article provides an overview of recommended procedures for dealing with a variety of planned and unplanned mirror outage scenarios.

40
1 0 830

ISCAgent is automatically installed with Cache, runs as a service and can be configured to
start with the system. This is fine – but the complication comes when this is on VCS clusters with
Mirroring on. When installing a Single Instance of Cache in a Cluster, point number 2. Says “Create
a link from /usr/local/etc/cachesys to the shared disk. This forces the Caché registry and all
supporting files to be stored on the shared disk resource you have configured as part of the
service group.”

00
0 14 766

Hi,

Can a Cache Mirror be  used in the cloud ? (ie stand up a Primary and Backup member instances in a High Availability Cache Mirroring configuration) 

I'm investigating the validity of this configuration, because I was of the understanding that this may not possible due to these cloud servers not (typically) having fixed ip addresses, which interferes with the Virtual IP settings for the mirror set.

Is this correct, and if there are workarounds (like Load Balancing ?) can I have details on how this should be configured ?

10
0 8 641

In this article, we’ll build a highly available IRIS configuration using Kubernetes Deployments with distributed persistent storage instead of the “traditional” IRIS mirror pair. This deployment would be able to tolerate infrastructure-related failures, such as node, storage and Availability Zone failures. The described approach greatly reduces the complexity of the deployment at the expense of slightly extended RTO.

170
3 8 521
Question
Joan Cruz · Aug 2, 2016
Use of $ZUTIL(49) is deprecated

Hi all,

I'm using $ZUTIL(49) to get information of the databases I want to add to a mirror. This information is passed to ##class(SYS.Mirror).CatchupDB(plstPathDatabases)  in order to Catchup all databases addes to a Mirror.

00
0 11 509
Question
Rich Taylor · Aug 18, 2016
Read only Async mirror setup

I have setup an async reporting mirror member with Read only access.  My problem is that if I try to do any sql reporting against that data I am getting errors.  I am sure that this is because the DB is read only, but I had assumed that setting up a reporting mirror would handle this.

 

I there a setting or mapping  I am missing?

00
0 7 475

In this post, I am going to detail how to set up a mirror using SSL, including generating the certificates and keys via the Public Key Infrastructure built in to InterSystems IRIS Data Platform. I did a similar post in the past for Caché, so feel free to check that out here if you are not running InterSystems IRIS. Much like the original, the goal of this is to take you from new installations to a working mirror with SSL, including a primary, backup, and DR async member, along with a mirrored database. I will not go into security recommendations or restricting access to the files. This is meant to just simply get a mirror up and running. Example screenshots are taken on a 2018.1.1 version of IRIS, so yours may look slightly different.

60
1 0 460

Hi, would really appreciate your advice on how I can restart the mirror-monitor. I've followed the instructions and restarted the mirror monitor, and still the status seems to be down. Can you point me to some resource or steps that I can follow ?

I logged into %SYS terminal and restarted the mirror monitor and it says that it is running

00
0 9 336
Question
Jon Astle · Nov 9, 2017
Detecting and managing failover

I have Ensemble/Healthshare running in a production environment which is setup with a mirror failover and an arbiter sitting between them.

In the event of a failover we have a number of connections that need stopping/monitoring and starting in a certain order.

Is there a programmatic way we can detect the failover and stop certain services and operations immediately and then start them up again in the required order, checking their connection state before starting the next connection.

00
0 2 325

Hi All

I'm looking for some field experiences, lessons learned, or actual deployed solutions to the problem of replicating non-CACHE.DAT data in a mirrored Cache environment.  

Environment:

  • Operating System is IBM AIX
  • Hardware is IBM Power w/ virtualised storage
  • Cache 2017.1
  • 2x Production mirror members
  • 1x DR mirror member

 

There are a number of different data types that we're looking at mirroring, and a number of identified solutions.  The two main types of data to be mirrored outside of Cache mirroring are:

00
0 1 315

Is it possible to make the cache terminal available over a mirrored vip address for a healthshare mirrored environment? So that connecting to a terminal for a mirrored environment will always connect to the Live Node?

 

I'm looking to write a Powershell script to run against the system and need to connect to the Live Node in a mirrored setup. Is this possible or am I going to have to log onto each node to establish which is Live.  Or does this even matter?

00
0 4 293
Question
Guilherme Silva · Sep 13, 2019
Mirror Problem with SSL

I'm trying to create a simple mirror with two Cachés 2016.2.1.803 Instances,

but after i create the mirror with the primary and try to connect the fallouver server, i receive the following message:

 

ERRO #2071: Erro ao recuperar informações do conjunto espelho para 'BPLUS'. Erro: Connection failed: Unexpected error: <READ>SSLServer+191^MIRRORCTL

i'm not using ssl on this configuration, tried with arbiter and without, same effect.

Tried with Caché 2018.1 and Caché 2016.2.1, same problem.

Some tips?

Best,

00
0 1 285
Question
Joao Palma · Mar 4, 2019
Missing Mirrored Database

Hi guys

I've added a new mirrored failover member to an existing one.

They are both Arbiter controlled.

When I do Add database to mirror on the primary I'm always getting an error. Missing Mirrored database.

I followed everything in the documentation and always get the same error.

I've copied the CACHE.dat file after umounting the database on both servers. then mounted them.

Could you help me out?

 

Kind Regards

00
0 1 282