equinix_fabric_port (Recurso)
O recurso compatível com a API Fabric V4 permite a criação e o gerenciamento de portas Equinix Fabric.
Documentação adicional:
- Primeiros passos: portas
- API: https://docs.equinix.com/api-catalog/fabricv4/#operation/createPort
** NOTA:** Este recurso está na versão beta e está sujeito a alterações. Use com cuidado. O recurso experimental pode conter bugs e não é recomendado para uso em produção.
- Não há garantias de que uma reserva de porta ocorrerá após a criação de uma ordem de porta por meio do Terraform.
- Se uma reserva de porta não ocorrer, o pedido de porta não será concluído e o recurso Terraform não poderá ser usado como dependência.
- A exclusão de portas não é um processo rápido e pode levar de 2 a 5 dias úteis para ser concluída.
- Atenção: executar novamente o recurso Terraform com as mesmas configurações pode não resultar em uma porta disponível para reserva, mesmo que a execução anterior tenha sido concluída com sucesso.
Exemplo de uso
resource "equinix_fabric_port" "order" {
type = "XF_PORT"
connectivity_source_type = "COLO"
location = {
metro_code = "TR"
}
settings = {
package_type = "STANDARD"
shared_port_type = false
}
encapsulation = {
type = "DOT1Q"
tag_protocol_id = "0x8100"
}
account = {
account_number = "<account_number>"
}
project = {
project_id = "<project_id>"
}
redundancy = {
priority = "PRIMARY"
}
lag_enabled = true
physical_ports = [
{
type = "XF_PHYSICAL_PORT"
demarcation_point = {
ibx = "TR2"
cage_unique_space_id = "TR2:01:002087"
cabinet_unique_space_id = "Demarc"
patch_panel = "PP:Demarc:00002087"
connector_type = "SC"
}
}
]
physical_ports_speed = 1000
physical_ports_type = "1000BASE_LX"
physical_ports_count = 1
demarcation_point_ibx = "TR2"
notifications = [
{
type = "TECHNICAL"
registered_users = [
"<username>"
]
},
{
type = "NOTIFICATION"
registered_users = [
"<username>"
]
}
]
additional_info = [
{
key = "lagType"
value = "New"
}
]
}
Esquema
Obrigatório
account(Atributos) Detalhes da conta do pedido de porta (veja abaixo o esquema aninhado )connectivity_source_type(String) Tipo de conexão que é usado a partir da porta após a criaçãodemarcation_point_ibx(String) código IBX onde a porta estará localizadaencapsulation(Atributos) Configurações de encapsulamento de porta (veja abaixo o esquema aninhado )lag_enabled(Booleano) Valor booleano para ativar a porta criada com grupos de agregação de linkslocation(Atributos) Detalhes do local para o pedido de portas (veja abaixo o esquema aninhado )notifications(Lista de atributos) Lista de tipos de notificação e os usuários registrados para receber esses tipos de notificação (veja abaixo o esquema aninhado )physical_ports(Lista de atributos) Portas físicas que implementarão esta ordem de portas (veja abaixo o esquema aninhado )physical_ports_count(Number) Número de portas físicas no pedido de portasphysical_ports_speed(Number) Velocidade das portas físicas em Mbpsphysical_ports_type(String) Tipo de portas físicasproject(Atributos) Detalhes do projeto do pedido de porta (veja abaixo o esquema aninhado )redundancy(Atributos) Configurações de redundância de porta (veja abaixo o esquema aninhado )type(String) Tipo da solicitação de pedido de porta
Opcional
order(Atributos) Detalhes do pedido de porta, como detalhes do purchaseOrder e assinatura (veja abaixo o esquema aninhado )timeouts(Atributos) (veja abaixo o esquema aninhado )
Somente leitura
additional_info(Lista de atributos) Lista de objetos chave/valor para fornecer contexto adicional ao pedido de porta (veja abaixo o esquema aninhado )change_log(Atributos) Detalhes da última alteração no recurso da porta (veja abaixo o esquema aninhado )device(Atributos) Configuração do dispositivo de porta (veja abaixo o esquema aninhado )href(String) URI atribuída pela Equinix do recurso de portaid(String) o identificador exclusivo do recursoname(String) Nome designado da portastate(String) valor que representa o status de provisionamento para o recurso de portauuid(String) Equinix atribuiu um identificador exclusivo do recurso de porta
Esquema aninhado para account
Obrigatório:
account_number(Number) Número da conta para a qual a porta será criada
Somente leitura:
account_name(String) Nome legal do titular da conta.ucm_id(String) ID do datastore corporativo
Esquema aninhado para encapsulation
Obrigatório:
tag_protocol_id(String) identificador do protocolo de tag de encapsulamento de portatype(String) tipo de protocolo de encapsulamento de porta
Esquema aninhado para location
Obrigatório:
metro_code(String) código estratégico no qual a porta será criada
Esquema aninhado para notifications
Obrigatório:
registered_users(Lista de String) Matriz de usuários registrados que receberão esse tipo de notificação na portatype(String) Tipo de notificação
Esquema aninhado para physical_ports
Obrigatório:
demarcation_point(Atributos) Porta física do cliente (veja abaixo o esquema aninhado )type(String) tipo de porta física
Opcional:
interface(Atributos) Interface de porta física (veja abaixo o esquema aninhado )
Esquema aninhado para physical_ports.demarcation_point
Obrigatório:
cabinet_unique_space_id(String) ID de espaço exclusivo do rack da portacage_unique_space_id(String) ID de espaço exclusivo do cage da portaconnector_type(String) Tipo de conector de portaibx(String) código estratégico IBX para a porta físicapatch_panel(String) patch panel de porta
Esquema aninhado para physical_ports.interface
Opcional:
type(String) Tipo de interface para a porta física
Esquema aninhado para project
Obrigatório:
project_id(String) ID do projeto em que a porta será criada
Esquema aninhado para redundancy
Obrigatório:
priority(String) Valor de prioridade de redundância de porta
Esquema aninhado para order
Opcional:
customer_reference_id(String) ID de referência do pedido do clientepurchase_order(Atributos) Detalhes da ordem de compra (veja abaixo o esquema aninhado )signature(Atributos) Detalhes da assinatura de confirmação do pedido de porta (veja abaixo o esquema aninhado )
Esquema aninhado para order.purchase_order
Somente leitura:
amount(String) valor da ordem de compraattachment_id(String) ID do anexo da ordem de compraend_date(String) data de término do pedido de compranumber(String) número da ordem de comprastart_date(String) data de início do pedido de compratype(String) tipo de ordem de compra
Esquema aninhado para order.signature
Obrigatório:
delegate(Atributos) detalhes do pedido delegado (veja abaixo o esquema aninhado )signatory(String) Tipo de assinatura de porta
Esquema aninhado para order.signature.delegate
Obrigatório:
email(String) e-mail do signatário
Opcional:
first_name(String) nome do signatáriolast_name(String) Sobrenome do signatário
Esquema aninhado para timeouts
Opcional:
create(String) Uma string que pode ser analisada como uma duração que consiste em números e sufixos unitários, como "30s" ou "2h45m". As unidades de tempo válidas são "s" (segundos), "m" (minutos), "h" (horas).delete(String) Uma string que pode ser analisada como uma duração que consiste em números e sufixos unitários, como "30s" ou "2h45m". As unidades de tempo válidas são "s" (segundos), "m" (minutos), "h" (horas). A definição de um tempo limite para uma operação de exclusão só é aplicável se as alterações forem salvas no estado antes da operação de destruição ocorrer.read(String) Uma string que pode ser analisada como uma duração que consiste em números e sufixos unitários, como "30s" ou "2h45m". As unidades de tempo válidas são "s" (segundos), "m" (minutos), "h" (horas). As operações de leitura ocorrem durante qualquer operação de atualização ou planejamento quando a atualização está ativada.update(String) Uma string que pode ser analisada como uma duração que consiste em números e sufixos unitários, como "30s" ou "2h45m". As unidades de tempo válidas são "s" (segundos), "m" (minutos), "h" (horas).
Esquema aninhado para additional_info
Somente leitura:
key(String) o nome da chave do par chave/valorvalue(String) o valor do par chave/valor
Esquema aninhado para change_log
Somente leitura:
created_by(String) nome de usuário do criador do recurso de portacreated_by_email(String) e-mail do criador do recurso de portacreated_by_full_name(String) Nome legal do criador do recurso de portacreated_date_time(String) hora de criação do recurso de portadeleted_by(String) nome de usuário do deletador do recurso de portadeleted_by_email(String) E-mail do deletador do recurso da portadeleted_by_full_name(String) Nome legal do deletador do recurso de portadeleted_date_time(String) hora da exclusão do recurso de portaupdated_by(String) nome de usuário do último atualizador do recurso de portaupdated_by_email(String) E-mail do último atualizador do recurso de portaupdated_by_full_name(String) Nome legal do último atualizador do recurso de portaupdated_date_time(String) Horário da última atualização do recurso de porta
Esquema aninhado para device
Somente leitura:
name(String) nome do dispositivo para a portaredundancy(Atributos) Configuração de redundância do dispositivo (veja abaixo o esquema aninhado )
Esquema aninhado para device.redundancy
Opcional:
group(String) identificador do grupo de redundânciapriority(String) Prioridade de redundância (PRIMÁRIA ou SECUNDÁRIA)