Criando uma arquitetura implementável a partir de uma oferta existente
É possível aproveitar um pacote configurável de customização do IBM®curado para estender e customizar uma IBM Cloud® arquitetura implementávelAutomação da nuvem para implementar um padrão arquitetural comum que combina um ou mais recursos em nuvem que foram projetados para fácil implementação, escalabilidade e modularidade.. Cada arquitetura implementável fornece seu próprio pacote de customização. Com o pacote configurável, é possível editar a arquitetura implementável em seu computador local, usar seus próprios pipelines para testar e estender seus próprios produtos para atender às necessidades de sua empresa. Para customizar uma arquitetura, você deve ter familiaridade com o Terraform.
O pacote configurável de customização também inclui um diretório automation
que inclui scripts do iniciador para ajudá-lo a gerenciar o ciclo de vida de sua arquitetura implementável customizada da integração e validação para publicá-lo
em um catálogo privado no IBM Cloud. Atualmente, dois métodos de pipeline estão incluídos neste diretório: ações GitHub ou uma cadeia de ferramentas do IBM Cloud.
A orientação a seguir fornece uma visão geral do pacote configurável de customização e alguns exemplos de customização que podem ser feitos. Não é tudo inclusivo e você pode fazer quaisquer mudanças que você precisa. Depois de modificar a arquitetura, é possível incluí-la em um catálogo privado e usar as ferramentas do IBMpara verificar vulnerabilidades, assegurar segurança e conformidade e compartilhar a arquitetura com sua empresa. Para obter uma passagem mais detalhada, consulte Usando arquiteturas implementáveis do IBM Cloud para construir uma arquitetura implementável.
Dependendo de suas mudanças, IBM Cloud pode não suportar a arquitetura implementável. Os componentes da arquitetura fornecidos no pacote configurável são suportados pelo IBM Cloud, mas qualquer código modificado que é usado para estender não é.
Antes de Iniciar
- Crie um repositório para armazenar a arquitetura implementável customizada, por exemplo, um repositório GitHub. Para obter mais informações, consulte Criando um novo repositório..
- Certifique-se de ter um editor de sua escolha para modificar a arquitetura implementável, por exemplo, Visual Studio Code. Para obter mais informações, consulte Visual Studio Code
- Certifique-se de ter ferramentas de sua escolha para testar sua arquitetura implementável e assegurar que ela funcione. Por exemplo, é possível usar o tempo de execução do Terraform, que fornece a linha de comandos do Terraform
Localizando uma arquitetura implementável
IBM Cloud fornece várias arquiteturas implementáveis que podem ser usadas no estado em que se encontram ou customizadas. Para localizar uma arquitetura, conclua as seguintes etapas:
- No IBM Cloud catalog, selecione uma arquitetura implementável.
- Faça download do pacote configurável de customização selecionando Revisar opções de implementação > Trabalhar com código > Fazer download do pacote configurável.
Customizando a arquitetura implementável
Ao fazer o download do pacote configurável, você recebe um conjunto de arquivos que foram projetadas para ajudá-lo a começar a customizar.
ibm_catalog.json
O arquivo ibm_catalog.json
é um arquivo JSON de manifesto que é usado para importar automaticamente as informações de versão em um catálogo privado Com um arquivo de manifesto do catálogo, é possível evitar inserir manualmente
metadados da versão por meio do console. Para visualizar como configurar um arquivo ibm_catalog.json
e os valores que podem ser incluídos, consulte Editando localmente o manifesto do catálogo.
main.tf
O arquivo main.tf
é onde as informações de configuração sobre cada arquitetura implementável que você deseja usar são armazenadas. Dependendo da arquitetura implementável, é possível usar esse arquivo para especificar regiões
específicas, chaves de API e locais de código fonte. Também é possível usar esse arquivo para incluir outros módulos e atualizar os parâmetros do Terraform da arquitetura
Exemplo de main.tf
com especificações
O exemplo a seguir mostra a infraestrutura segura no VPC para indústrias regulamentadas usando uma região específica, us-south
:
module "landing-zone" {
source = "https://cm.globalcatalog.cloud.ibm.com/api/v1-beta/offering/source//examples/power-sap?archive=tgz&catalogID=7df1e4ca-d54c-4fd0-82ce-3d13247308cd&flavor=power&kind=terraform&name=slz-vpc-with-vsis&version=0.0.22"
ibmcloud_api_key = var.ibmcloud_api_key
ssh_public_key = var.ssh_public_key
region = "us-south"
prefix = "slz"
}
outputs.tf
O arquivo outputs.tf
contém valores de saída disponíveis que podem ser incluídos na arquitetura implementável. Os valores são comentados, mas é possível incluir os valores removendo o símbolo #
do valor.. Além disso,
é possível incluir mais variáveis de saída para o arquivo Para incluir determinados valores, conclua as etapas a seguir:
- Abra o arquivo
outputs.tf
. - Remova os
#
s de qualquer valor de saída que desejar incluir.
exemplo de outputs.tf
O exemplo a seguir inclui o valor vsi_names
e exclui o valor transit_gateway_name
:
output "vsi_names" {
value = var.vsi_names
description = "A list of the vsis names provisioned within the VPCs"
}
#output "transit_gateway_name" {
# value = var.transit_gateway_name
# description = "The name of the transit gateway"
#}
provider.tf
O arquivo provider.tf
contém informações necessárias sobre qual provedor, chave API e região os usuários precisam usar.
Essas informações são extraídas do arquivo variables.tf
Se for necessário fazer mudanças, atualize o arquivo variables.tf
Exemplo de um arquivo provider.tf
O exemplo a seguir lista IBM como o provedor:
provider "ibm" {
ibmcloud_api_key = var.ibmcloud_api_key
region = var.region
}
README.md
O arquivo leia-me contém informações de segundo plano e uso sobre a arquitetura implementável. É possível customizar o arquivo leia-me para ajudar os membros de sua empresa a usarem a arquitetura implementável
variables.tf
O arquivo variables.tf
inclui as variáveis necessárias para a arquitetura implementável.. É possível incluir quaisquer variáveis adicionais necessárias.
version.tf
O arquivo version.tf
armazena informações sobre a versão do Terraform e a versão do provedor necessárias para executar a arquitetura implementável. Se você estiver executando a arquitetura implementável como está, nenhuma atualização
será necessária. Sua configuração pode requerer a atualização desse arquivo. Se for necessário especificar um Terraform específico ou uma versão do provedor, conclua as etapas a seguir:
- Abra o arquivo
versions.tf
. - Atualize o
required_version
para a versão do Terrafrom que os usuários precisam usar - Atualize o
version
para a versão do provedor que os usuários precisam usar
Testando sua arquitetura implementável
Antes de integrar sua arquitetura implementável em um catálogo privado, teste sua customização e assegure que a arquitetura seja executada conforme desejado. Para testar sua arquitetura com a linha de comandos do Terraform, conclua as etapas a seguir:
-
Após customizar a arquitetura, inicialize a CLI do Terraform. Para obter mais informações, consulte Inicializando diretórios de trabalho.
terraform init
-
Provisionar os recursos Para obter mais informações, consulte Provisioning Infrastructure with Terraform.
-
Execute o
terraform plan
para gerar um plano de execução do Terraform para visualizar as ações propostasterraform plan
-
Execute
terraform apply
para criar os recursos definidos no plano.terraform apply
-
Criando uma liberação
Se seus testes foram bem-sucedidos, será possível se preparar para integrar sua arquitetura a um catálogo privado, certificando-se de que seus arquivos estejam no repositório e criando uma liberação. Para obter mais informações, consulte Criando uma liberação..
Aproveitando a automação para compartilhar em um catálogo privado
O pacote configurável de customização possui um diretório automation
que inclui algumas opções para pipelines iniciadores. Esses pipelines podem ser usados para automatizar o ciclo de vida de seus produtos customizados compartilhados
usando um catálogo privado no IBM Cloud. Isso inclui o gerenciamento da integração, validação e compartilhamento da versão da arquitetura implementável para um catálogo privado. Os arquivos README
são incluídos para cada opção
de pipeline que fornece detalhes sobre como alavancá-la, Para obter mais informações sobre cada uma, consulte GitHub e Criando uma cadeia de ferramentas.
Usando o console para integrar em um catálogo privado
Se você gostaria de usar o console para integrar sua arquitetura implementável, consulte integrando sua arquitetura implementável customizada em um catálogo privado para obter orientação passo a passo:
Próximas etapas
Os scripts fornecidos no pacote configurável de customização ajudam a automatizar o processo de integração para um catálogo privado para compartilhar seu produto com outros usuários. No entanto, se você quiser usar o console ou a CLI para integrar sua arquitetura implementável, consulte integrando sua arquitetura implementável customizada em um catálogo privado para obter orientação passo a passo: Usando catálogos privados, os membros de sua empresa precisam usar arquiteturas aprovadas que possam ser implementadas usando projetos.