In keeping with the Kali Linux Network Services Policy, there are no network services, including database services, running on boot so there are a couple of steps that need to be taken in order to get Metasploit up and running with database support.
Start the Kali PostgreSQL Service
Metasploit uses PostgreSQL as its database so it needs to be launched first.
You can verify that PostgreSQL is running by checking the output of ss -ant and making sure that port 5432 is listening.
LISTEN 0 128 :::22 :::*
LISTEN 0 128 *:22 *:*
LISTEN 0 128 127.0.0.1:5432 *:*
LISTEN 0 128 ::1:5432 :::*
Start the Kali Metasploit Service
With PostgreSQL up and running, we next need to launch the metasploit service. The first time the service is launched, it will create a msf3 database user and a database called msf3. The service will also launch the Metasploit RPC and Web servers it requires.
Launch msfconsole in Kali
Now that the PostgreSQL an Metasploit services are running, you can launch msfconsole and verify database connectivity with the db_status command as shown below.
[*] postgresql connected to msf3
msf >
Configure Metasploit to Launch on Startup
If you would prefer to have PostgreSQL and Metasploit launch at startup, you can use update-rc.d to enable the services as follows.