It's tricky but it could work. You can draw the background node and place a label node over it with center option.
Problems: you have to adjust main node size repeating same text and fixing inner sep.
Advantatge: you can use main node anchors to draw edges.
\documentclass[tikz,border=2mm]{standalone}
\usepackage[utf8]{inputenc}
\usepackage[english]{babel}
\usetikzlibrary{shapes}
\begin{document}
\begin{tikzpicture}[node distance = 1.7cm, auto]
\tikzset{
line/.style = {draw},
comment/.style = {rectangle, draw, text centered,
rounded corners, minimum height=2em,fill=white},
comment border/.style = {comment, rounded corners=0pt,
fill=gray!40, inner sep=4mm, minimum height=2em+4mm},
terminator/.style = {shape=rounded rectangle, draw, inner sep=2mm},
}
\node[terminator] (node-1) {begin};
\node [comment border, below of=node-1,
label={[comment]center:comment comment comment}]
(node-2) {comment comment comment};
\node[terminator, below of=node-2, node distance=1.5cm] (node-3) {end};
\draw (node-1)--(node-2);
\draw (node-2)--(node-3);
\end{tikzpicture}
\end{document}

If you don't want to use this trick, try with makeshape which today was announced in CTAN.
EDIT: 2on Option
Another not so tricky option would be to use a matrix of nodes node. A matrix is a node which contains other nodes, therefore it's possible to apply different styles to the matrix and every node.
comment/.style = {matrix of nodes,
% Next lines apply to matrix and all inner nodes
draw, fill=gray!40, inner sep=5pt,
% Next lines define style for inner nodes.
% It's possible to change previous options
nodes={text centered, rounded corners, minimum height=2em,
fill=white, inner sep=3pt}
},
All rows inside a matrix has to be finished with '\', then we need to be careful when
using comment nodes and include \\ inside the text part:
\node [comment, below of=node-1]
(node-2) {comment comment comment\\};
The result will be the same, but the code changes to:
\documentclass[tikz,border=2mm]{standalone}
\usepackage[utf8]{inputenc}
\usepackage[english]{babel}
\usetikzlibrary{shapes,matrix} %<- Don't forget matrix library
\begin{document}
\begin{tikzpicture}[node distance = 1.7cm, auto]
\tikzset{
line/.style = {draw},
comment/.style = {matrix of nodes,
% Next lines apply to matrix and all inner nodes
draw, fill=gray!40, inner sep=5pt,
% Next lines define style for inner nodes.
% It's possible to change previous options
nodes={text centered, rounded corners, minimum height=2em,
fill=white, inner sep=3pt}
},
terminator/.style = {shape=rounded rectangle, draw, inner sep=2mm},
}
\node[terminator] (node-1) {begin};
\node [comment, below of=node-1]
(node-2) {comment comment comment\\};
\node[terminator, below of=node-2, node distance=1.5cm] (node-3) {end};
\draw (node-1)--(node-2);
\draw (node-2)--(node-3);
\end{tikzpicture}
\pgfdeclareshapein the PGF/Tikz manual. You could also read the code for simple geometric shapes – Lionel MANSUY Jan 30 '13 at 07:36