Editar

Compartilhar via


SMA OpCon no Azure

AKS (Serviço de Kubernetes do Azure)
Link Privado do Azure
Banco de Dados SQL do Azure
Armazenamento do Azure
Gateway de VPN do Azure

Ideias de soluções

Este artigo descreve uma ideia de solução. Seu arquiteto de nuvem pode usar essa orientação para ajudar a visualizar os principais componentes para uma implementação típica dessa arquitetura. Use este artigo como ponto de partida para projetar uma solução bem arquitetada que se alinhe aos requisitos específicos de sua carga de trabalho.

Este artigo apresenta uma solução para automatizar cargas de trabalho executadas em vários tipos de servidores e sistemas em uma empresa. A solução usa o OpCon da SMA Technologies em uma configuração do Kubernetes no Azure. A partir de um ponto único de controle de automação, o OpCon facilita fluxos de trabalho na empresa, seja no local ou no Azure.

Arquitetura

Diagrama de arquitetura que mostra como implantar o OpCon no Azure ou em um ambiente híbrido. Além do OpCon, os componentes incluem o Banco de Dados SQL e o Gateway de VPN.

Baixe um Arquivo Visio dessa arquitetura.

Workflow

  1. Um contêiner OpCon oferece serviços básicos, que são implantados no Serviço de Kubernetes do Azure (AKS). Esses serviços básicos incluem o Solution Manager, uma interface de usuário baseada na Web. Os usuários podem interagir com o ambiente OpCon inteiro por meio do Solution Manager. Além de outros componentes, o ambiente inclui:

    • Volumes persistentes que armazenam logs e informações de configuração e fornecem persistência de dados em reinicializações de contêiner. Para esses volumes, a solução usa Arquivos do Azure. Isso está configurado no valor StorageClass.
    • O banco de dados OpCon.
    • Máquinas virtuais (VMs) que executam cargas de trabalho.
  2. A solução usa o Banco de Dados SQL do Azure como o OpCon. Os serviços básicos têm acesso a esse banco de dados usando um ponto de extremidade privado do Link Privado do Azure.

  3. Os serviços básicos do OpCon usam a tecnologia de conector OpCon para interagir com o Armazenamento do Azure e gerenciar dados no Armazenamento de Blobs do Azure. A Transferência de Arquivos Gerenciada OpCon também dá suporte ao armazenamento.

  4. A sub-rede Aplicativos contém um servidor de Transferência de Arquivos Gerenciada OpCon que oferece funcionalidade de transferência de arquivos abrangente. Os recursos incluem compactação, criptografia, descriptografia, descompactação, observação de arquivo e roteamento de arquivos automatizado em nível empresarial.

  5. As VMs do Azure constituem a infraestrutura do aplicativo. Há flexibilidade no posicionamento dessas VMs em sub-redes e redes virtuais. Para saber mais, confira Posicionamento de componente.

    • Para gerenciar cargas de trabalho nessas VMs e sistemas herdados locais, os serviços básicos do OpCon se comunicam com agentes OpCon instalados nas VMs. Os serviços básicos se comunicam com sistemas locais usando uma conexão site a site em um gateway de rede virtual.
    • Os serviços básicos do OpCon se comunicam diretamente com aplicativos que fornecem pontos de extremidade da API REST. Esses aplicativos não precisam de software adicional para se conectar aos serviços básicos. Com sistemas locais, a comunicação usa opções de conectividade da API REST e ocorre via um gateway de rede virtual.
  6. Em um ambiente híbrido, a sub-rede Gateway usa um túnel VPN site a site para ajudar a proteger a conexão entre o ambiente local e o ambiente de nuvem do Azure.

  7. O gateway inclui uma conexão de túnel VPN IPsec/IKE entre locais: entre o Gateway de VPN do Azure e um dispositivo VPN local. Todos os dados transferidos entre a nuvem do Azure e o ambiente local são criptografados nesse túnel privado site a site conforme passam pela Internet.

  8. Um gateway de rede local no ambiente local representa o gateway na extremidade local do túnel. O gateway de rede local contém informações de configuração necessárias para criar um túnel VPN e rotear o tráfego de ou para sub-redes locais.

  9. Todas as solicitações do usuário são roteadas por meio da conexão de gateway com o ambiente de serviços principais do OpCon. Por meio desse acesso, os usuários interagem com o Solution Manager para:

    • Administração de OpCon.
    • Administração de Transferência de Arquivos Gerenciada OpCon.
    • Desenvolvimento, execução e monitoramento do fluxo de trabalho OpCon.
    • Autoatendimento, uma interface OpCon para execução de tarefas.
    • Visão, o painel de tarefas do OpCon.
    • OpCon Managed File Transfer Central Application, um aplicativo de painel e consulta.
  10. Os agentes OpCon e os pontos de extremidade da API REST do aplicativo são instalados em sistemas herdados no ambiente local. Os serviços principais do OpCon usam a conexão site a site no gateway de rede virtual para se comunicar com esses agentes e pontos de extremidade.

Em toda a solução, você pode usar grupos de segurança de rede para limitar o fluxo de tráfego entre sub-redes.

Componentes

  • As Máquinas Virtuais do Azure são um dos vários tipos de recursos de computação sob demanda escalonáveis oferecidos pelo Azure. Uma VM do Azure oferece à você a flexibilidade da virtualização, mas elimina as demandas de manutenção do hardware físico. Com o Azure, você pode escolher VMs do Windows ou do Linux.

  • A Rede Virtual do Microsoft Azure é o bloco de construção fundamental de sua rede privada no Azure. Por meio da Rede Virtual, os recursos do Azure, como as VMs, podem se comunicar com segurança entre si, com a Internet e com as redes locais. Uma rede virtual do Azure é como uma rede tradicional que opera em um datacenter. No entanto, uma rede virtual do Azure também fornece escalabilidade, disponibilidade, isolamento e outros benefícios da infraestrutura do Azure.

  • O Link Privado fornece um ponto de extremidade privado em uma rede virtual. E possível usar o ponto de extremidade privado para se conectar a serviços de PaaS (plataforma como serviço) do Azure, como o Armazenamento e o Banco de Dados SQL, ou a serviços de clientes ou parceiros.

  • O Armazenamento oferece armazenamento em nuvem altamente disponível, escalonável e seguro para dados, aplicativos e cargas de trabalho.

  • Arquivos do Azure é um serviço que faz parte do Armazenamento. Os Arquivos do Azure oferecem compartilhamentos de arquivo totalmente gerenciados na nuvem que são acessíveis por meio do protocolo SMB padrão do setor. Os compartilhamentos de arquivos do Azure podem ser montados simultaneamente por implantações locais ou na nuvem de clientes do Windows, do Linux e do macOS.

  • O Armazenamento de Blobs é um serviço que faz parte do Armazenamento. O Armazenamento de Blobs oferece armazenamento otimizado de objetos de nuvem para grandes quantidades de dados não estruturados. Este serviço é uma boa opção para cargas de trabalho nativas de nuvem, aprendizado de máquina e computação de alto desempenho.

  • Gateway de VPN é um tipo específico de gateway de rede virtual. Você pode usar o Gateway de VPN para transmitir tráfego criptografado. Esse tráfego pode fluir entre uma rede virtual do Azure e uma localização local pela internet pública. Ele também pode fluir entre redes virtuais do Azure pela rede de backbone do Azure.

  • O Azure ExpressRoute estende suas redes locais até a nuvem da Microsoft usando uma conexão privada que é facilitada por um provedor de conectividade. Com o ExpressRoute, você pode estabelecer conexões com serviços de nuvem, como o Microsoft Azure e o Microsoft 365.

  • O Azure Site Recovery ajuda a garantir a continuidade dos negócios mantendo os aplicativos de negócios e as cargas de trabalho em execução durante interrupções. O Site Recovery pode replicar cargas de trabalho executadas em máquinas físicas e VMs de um site primário para um local secundário. Quando ocorre uma interrupção em seu site primário, você faz o failover para um local secundário e acessa os aplicativos de lá. Depois que a localização primária estiver novamente em execução, você poderá fazer failback a ela.

  • O SQL do Azure é uma família de bancos de dados do Azure que são alimentados pelo mecanismo do SQL Server. O SQL do Azure inclui o SQL Server em Máquinas Virtuais do Azure, a Instância Gerenciada de SQL do Azure e o Banco de dados SQL.

  • O Banco de Dados SQL é um mecanismo de banco de dados PaaS totalmente gerenciado com recursos automatizados e da plataforma IA. O back-end do OpCon pode usar o Banco de dados SQL para gerenciar entradas do OpCon.

  • A Instância Gerenciada de SQL é um serviço de banco de dados de nuvem inteligente e escalonável que associa a compatibilidade mais ampla de mecanismo do SQL Server com todos os benefícios de uma PaaS perene e totalmente gerenciada. O back-end do OpCon pode usar a Instância Gerenciada do SQL para gerenciar entradas do OpCon.

  • Os serviços principais do OpCon são executados em um contêiner Linux em um conjunto de réplicas do Kubernetes. Esta solução usa o Banco de dados SQL para o banco de dados OpCon.

  • O OpCon Self Service é uma implementação baseada na Web que fornece uma maneira para os usuários executarem tarefas sob demanda e, opcionalmente, inserirem argumentos em um ambiente OpCon.

  • O OpCon Vision fornece um painel para monitorar tarefas do OpCon. O painel exibe uma representação lógica das tarefas em todos os fluxos. O Vision usa marcas para agrupar tarefas associadas. Em caso de problemas, você pode fazer uma busca detalhada do painel para as tarefas com falhas. O Vision também fornece uma maneira de definir valores de SLA para cada grupo. O painel oferece aviso antecipado quando os valores de SLA definidos não são atendidos.

  • O OpCon Managed File Transfer fornece serviços gerenciados de transferência de arquivos em um ambiente OpCon. A solução OpCon Managed File Transfer fornece funcionalidade de transferência e monitoramento de arquivos em toda a empresa usando um agente de transferência de arquivos gerenciado integrado e um servidor de transferência de arquivos.

Alternativas

As seções a seguir descrevem alternativas a serem consideradas ao implementar a solução.

Posicionamento de componentes

O posicionamento das VMs e do banco de dados OpCon é flexível.

  • A sub-rede do aplicativo pode incluir as VMs do aplicativo. Também é possível instalar os servidores de aplicativos em várias sub-redes ou redes virtuais. Use essa abordagem quando desejar criar ambientes separados para tipos de servidores distintos, como servidores Web e de aplicativos.
  • Você pode colocar o banco de dados dentro ou fora da sub-rede OpCon.

Instância Gerenciada de SQL

Em vez de usar o Banco de Dados SQL, você pode usar a Instância Gerenciada SQL como o banco de dados OpCon. Você pode instalar a instância gerenciada do SQL na sub-rede OpCon. Outra opção é instalar a instância gerenciada em uma sub-rede separada que você usa exclusivamente para instâncias gerenciadas SQL na rede virtual existente.

ExpressRoute

Em vez de usar o Gateway VPN e um túnel VPN site a site, você pode usar a Rota Expressa, que usa um provedor de conectividade para estabelecer uma conexão privada com a rede global da Microsoft. As conexões do ExpressRoute não passam pela Internet pública.

Recomendamos o ExpressRoute para aplicativos híbridos que executam cargas de trabalho essenciais para os negócios em grande escala que necessitam de um alto grau de escalabilidade e resiliência.

Detalhes do cenário

O módulo principal do OpCon que facilita as cargas de trabalho é o SAM (Monitor de Atividade de Agendamento). Este módulo se comunica com agentes em sistemas de destino para agendar e monitorar tarefas. O SAM também recebe eventos externos. Você pode instalar agentes OpCon nas seguintes plataformas:

  • Windows
  • Linux ou Unix
  • Mainframes Unisys ClearPath Forward (MCP e 2200)
  • z/OS da IBM
  • IBM AIX

O SAM reúne as diversas plataformas sob uma égide de automação.

Você pode instalar o OpCon em um ambiente de nuvem do Azure. O OpCon oferece suporte a infraestruturas somente em nuvem e também a infraestruturas híbridas contendo sistemas locais e em nuvem.

O software OpCon está disponível no Docker Hub como imagens do Docker que você pode implantar em um ambiente de nuvem. Para a nuvem do Azure, essa solução usa o AKS para implantar o ambiente OpCon em um cluster do Kubernetes. O Banco de dados SQL é usado como o banco de dados.

Para ambientes híbridos, o Gateway de VPN fornece um link seguro entre a infraestrutura de nuvem e a infraestrutura local.

A implementação usa uma única rede virtual e várias sub-redes para dar suporte a várias funções. É possível usar grupos de segurança de rede para filtrar o tráfego de rede entre recursos do Azure na rede virtual.

Configuração AKS

O ambiente OpCon implantado consiste em dois pods em um único conjunto de réplicas e uma instância do Banco de dados SQL. Um balanceador de carga controla o acesso aos pods. O balanceador de carga mapeia endereços e portas externas para endereços e portas internas do servidor da API REST.

O diagrama a seguir mostra os requisitos de configuração para um ambiente com dois pods: OpCon e Impex2. O diagrama também mostra a relação entre várias definições no arquivo YAML de configuração do Kubernetes.

Diagrama de arquitetura que mostra os valores de configuração do Kubernetes que a solução usa.

Baixe um Arquivo Visio dessa arquitetura.

A tabela a seguir fornece informações detalhadas sobre cada definição.

Tipo Valor Descrição
Secret dbpasswords Contém as senhas de banco de dados necessárias para se conectar ao banco de dados OpCon.
ConfigMap opcon Contém as informações da API REST do OpCon, o fuso horário e as informações de idioma. Também contém informações de banco de dados OpCon, como o endereço, o nome do banco de dados e o usuário do banco de dados.
ConfigMap impex Contém as informações da API REST do Impex2. Também contém informações de banco de dados OpCon, como o endereço, o nome do banco de dados e o usuário do banco de dados.
PersistentVolumeClaim opconconfig Contém vários arquivos .ini e o arquivo de licença OpCon.
PersistentVolumeClaim opconlog Contém os arquivos de log associados ao ambiente OpCon.
PersistentVolumeClaim impexlog Contém os arquivos de log associados ao ambiente Impex2.
ReplicaSet opcon Especifica as definições de contêiner OpCon e Impex2 que referenciam as pré-definições de Secret, ConfigMap e PersistentVolumeClaim.
Service loadbalancer Define o mapeamento das portas internas da API REST para os servidores OpCon e Impex2 REST para endereços e portas externas.

Possíveis casos de uso

Muitos cenários podem se beneficiar desta solução:

  • Automação e orquestração de carga de trabalho na empresa de TI inteira
  • Automação de recuperação de desastre
  • Transferências de arquivos multiplataforma
  • Operações no ambiente de TI
  • Agendamento de lotes
  • Executar fluxos de trabalho de automação de autoatendimento
  • Automação e implantação de atualizações do servidor
  • Automatização e implantação do gerenciamento de patch
  • Automação do provisionamento e da desativação de recursos do Azure
  • Monitorar um ambiente de TI inteiro a partir de uma única interface
  • Codificar processos repetíveis ou sob demanda

Implantar este cenário

Você pode usar o modelo a seguir para implantar o ambiente OpCon em um cluster AKS.

# 
# Full OpCon deployment for Kubernetes
#
# This deployment uses Azure SQL Database.
#
apiVersion: v1
kind: Secret
metadata:
  name: dbpasswords
stringData:
  saPassword: ""
  dbPassword: ""
  sqlAdminPassword: ""
  dbPasswordEncrypted: ""
 
---
# OpCon environment values
apiVersion: v1
kind: ConfigMap
metadata:
  name: opconenv
data:
  DB_SERVER_NAME: "sqlopcon.database.windows.net"
  DATABASE_NAME: "opcon"
  DB_USER_NAME: "opconadmin"
  SQL_ADMIN_USER: "opconadmin"
  API_USES_TLS: "true" 
  CREATE_API_CERTIFICATE: "true"
  DB_SETUP: "true"
  TZ: "America/Chicago"
  LANG: "en_US.utf-8"
  LICENSE: ""
---
# Impex environment values
apiVersion: v1
kind: ConfigMap
metadata:
  name: impexenv
data:
  opcon.server.name: "sqlopcon.database.windows.net"
  opcon.db.name: "opcon"
  opcon.db.user: "opconadmin"
  web.port: "9011"
  web.ssl: "true" 
  system.debug: "false"
  TZ: "America/Chicago"
  LANG: "en_US.utf-8"
---
# OpCon persistent storage for configuration information
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
  name: opconconfig
spec:
  accessModes:
  - ReadWriteOnce
  resources:
    requests:
      storage: 100Mi
---
# OpCon persistent storage for log information
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
  name: opconlog
spec:
  accessModes:
  - ReadWriteOnce
  resources:
    requests:
      storage: 100Mi
---
# Impex persistent storage for log information
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
  name: impexlog
spec:
  accessModes:
  - ReadWriteOnce
  resources:
    requests:
      storage: 100Mi
---
# OpCon and deploy pods in a single replica set
apiVersion: apps/v1
kind: ReplicaSet
metadata:
  name: opcon
spec:
  replicas: 1
  selector:
    matchExpressions:
      - key: app
        operator: In
        values:
          - opconservices
  template:
    metadata:
      labels:
        app: opconservices
    spec:
      containers:
      - env:
        - name: DB_PASSWORD
          valueFrom:
            secretKeyRef:
              name: dbpasswords
              key: dbPassword
        - name: SQL_ADMIN_PASSWORD
          valueFrom:
            secretKeyRef:
              name: dbpasswords
              key: sqlAdminPassword
        envFrom:
          - configMapRef:
              name: opconenv
        image: smatechnologies/opcon-server:22.0-latest
        name: opcon
        ports:
        - containerPort: 443
          protocol: TCP
        volumeMounts:
        - name: opconconfig
          mountPath: /app/config
        - name: uat-opconlog
          mountPath: /app/log
      - env:
        - name: opcon.db.password
          valueFrom:
            secretKeyRef:
              name: dbpasswords
              key: dbPasswordEncrypted
        envFrom:
          - configMapRef:
              name: impexenv
        image: smatechnologies/deploy-impex2:22.0-latest
        name: impex
        volumeMounts:
        - name: impexlog
          mountPath: /app/log
      hostname: opcon
      volumes:
      - name: opconconfig
        persistentVolumeClaim:
          claimName: opconconfig
      - name: opconlog
        persistentVolumeClaim:
          claimName: opconlog
      - name: impexlog
        persistentVolumeClaim:
          claimName: impexlog
---
# OpCon service
apiVersion: v1
kind: Service
metadata:
  name: lbopcon
spec:
  type: LoadBalancer
  ports:
  - name: apiport
    port: 9010
    targetPort: 443
  - name: impexport
    port: 9011
    targetPort: 9011
  selector:
    app: opconservices

Colaboradores

Esse artigo é mantido pela Microsoft. Ele foi originalmente escrito pelos colaboradores a seguir.

Para ver perfis não públicos do LinkedIn, entre no LinkedIn.

Próximas etapas

Para saber mais sobre essa solução:

  • Contate legacy2azure@microsoft.com.
  • Contate a SMA. Parceira nível ouro da Microsoft, a SMA Technologies é líder no segmento de automação de TI. A SMA tem o compromisso de devolver tempo a clientes e funcionários por meio da automação de processos, aplicativos e fluxos de trabalho.