New post

Find

Announcement
· May 30

[Video] Change Control for HealthShare

Hi Community,

Watch this video to learn about upcoming plans for HealthShare to incorporate change control capabilities for moving configuration changes across environments.  

⏯  Change Control for HealthShare @ Global Summit 2024

Presenters:
🗣 @Keshav Iyer, Principal Developer, InterSystems
🗣 @Timothy Leavitt, Development Manager, InterSystems  

Subscribe to our YouTube channel InterSystems Developers to stay up to date!

Discussion (0)1
Log in or sign up to continue
Article
· May 30 3m read

hc-export-editor: Making Interface Changes to Exports Before Deploying to Prod

Have you ever needed to change an IP or port before deploying an interface to production? Needed to remove items from an export? What about modifying the value(s) in a lookup table before deploying? Have you wanted to disable an interface before deploying? What about adding a comment, category, or alert setting to an interface before deploying to production?

If you’ve ever needed to make any changes to an interface or lookup table before deploying to production, then Export Editor is for you!

Export Editoris a Python/WSGI web application that provides a method for editing exports before deploying them to an IRIS/Health Connect production.

This tool allows you to:

  • change any setting on an interface (whether a Business Service, Process, or Operation)
  • modify any value in a lookup table
  • remove items from an export.

Example Usage

So, how do you use Export Editor?  Follow along with these steps to see how you could use Export Editor to migrate interfaces and tables from a test environment to a prod environment, while changing the configured IP addresses to point to a production server, changing the ports to use the production ports, disabling the interfaces before deploying to prod, and editing table data to appropriate production values.

First, you need to generate an export from an Interoperability Production, most likely from your non-prod environment.

Create an Export

After adding all desired items to the export (and removing any undesired items), save the export to one of the directories you have configured to be read by Export Editor. 

Now, you should be able to open the export from Export Editor.

After opening the export, notice there are several sections.  You can read about each section in the project's documentation (see link below).  For now, let's focus on the "Interface Settings" section.  This allows us to edit any properties for any included Services, Processes, or Operations.  For instance, we can edit the FilePath setting for the HL7FileService that we exported from "/test-filesystem" to "/prod-filesystem".

Using the filter textbox to the top-right of the Interface Settings section, we can filter the settings to only those that include the word "server".  This allows us to focus on specific settings across all interfaces, at once.  Let's change the values from "test-server" to "prod-server".

Likewise, we can use the filter to only show port settings.  Let's change the ports to match the desired production ports of these operations (1111, 2222, 3333 in this example).

Let's change all of the operations' "Enabled" attributes from "true" to "false":

Finally, let's modify the values of the "User.ExampleTable" so that they reference "prod" instead of "test":

Now, click on the "Generate Modified Export" button (or hit "Enter" while in one of the editable fields) and save the modified export to your desired name/location.  Remember this path, as we will use this file to deploy our changes to production.

Now, navigate to your production environment and open the "Interoperability > Manage > Deployment Changes > Deploy" for your production namespace:

Click the "Open Local Deployment" button at the top of the page, and select the modified export you saved in the previous steps:

Verify the deployment includes all of the desired items.  Also, click the "Select Target Production" button on the right-hand side to select your desired production.  When ready, click the "Deploy" button at the top to deploy to your production:

You have now successfully edited and deployed an export!  Verify that your changes were applied to production (i.e. the operations were disabled, the file paths, server names, ports, and table values were updated to the desired values).

More Info

For more information on installing and using Export Editor, check out the hc-export-editor Open Exchange project.

Discussion (0)1
Log in or sign up to continue
Article
· May 30 8m read

VIP en Azure

Si estás ejecutando IRIS en una configuración en mirror para alta disponibilidad (HA) en Azure, la cuestión de proporcionar una Mirror VIP (Virtual IP) es relevante. La Virtual IP ofrece una forma para que los sistemas interactuen con IRIS utilizando una dirección IP. Incluso cuando ocurre un failover, los otros sistemas pueden reconectarse a la misma dirección IP y continuar trabajando.

El problema principal, cuando se despliega en Azure, es que una IRIS VIP tiene el requerimiento de que IRIS sea esencialmente un admin de red, según se indica en la documentación.

Para tener HA, los miembros en mirror de IRIS deben ser desplegados en diferentes zonas de disponibilidad (availability zones o AZ) en una subred (lo que es posible en Azure ya que las subredes pueden abarcar varias zonas). Una de las soluciones puede ser utilizar balanceadores de carga pero, por supuesto, suponen un coste extra, y también necesitarás administrarlos.

En este artículo, quiero proporcionar un modo de configurar una Mirror VIP sin la utilización de balanceadores de carga que se sugiere en la mayoría de las propouestas de arquitectruas de referencia para Azure.

Discussion (0)1
Log in or sign up to continue
Article
· May 30 3m read

How to manage in a CI/CD pipeline an InterSystems API Manager configuration ?

Kong provides an open source configuration management tool (written in Go), called decK (which stands for declarative Kong)

  • Check that decK recognizes your Kong Gateway installation via deck gateway ping
deck gateway ping   
Successfully connected to Kong!
Kong version:  3.4.3.11
  • Export Kong Gateway configuration to a file named "kong.yaml" via deck gateway dump
deck gateway dump -o kong.yaml
  • After modifying the IP adcresses in kong.yaml file, show the differences via deck gateway diff
deck gateway diff kong.yaml

updating service test-iris  {
   "connect_timeout": 60000,
   "enabled": true,
-  "host": "192.168.65.1",
+  "host": "172.24.156.176",
   "id": "8fc9849d-9e61-402d-bcad-c3e611808892",
   "name": "test-iris",
   "port": 9092,
   "protocol": "http",
   "read_timeout": 60000,
   "retries": 5,
   "write_timeout": 60000
 } updating service uct  {
   "connect_timeout": 60000,
   "enabled": true,
-  "host": "192.168.65.1",
+  "host": "172.24.156.176",
   "id": "96ad587e-8921-4d6c-acb7-3f7f7a7cc072",
   "name": "uct",
   "path": "/api/uct/",
   "port": 9092,
   "protocol": "http",
   "read_timeout": 60000,
   "retries": 5,
   "write_timeout": 60000
 } Summary:
  Created: 0
  Updated: 2
  Deleted: 0
deck gateway sync kong.yaml

updating service uct  {
   "connect_timeout": 60000,
   "enabled": true,
-  "host": "192.168.65.1",
+  "host": "172.24.156.176",
   "id": "96ad587e-8921-4d6c-acb7-3f7f7a7cc072",
   "name": "uct",
   "path": "/api/uct/",
   "port": 9092,
   "protocol": "http",
   "read_timeout": 60000,
   "retries": 5,
   "write_timeout": 60000
 } updating service test-iris  {
   "connect_timeout": 60000,
   "enabled": true,
-  "host": "192.168.65.1",
+  "host": "172.24.156.176",
   "id": "8fc9849d-9e61-402d-bcad-c3e611808892",
   "name": "test-iris",
   "port": 9092,
   "protocol": "http",
   "read_timeout": 60000,
   "retries": 5,
   "write_timeout": 60000
 } Summary:
  Created: 0
  Updated: 2
  Deleted: 0
deck gateway dump --workspace workspace1
deck gateway sync workspace1.yaml --workspace workspace1

For more information :

https://docs.konghq.com/deck/get-started

https://docs.konghq.com/deck/reference/faq/

https://github.com/Kong/deck/blob/main/CHANGELOG.md/

1 Comment
Discussion (1)2
Log in or sign up to continue
Article
· May 30 3m read

Comment gérer une configuration InterSystems API Manager dans un pipeline CI/CD ?

Kong fournit en open source un outil de gestion de ses configurations (écrit en Go), appelé decK (pour declarative Kong)

  • Vérifiez que decK reconnaît votre installation Kong Gateway via deck gateway ping
deck gateway ping   
Successfully connected to Kong!
Kong version:  3.4.3.11
  • Exporter la configuration de Kong Gateway dans un fichier "kong.yaml" via deck gateway dump
deck gateway dump -o kong.yaml
  • Après avoir modifié les adresses IP dans le fichier kong.yaml, afficher les différences via deck gateway diff
deck gateway diff kong.yaml

updating service test-iris  {
   "connect_timeout": 60000,
   "enabled": true,
-  "host": "192.168.65.1",
+  "host": "172.24.156.176",
   "id": "8fc9849d-9e61-402d-bcad-c3e611808892",
   "name": "test-iris",
   "port": 9092,
   "protocol": "http",
   "read_timeout": 60000,
   "retries": 5,
   "write_timeout": 60000
 } updating service uct  {
   "connect_timeout": 60000,
   "enabled": true,
-  "host": "192.168.65.1",
+  "host": "172.24.156.176",
   "id": "96ad587e-8921-4d6c-acb7-3f7f7a7cc072",
   "name": "uct",
   "path": "/api/uct/",
   "port": 9092,
   "protocol": "http",
   "read_timeout": 60000,
   "retries": 5,
   "write_timeout": 60000
 } Summary:
  Created: 0
  Updated: 2
  Deleted: 0
deck gateway sync kong.yaml

updating service uct  {
   "connect_timeout": 60000,
   "enabled": true,
-  "host": "192.168.65.1",
+  "host": "172.24.156.176",
   "id": "96ad587e-8921-4d6c-acb7-3f7f7a7cc072",
   "name": "uct",
   "path": "/api/uct/",
   "port": 9092,
   "protocol": "http",
   "read_timeout": 60000,
   "retries": 5,
   "write_timeout": 60000
 } updating service test-iris  {
   "connect_timeout": 60000,
   "enabled": true,
-  "host": "192.168.65.1",
+  "host": "172.24.156.176",
   "id": "8fc9849d-9e61-402d-bcad-c3e611808892",
   "name": "test-iris",
   "port": 9092,
   "protocol": "http",
   "read_timeout": 60000,
   "retries": 5,
   "write_timeout": 60000
 } Summary:
  Created: 0
  Updated: 2
  Deleted: 0
deck gateway dump --workspace workspace1
deck gateway sync workspace1.yaml --workspace workspace1

Pour plus d'informations :

https://docs.konghq.com/deck/get-started

https://docs.konghq.com/deck/reference/faq/

https://github.com/Kong/deck/blob/main/CHANGELOG.md/

Discussion (0)1
Log in or sign up to continue