Meteor.js y Google Maps

Ya incluí los mapas api en mi proyecto. Ahora quiero mostrar algunos marcadores en mi mapa. Inicializo mi mapa en una función de inicio:

Meteor.startup(function() {
...
var mapOptions = {
  zoom: 8,
  mapTypeId: google.maps.MapTypeId.ROADMAP
};

Map = new google.maps.Map(document.getElementById("map-canvas"),
  mapOptions);  

Que yo puse el centro del mapa en la representación

Template.mapPostsList.rendered = function() {
var p2 = Session.get('location');

Map.setCenter(new google.maps.LatLng(p2.lat, p2.lng));
var marker = new google.maps.Marker({
    position: new google.maps.LatLng(p2.lat, p2.lng),
    title:'Meine Position'
  });
marker.setMap(Map);   

Hasta ahora todo funciona bien. A pesar de que tengo un PostCollection que contiene algunas coordenadas para mí. Tengo una función de publicación y suscripción. Ahora quiero mostrar mis publicaciones a través de marcadores en el mapa.

Mi primera idea fue hacer esto en mi función renderizada. El problema es que en la carga inicial no se muestran publicaciones, porque mi colección local (lado del cliente) no contiene ninguna publicación. Se tarda algo de tiempo hasta que las publicaciones se cargan desde el servidor.

Esa es la razón por la que traté de construir una función de ayuda. Porque el ayudante se recarga automáticamente si algo dentro de mis publicaciones cambia.

Template.mapPostsList.helpers({
posts: function() {
   var allPosts = Posts.find();
   allPosts.foreach(function(post) {
      create marker and attach it to the map
      ....
      marker.setMap(Map);
   })

El problema ahora es que mi variable de mapa no está definida. ¿Hay alguna forma de definirlo en el ámbito global? ¿Por qué puedo usar mi variable Map en mi función renderizada? ¿A pesar de que no me gusta mi enfoque para inyectar mis marcadores con la función de ayuda o es la forma habitual?

¿Puede alguien darme pistas sobre cómo resolver mi problema?

Respuestas a la pregunta(2)

Su respuesta a la pregunta