-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathappconnector_vips.yml
executable file
·95 lines (90 loc) · 3.52 KB
/
appconnector_vips.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
#!/usr/bin/ansible-playbook
---
#
# Copyright (c) 2016 F5 Networks
# All rights reserved.
#
# author: Mark Lowcher F5 Networks
# description: This playbook will create the virtual servers
# needed on the application connector service center.
#
# - This playbook will copy the necessary files to the F5
# NOTICE: Be sure you have staged the files in the ~/ansible/playbooks
# directory as described in the "Ansible Orchestration for Application
# Connector deployment guide located at https://github.com/mlowcher61
# - This playbook will create the two neccessary virtual servers for App
# Connector service center.
# -- A port 443 vip with the appropriate clientssl profile, a tcp and
# an HTTP profile. Create the child profiles before running this
# playbook. This vip will NOT have a pool.
# -- Create a port 80 vip with a pool with no members.
# - Edit the "vars" below to match your environment. "appliance" is the
# management ip address of the F5.
# - The ACproxy ip is the public ip address that clients will connect to
# when accessing your application(s). You will need to run this playbook
# for ever application that you deploy.
# - The cloud ip is the public ip address that the AC_proxies will connect
# back to.
# - Before running this playbook, create the clientssl profile you will use
# to offload SSL/TLS and change the value "clientssl" under vars to the
# correct name. Such as "myapp_clientssl"
# - It is also a best practice to create an http profile per application
# such as "myapp_http_profile" and edit it accordingly under "vars"
- name: Configuring App Connecter service center
hosts: 10.0.0.180
connection: local
gather_facts: no
vars:
appliance: "10.0.0.180"
setup_user: "admin"
setup_pass: "admin"
ACproxy_vip_name: "ACproxy_vs"
ACproxy_vip_ip: "20.20.20.108"
http_profile: "http"
clientssl: "clientssl"
cloud_pool: "my_cloud_pool"
cloud_vip_ip: "20.20.20.110"
cloud_vip_name: "cloud-vip"
cloud_http_mon: "ac_http_mon"
tasks:
- name: Creating port 443 Vip with no pool that the AC_proxies will connect to.
bigip_virtual_server:
description: "Vip that the ACproxy will connect to"
destination: "{{ACproxy_vip_ip}}"
password: "{{setup_pass}}"
name: "{{ACproxy_vip_name}}"
port: "443"
server: "{{appliance}}"
snat: "Automap"
user: "{{setup_user}}"
all_profiles:
- "{{http_profile}}"
- "{{clientssl}}"
validate_certs: "no"
delegate_to: localhost
- name: Creating the cloud_pool
bigip_pool:
# lb_method: "round_robin"
name: "{{cloud_pool}}"
monitors: "{{cloud_http_mon}}"
password: "{{setup_pass}}"
server: "{{appliance}}"
slow_ramp_time: "120"
user: "{{setup_user}}"
validate_certs: "no"
delegate_to: localhost
- name: Creating the cloud vip with pool and no members that the clients will connect to
bigip_virtual_server:
description: "cloud-vip"
destination: "{{cloud_vip_ip}}"
password: "{{setup_pass}}"
name: "{{cloud_vip_name}}"
pool: "{{cloud_pool}}"
port: "80"
server: "{{appliance}}"
snat: "Automap"
user: "{{setup_user}}"
all_profiles:
- "http"
validate_certs: "no"
delegate_to: localhost