I was trying to get the wordpress sample running on AWS following
deploying-sample-release.md<https://github.com/drnic/bosh-getting-started/blob/master/deploying-sample-release.md>,
and ran into networking problems between nginx and wordpress/apache. I
fixed it by indicating the elastic IP public DNS name in the jobs
properties instead of the straight ip addresses. More details below if this
can be useful to others. Anyone managed to workaround this problem
differently to get the wordpress sample serving webpages on AWS ?
Given that the VMs are all created before starting applying the
configuration to them, it would be great to be able to avoid need for
elastic IPs and rather use private DNS entries: is there properties or
variables that could be used in the nginx configuration templates to lookup
the private IP DNS allocated to other jobs? Is the PowerDNS mentionned by
nic
<https://groups.google.com/a/cloudfoundry.org/forum/?fromgroups#%21search/powerdns/bosh-dev/jgk0gsXVFjY/KXA7mAquP6kJ>ready
and could be used instead to define private DNS entries for the network
wiring among the jobs ?
I guess that when provisioning the wordpress sample<https://github.com/cloudfoundry/oss-docs/blob/master/bosh/samples/wordpress.yml>in vSphere there is no such need because the private IP can be statically
be assigned to instances and be specified within the deployment manifest.
Moreover, in CF, there is little such hardcoded wiring as most declare into
nats.
Guillaume.
----
With the configuration suggested in deploying-sample-release.md<https://github.com/drnic/bosh-getting-started/blob/master/deploying-sample-release.md>,
the nginx configuration uses the elastic ip public address (e.g.
176.34.183.210) instead of the elastic IP public DNS entry
(ec2-176-34-183-210.eu-west-1.compute.amazonaws.com) which resolves within
AWS to the private IP (see details<http://docs.amazonwebservices.com/AWSEC2/latest/UserGuide/using-instance-addressing.html>
)
<% properties.wordpress.servers.each do |server| %>
server <%= server %>:<%= properties.wordpress.port %>;
<% end %>
It did not not work as my nginx instance couldn’t ping the wordpress
instance public elastic ip (whereas it properly pings elastic IP public
DNS).