F5 configuration system database design

5 篇文章 0 订阅

Database is the foundation of the system, it stores the information of ticket , user , and configuration parameter . database is a place to store relational data in essence , data is stored in various of table in database.
This section focus on tables in the database, field in each table.

1 database table design

在这里插入图片描述

2 database E-R

在这里插入图片描述

3. table detail

before start , terminology several terminologies used in this section need to be clarify :

  • request item: a ticket from users may contain multiple request items.for example, if user want to setup 5 VIP on LTM , we say there are 5 request items in user ticket; the data in each row of t_para stands for one request item of user;
  • configuration item: a complete configuration of a object on the device . for example setup a pool ltm is a configuration item , including pool member configuration , monitor config of the pool . every pool ltm configuration item is stored in one row in c_ltm_pool.
    ticket_id is the bridge between request item and configuration item.

3.1 i_device

the main key the this table is device, stores the device information;
在这里插入图片描述

  • device: device name;
  • device type: LTM , GTM
  • version:software version the the device;
  • region:HK, india, UK;
  • DC:DC1,DC2,DC3
  • subnet: the list of subnets that will be configure on this device.192.168.1.0/24
  • env: prd/uat;

3.2 i_subnet

在这里插入图片描述

  • subnet is the main key and device is foreign key;
  • DC:SKM,TKO
  • floor:4 floor
  • region:HK

3.3 t_para

在这里插入图片描述
t_para stores the parameter of a ticket submit by user, ticket_id is the main key of this table
A ticket from user may contain multiple request , such as create several pool , virtual server on a ltm.
we name the configuration of a pool,corresponding vs configuration and corresponding other configuration a configuration item in this system.
each row in the database stands for a configuration item , a ticket may contain multiple configuration items

  • req_svc_type: request service type, change exist config or new seutp;
  • req_dev_type:request device type, GTM or LTM
  • tier: tier of the application
  • f5_vip: vip on F5,if it is a gtm ticket, this value will be empty
  • fqdn: if it is a LTM ticket, fqdn will be the fqdn of f5 vip , if it is GTM ticket, fqdn will be service fqdn
  • svr_ip : stores the ip list of configure a item of a ticket. data structure is [IP1:port1,ip2:port2,ip3:port3] , the IP in this structure will be sorted for small to big . with this structure, it will be easier for program to validate the IP pool exist or not in existing configuration of F5
  • srv_name: stores the name of the server,the structure is [ server1,server2,server3] , the sequence of the server name must be identical with svr_ip field
  • srv_port: ignore;
  • activate: 1 presents for activate , 0 presents for suspend, the sequence of the server name must be identical with svr_ip field
  • lb_med: load-balance method , round-roubin or order
  • order: if lb_med is order , this field stores the oder of the server [1, 2,3],the sequence of the server order must be identical with svr_ip field
  • mon_med : monitor method , tcp, https, https
  • prob_url : the url used to probing server ,if mon_med is tcp, this field will be empty
  • release_date: the date plan to release, fill in by BAU engineer. this field is used for increasementtal update. providing a date to application when will retrieve the configuration status of this item.
  • ticket_status: preparing , deployed , closed
  • engineer: engineer who works on this ticket;

3.4 c_gtm_pool
在这里插入图片描述

c_gtm_pool stores the gtm pool configuration . pool is the main key , ticket_id is the foreign key. each row in database stores a pool configuration of a gtm;

  • pool , the name of the pool
  • member: the list of pool member,the structure of this field is [ member1, member2, member3,…], the list of the member is virtual server list in c_gtm_pool;the
  • order: the order of the return member , [1,2,3,…] , the order must be identical with member field;
  • monitor : tcp2s, or https
  • alternate: tcp2s, https, none
  • fallback:tcp2s, https, none
  • ttl: ttl
  • wideip: wideip of the FQDN
  • descrip: description of the wideip
  • device: the device of this configuration locates
  • ticket_id: ticket_id of this configuration , will be used for ticket status search of user

3.5 c_gtm_vs

在这里插入图片描述

c_gtm_vs stores the GTM virtual server configuration.each row in a database present for a ticket request item . a ticket may contain multiple request item.

vs is the main key , ticket_id and vs is the foreign key.

  • vs: virtual server, data structure: [server1:vs1, server2:vs2,…], this field is the same with member field in c_gtm;
  • destination: the destination list of the virtual server [desintion1:port1, detination 2: port2, destination3:port3…];
  • server: ignore;
  • device: the device where this configuration item locates;
  • ticket_id: the ticket_id of this item . when user search their ticket status with their ticket id. this file will be used;

3.6 c_ltm_vs
在这里插入图片描述

this table stores the vs configuration of a ltm, vs is main key and ticket_id is foreign key; the data of each row in the database stands for
a configuration item which is deployed according to user request item, a ticket from user may contain multiple request item。

  • vs. the virtual server of the configuration item;
  • dst: the destination of the virtual server , the structure is ip:port ;
  • protocol: protocol of virtual server ;
  • trasn-add: 1 stands for enable , 0 stands for disable;
  • trans-port: 1 stands for enable , 0 stands for disable;
  • connection-limit: the number of the limitation;
  • persist: the duration of the persistance
  • pool: the pool of this virtual server;
  • ticket_id: the ticket_id of this configuration item;
  • device: device where this ticket id locate;

3.7 c_ltm_pool

在这里插入图片描述

this table stores the pool configuration of a ltm, pool is main key and ticket_id is foreign key; the data of each row in the database stands for

a configuration item which is deployed according to user request item, a ticket from user may contain multiple request item。

  • pool: the pool name of this item;
  • member: the member of this pool, the structure of this field [ip1:port1,ip2:port2,…];
    port: ignore;
  • monitor: the monitor of this pool;
  • url: the monitor url of this pool ;
  • ticket_id: the ticket_id of this configuration item ;
  • device: the device where the configuration item located;

3.8 t_base

this table stores basic information of a ticket:
在这里插入图片描述

  • ticket_id
  • user
  • email
  • req_dev_type
  • plada:
  • clarity
  • application
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值