blob: f77c0ed0539e200840c8138b724d7d5deeaf1158 (
plain)
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
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
|
=head1 NAME
fapi - A humble command line tool to manage F5 BigIP loadbalancers
=head1 SYNOPSIS
Just run
fapi -h
or
f -h
because it's shorter to type.
=head1 ABOUT
This is a simple command line client to do basic stuff with the iControl F5 API
such as:
Managing Nodes
Managing Monitors
Managing Pools
Managing Virtual Servers
This is a private programming project programmed in my spare time. Therefore I
didn't bother to put it on a public website and github. Please open bug
reports, feature requests and pull requests at
L<https://github.com/rantanplan/fapi>.
=head1 BIGSUDS
=head2 Requirement of bigsuds
This tool depends on bigsuds. Please install this library from F5 dev central
manually. Otherwise this script will not work.
You can download bigsuds from here:
L<https://devcentral.f5.com/d/bigsuds-python-icontrol-library>
Unzip it and run
sudo python setyp.py install
You may also install bigsuds from the contrib dir of the fapi source tree.
=head2 iControl reference
Through bigsuds you can do everything what iControl can do:
L<https://devcentral.f5.com/wiki/icontrol.apireference.ashx>
=head1 QUICK START
Update your sources list:
curl http://deb.buetow.org/apt/pubkey.gpg | sudo apt-key add -
echo 'deb http://deb.buetow.org/apt wheezy main' > \
/etc/apt/sourcees.list.d/buetoworg.list
aptitude update
And run
aptitude install fapi
cp /usr/share/fapi/fapi.conf.sample ~/.fapi.conf
vim ~/.fapi.conf
=head1 EXAMPLES
=head2 Setting up simple NAT Services
(Docu to be written)
=head2 Setting up simple SNAT Services
(Docu to be written)
=head2 Setting up a simple nPath Service
A simple nPath service can be created as follows.
# Creating two nodes, auto resolve the IP addresses
f node fooserver1.example.com create
f node fooserver2.example.com create
# Creating a pool and add the nodes to it
f pool foopool create
f pool foopool add member fooserver1.example.com:80
f pool foopool add member fooserver2.example.com:80
# Add a monitor to the pool
f pool foopool add monitor http_lbtest
# Create a nPath HTTP service, 'nPath' also auto disables NAT and PAT
f vserver myservice.example.com:80 create PROTOCOL_TCP nPath
# Add the pool to the service
f vserver myservice.example.com:80 set pool foopool
# Add a nPath HTTPS service
f vserver myservice.example.com:443 create PROTOCOL_TCP nPath
f vserver myservice.example.com:443 set pool foopool
=head1 AUTHOR
Paul C. Buetow - <paul@buetow.org>
Also see L<http://fapi.buetow.org>
=cut
|