F5Networks / f5-google-gdm-templates

Google Deployment Templates for quickly deploying BIG-IP services in Google Cloud Platform
28 stars 45 forks source link

TypeError when deploying 3nic via-lb failover template #31

Closed tkam8 closed 4 years ago

tkam8 commented 5 years ago

Do you already have an issue opened with F5 support?

Yes C3093664

Description

Unable to deploy supported GDM template due to python error

  1. Complete prereqs for GDM template
  2. Customize YAML file (see my file attached)
  3. Deploy YAML file
  4. Note error like below:

gcloud deployment-manager deployments create terry-3nic-failover8 --config f5-existing-stack-same-net-cluster-byol-3nic-bigip.yaml --description "try8" The fingerprint of the deployment is PAo-dvXZL76uiK6YV-lHyg== Waiting for create [operation-1568642333562-592ac011255fc-a5aec356-55f57ded]...failed. ERROR: (gcloud.deployment-manager.deployments.create) Error in Operation [operation-1568642333562-592ac011255fc-a5aec356-55f57ded]: errors:

  • code: MANIFEST_EXPANSION_USER_ERROR location: /deployments/terry-3nic-failover8/manifests/manifest-1568642333593 message: "Manifest expansion encountered the following errors: argument of type\ \ 'NoneType' is not iterable Resource: config"

Template

https://github.com/F5Networks/f5-google-gdm-templates/tree/master/supported/failover/same-net/via-lb/3nic/existing-stack/byol

Severity Level

For bugs, enter the bug severity level. Do not set any labels.

Severity: 5

tkam8 commented 5 years ago
# Copyright 2019 F5 Networks All rights reserved.
#
# Version 3.0.1

imports:
- path: f5-existing-stack-same-net-cluster-byol-3nic-bigip.py
resources:
- name: same-net-cluster-3nic-setup
  type: f5-existing-stack-same-net-cluster-byol-3nic-bigip.py
  properties:
   ### Google Region to deploy BIG-IP, for example us-west1
   region: asia-northeast1
   ### Google Zone in specified region to deploy BIG-IP, for example us-west1-a
   availabilityZone1: asia-northeast1-b
   ### Specify the network to use for management traffic
   mgmtNetwork: terry-net-mgmt
   ### Specify the subnet to use for management traffic
   mgmtSubnet: terry-subnet-mgmt
   ### This field restricts management access to a specific network or address. Enter an IP address or address range in CIDR notation separated by a space, or 0.0.0.0/0 for all sources
   restrictedSrcAddress: 'X.X.X.X/24'
   ### This field restricts web application access to a specific network or address. Enter an IP address or address range in CIDR notation separated by a space, or 0.0.0.0/0 for all sources.
   restrictedSrcAddressApp: 'X.X.X.X/24'
   ### Restricts web application access to a specific private network or address. Enter an IP address or address range in CIDR notation separated by a space, or 0.0.0.0/0 for all sources. Only required when using internal loadbalancer (numberOfForwardingRules equals 1).
   restrictedSrcAddressIntApp: 'X.X.X.X/24'
   ### Specify the Network name for BIG-IP application traffic
   network1: terry-net-ext
   ### Subnet of the Network BIG-IP should use for application traffic
   subnet1: terry-subnet-ext
   ### Enter alias IP address(es) to be used for application traffic, including CIDR suffix. This address must belong to the subnet noted above in key 'subnet1'.  A list of alias IPs can be provided, separated by a space: IE 10.x.x.16/28 10.x.x.32/28.
   aliasIp: '10.10.10.0/24'
   ### Number of forwarding rules to create, for example '1'.  All integers from 1 to the max quota for the forwarding rules resource type are allowed.
   numberOfForwardingRules: 1
   ### Specify Network name to for BIG-IP internal application traffic
   numberOfIntForwardingRules: 1
   ### Specify Network name to for BIG-IP internal application traffic
   ### Specify the Network name for BIG-IP internal application traffic
   network2: terry-net-int
   ### Subnet of the Network BIG-IP should use for internal application traffic
   subnet2: terry-subnet-int
   ### BIG-IP license key
   licenseKey1: 'X-X-X-X-X'
   ### BIG-IP license key
   licenseKey2: 'X-X-X-X-X'
   ## Provision Public IP addresses for BIG-IP Network Interfaces. By default it is set to provision public IPs
   provisionPublicIP: 'yes'
   ### BIG-IP image, valid choices include:

   # f5-bigip-14-1-0-3-0-0-6-byol-all-module-2boot-loc-190326001340
   # f5-bigip-14-1-0-3-0-0-6-byol-ltm-2boot-loc-190326001052
   imageName: f5-bigip-14-1-0-3-0-0-6-byol-all-module-2boot-loc-190326001340
   ### Instance type assigned to BIG-IP, example n1-standard-4.
   instanceType: n1-standard-4
   ### (Optional, Defaults to 443) BIG-IP Management Port, the default is 443
   mgmtGuiPort: '443'
   ### List application port(s) separated by a space.
   applicationPort: '80'
   ### List application port(s) for internal google load balancer separated by a space. A max of 5 ports can be specified. Only required when using internal loadbalancer (numberOfForwardingRules equals 1).
   applicationIntPort: '80'
   ## (Optional, Defaults to time.google.com) List NTP servers separated by a space.
   ntpServer: time.google.com
   ## Enter the Olson timezone string from /usr/share/zoneinfo
   timezone: Japan
   ## Enter the modules and povisioning level
   bigIpModules: ltm:nominal,asm:nominal
   ### Enter service account with correct roles.
   serviceAccount: 'svcaccountname@appspot.gserviceaccount.com' 
   ### This deployment can send anonymous statistics to F5 to help us determine how to improve our solutions. If you enter **no** statistics are not sent.
   allowUsageAnalytics: 'yes'
   ### (Optional, Defaults to Info) Log setting, used to set log level on scripts used during deployment. Acceptable values:error, warn, info, verbose, debug, silly.
   logLevel: Info
   ### URL for the AS3 declaration JSON file to be deployed. If left at **default**, the recommended F5 WAF configuration will be applied. Enter **none** to deploy without a service configuration.
   declarationUrl: default
chen23 commented 5 years ago

I am also getting the same error.

gcloud deployment-manager deployments create erchen-bigip --config f5-existing-stack-same-net-cluster-byol-3nic-bigip.yaml
The fingerprint of the deployment is YHjAarHMC6RbLiO7b2a1_Q==
Waiting for create [operation-1568991081989-592fd34190564-ed7d5f3c-5d7cba80]...failed.
ERROR: (gcloud.deployment-manager.deployments.create) Error in Operation [operation-1568991081989-592fd34190564-ed7d5f3c-5d7cba80]: errors:
- code: MANIFEST_EXPANSION_USER_ERROR
  location: /deployments/erchen-bigip/manifests/manifest-1568991082060
  message: "Manifest expansion encountered the following errors: argument of type\
    \ 'NoneType' is not iterable Resource: config"
f5-applebaum commented 5 years ago

This looks like an indexing bug:
numberOfIntForwardingRules: Setting to 0 allows manifest to render.

alaari-f5 commented 5 years ago

created internal issue: 1648

wduongf5 commented 4 years ago

Release v3.0.3 resolved this issue.