Skip to content

Commit 08aff5d

Browse files
author
James Lagermann
committed
Added Determine Licnese state to Module 1 Lab 1 and renumbered labs
1 parent 05c0b6e commit 08aff5d

File tree

3 files changed

+71
-15
lines changed

3 files changed

+71
-15
lines changed

docs/class3/module1/lab1.rst

+66-10
Original file line numberDiff line numberDiff line change
@@ -13,9 +13,8 @@ Overview
1313

1414
In this lab, the iControl REST API will be used to provision a module on the BIG-IP. More specifically, the Advanced Firewall Manager (AFM) module will be provisioned for use in **Module 1, Lab 2: Configuring AFM (Advanced Firewall Module)**. Before we begin, lets review how to generate an Authentication Token.
1515

16-
Use Postman collection to complete this lab.
17-
1816
.. NOTE::
17+
- Use Postman collection to complete this lab.
1918
- Some response content has been removed for brevity.
2019

2120
|labmodule|\.\ |labnum|\.0.1. Get an Authentication Token
@@ -202,10 +201,67 @@ The **Authentication Token** timeout is set using an HTTP PATCH with a body cont
202201
"selfLink": "https://localhost/mgmt/shared/authz/tokens/X54G4KAQUEGFZX2J7MUMFBKBC5"
203202
}
204203
205-
|labmodule|\.\ |labnum|\.1. Retrieve all module provision states
204+
|labmodule|\.\ |labnum|\.1. Determine the license state
205+
------------------------------------------------------------------
206+
207+
Before a module on a BIG-IP can be configured, it must be licensed. Using the newly generated Authentication Token, check the license state for all modules. This is done using an HTTP GET to the REST endpoint for ``/mgmt/tm/sys/license``.
208+
209+
.. Hint::
210+
1) Send a **Request** with the following details.
211+
212+
| **Method**
213+
214+
::
215+
216+
GET
217+
218+
| **URL**
219+
220+
::
221+
222+
https://{{big_ip_a_mgmt}}/mgmt/tm/sys/license
223+
224+
| **Headers**
225+
226+
::
227+
228+
X-F5-Auth-Token: {{big_ip_a_auth_token}}
229+
230+
| **Body**
231+
232+
.. NOTE::
233+
- The **afm** module is currently provisioned for **none** while the **ltm** module is provisioned for **nominal**.
234+
235+
**Example Response**
236+
237+
.. code-block:: rest
238+
:emphasize-lines: 7-15
239+
240+
},
241+
"https://localhost/mgmt/tm/sys/license/0/active-modules/
242+
%22Best%20Bundle,%20VE-10G%22": {
243+
"nestedStats": {
244+
"entries": {
245+
"featureModules": {
246+
"description": "{ \"Rate Shaping\" \"ASM, VE\"
247+
\"DNS-GTM, Base, 10Gbps\" \"SSL, VE\" \"Max
248+
Compression, VE\" \"AFM, VE\" \"DNSSEC\"
249+
\"GTM Licensed Objects, Unlimited\" \"DNS
250+
Licensed Objects, Unlimited\" \"DNS Rate
251+
Fallback, 250K\" \"GTM Rate Fallback, 250K\"
252+
\"GTM Rate, 250K\" \"DNS Rate Limit, 250K QPS\"
253+
\"CGN, BIG-IP VE, AFM ONLY\" \"Routing
254+
Bundle, VE\" \"PSM, VE\" }"
255+
},
256+
"key": {
257+
"description": "KYQKGYX-EPPNOGV"
258+
}
259+
260+
261+
|labmodule|\.\ |labnum|\.2. Retrieve all module provision states
206262
------------------------------------------------------------------
207263

208-
Before a module on a BIG-IP can be configured, it must be licensed and provisioned. Using the newly generated Authentication Token, check the provisioning state for all modules. This is done using an HTTP GET to the REST endpoint for ``/mgmt/tm/sys/provision``.
264+
Before a module on a BIG-IP can be configured, it also must be and provisioned. Check the provisioning state for all modules. This is done using an HTTP GET to the REST endpoint for ``/mgmt/tm/sys/provision``.
209265

210266
.. Hint::
211267
1) Send a **Request** with the following details.
@@ -267,7 +323,7 @@ Before a module on a BIG-IP can be configured, it must be licensed and provision
267323
]
268324
}
269325
270-
|labmodule|\.\ |labnum|\.2. Retrieve single module provision state
326+
|labmodule|\.\ |labnum|\.3. Retrieve single module provision state
271327
--------------------------------------------------------------------
272328

273329
To retrieve the provisioning state for a single module, send an HTTP GET to the REST endpoint for ``/mgmt/tm/sys/provision`` and include the name of the module. For example, ``/mgmt/tm/sys/provision/afm``
@@ -315,7 +371,7 @@ To retrieve the provisioning state for a single module, send an HTTP GET to the
315371
}
316372
317373
318-
|labmodule|\.\ |labnum|\.3.1. Provision module
374+
|labmodule|\.\ |labnum|\.4.1. Provision module
319375
----------------------------------------------
320376

321377
The **afm** module is provisioned using an HTTP PATCH with a body containing a provisioning level to the REST endpoint for ``mgmt/tm/sys/provision/{{module}}``.
@@ -382,16 +438,16 @@ The **afm** module is provisioned using an HTTP PATCH with a body containing a p
382438
}
383439
384440
385-
|labmodule|\.\ |labnum|\.3.2. Deprovision module
441+
|labmodule|\.\ |labnum|\.4.2. Deprovision module
386442
--------------------------------------------------
387443

388-
To deprovision a BIG-IP module, repeat step 1.1.3.1 and set the level to "none".
444+
To deprovision a BIG-IP module, repeat step |labmodule|\.\ |labnum|\.4.1 and set the level to "none" for the selected module.
389445

390446

391-
|labmodule|\.\ |labnum|\.3.3. Re-provision module
447+
|labmodule|\.\ |labnum|\.4.3. Re-provision module
392448
--------------------------------------------------
393449

394-
Repeat steps |labmodule|\.\ |labnum|\.3.1 to re-provision the **afm** module to nominal if previously deprovisioned.
450+
Repeat steps |labmodule|\.\ |labnum|\.4.1 to re-provision the **afm** module to nominal if previously deprovisioned.
395451

396452
.. NOTE::
397453
- The **afm** module should be provisioned to **nominal** after performing the steps in this Lab.

docs/class3/module1/lab2.rst

+3-3
Original file line numberDiff line numberDiff line change
@@ -5,8 +5,8 @@
55
.. |labname| replace:: Lab\ |labdot|
66
.. |labnameund| replace:: Lab\ |labund|
77

8-
Lab |labmodule|\.\ |labnum|\: Create AFM Address List
9-
=====================================================
8+
Module |labmodule|\, Lab \ |labnum|\: Create AFM Address List
9+
==============================================================
1010

1111
Overview
1212
--------
@@ -18,7 +18,7 @@ In this lab, the iControl REST based API will be used to create an address list
1818
Follow the below steps in order found in the Postman collection to complete this portion of the lab. The requests and responses have been included below for reference.
1919

2020
|labmodule|\.\ |labnum|\.1. List all Firewall Policies
21-
------------------------------------------------------
21+
--------------------------------------------------------
2222

2323
.. Hint::
2424
1) Send a **Request** with the following details.

docs/class3/module1/lab3.rst

+2-2
Original file line numberDiff line numberDiff line change
@@ -5,8 +5,8 @@
55
.. |labname| replace:: Lab\ |labdot|
66
.. |labnameund| replace:: Lab\ |labund|
77

8-
Lab |labmodule|\.\ |labnum|\: Create AFM Policy
9-
===============================================
8+
Module |labmodule|\, Lab \ |labnum|\: Create AFM Policy
9+
========================================================
1010

1111
Overview
1212
--------

0 commit comments

Comments
 (0)