redis做为sonic的存储数据库,基于redis 的特性,可以满足sonic的数据驱动,快速响应。
这个文件sonic-buildimage/dockers/docker-database/database_config.json.j2 定义了redis在sonic中应用的数据库。
基本功能与其他nosql区别并不大, 简单教程如下 https://www.runoob.com/redis/redis-lists.html
redis-server 启动server, redis-cli客户端连接server,实现交互, 当然还有丰富的restfulapi实现。
{
"INSTANCES": {
"redis":{
"hostname" : "{{HOST_IP}}",
"port" : 6379,
"unix_socket_path" : "/var/run/redis{{NAMESPACE_ID}}/redis.sock",
"persistence_for_warm_boot" : "yes"
}
},
"DATABASES" : {
"APPL_DB" : {
"id" : 0,
"separator": ":",
"instance" : "redis"
},
"ASIC_DB" : {
"id" : 1,
"separator": ":",
"instance" : "redis"
},
"COUNTERS_DB" : {
"id" : 2,
"separator": ":",
"instance" : "redis"
},
"LOGLEVEL_DB" : {
"id" : 3,
"separator": ":",
"instance" : "redis"
},
"CONFIG_DB" : {
"id" : 4,
"separator": "|",
"instance" : "redis"
},
"PFC_WD_DB" : {
"id" : 5,
"separator": ":",
"instance" : "redis"
},
"FLEX_COUNTER_DB" : {
"id" : 5,
"separator": ":",
"instance" : "redis"
},
"STATE_DB" : {
"id" : 6,
"separator": "|",
"instance" : "redis"
},
"SNMP_OVERLAY_DB" : {
"id" : 7,
"separator": "|",
"instance" : "redis"
},
"RESTAPI_DB" : {
"id" : 8,
"separator": "|",
"instance" : "redis"
}
},
"VERSION" : "1.0"
}
redis-cli 常用命令
select (int) 进去不同index的数据库
keys * 查询所有的key