2 つの vagrant マシンを持つ開発環境をセットアップしています。1 つは http サーバーで、もう 1 つは redis サーバーです。2 台のマシン間でポート 6379 経由で接続できません。また、ホストから vagrant マシンに接続できません。Centos でこのタイプの構成をセットアップしましたが、これは Ubuntu での最初の実験です。プライベート ネットワーク アドレスを含む詳細は次のとおりです。
ホスト: OSX ヨセミテ (192.168.33.1)
浮浪者マシン: ubuntu1404-x64
http(192.168.33.22) redis(192.168.33.20)
Redis conf:
bind 0.0.0.0
port 6379
redis vagrant では、次の方法で redis に接続できます。
redis-cli -h 192.168.33.20
そして、vagrant マシンからホスト redis に接続できます。
redis-cli -h 192.168.33.1
しかし、リモートで vagrant redis サーバーに接続できません (ホストまたは別の vagrant マシンから)
vagrant マシンでは、次の出力が得られます。
$ sudo netstat -nlpt | grep 6379
6:tcp 0 0 0.0.0.0:6379 0.0.0.0:* LISTEN 1004/redis-server 0
ホスト マシンから次の情報を取得します。
$:nmap -Pn -p 6379 192.168.33.20
Starting Nmap 5.51 ( http://nmap.org ) at 2015-03-15 10:48 PDT
Nmap scan report for 192.168.33.20
Host is up.
PORT STATE SERVICE
6379/tcp filtered unknown
Nmap done: 1 IP address (1 host up) scanned in 3.39 seconds
redis マシンで、ファイアウォールを無効にしようとしました
sudo ufw disable
ファイアウォールを有効にして追加する (現在の状態):
sudo ufw allow 6379
これで、redis ゲストで次の出力が得られます。
$ sudo ufw status
Status: active
To Action From
-- ------ ----
6379 ALLOW Anywhere
6379 (v6) ALLOW Anywhere (v6)
しかし、何も変わっていません。他の vagrant マシンまたはホスト マシンからポートに到達できません。Nmap は引き続きポートを「フィルター済み」としてリストします。
編集: 以下のコメントで述べたように、このコードは私が引き継ぐプロジェクトであり、Vagrantfile は pupphpet と呼ばれるものを使用して作成されました。Vagrantfile はボイラープレートであり、すべての構成は yaml ファイルから取得されます。これは、redis ゲストの構成です。
---
vagrantfile-local:
vm:
box: puphpet/ubuntu1404-x64
box_url: puphpet/ubuntu1404-x64
hostname: ''
memory: '512'
cpus: '1'
chosen_provider: virtualbox
network:
private_network: 192.168.33.20
forwarded_port:
3KP0kJvFLAaL:
host: '6822'
guest: '22'
post_up_message: ''
provider:
virtualbox:
modifyvm:
natdnshostresolver1: on
vmware:
numvcpus: 1
parallels:
cpus: 1
provision:
puppet:
manifests_path: puphpet/puppet
manifest_file: site.pp
module_path: puphpet/puppet/modules
options:
- '--verbose'
- '--hiera_config /vagrant/puphpet/puppet/hiera.yaml'
- '--parser future'
synced_folder:
dQPBnJQ4bGCM:
owner: www-data
group: www-data
source: ./
target: /var/www
sync_type: nfs
rsync:
args:
- '--verbose'
- '--archive'
- '-z'
exclude:
- .vagrant/
auto: 'false'
usable_port_range:
start: 10200
stop: 10500
ssh:
host: null
port: null
private_key_path: null
username: vagrant
guest_port: null
keep_alive: true
forward_agent: false
forward_x11: false
shell: 'bash -l'
vagrant:
host: detect
server:
install: '1'
packages:
- vim
users_groups:
install: '1'
groups: { }
users: { }
cron:
install: '1'
jobs: { }
firewall:
install: '1'
rules: null
apache:
install: '0'
settings:
user: www-data
group: www-data
default_vhost: true
manage_user: false
manage_group: false
sendfile: 0
modules: { }
vhosts:
ryf0d2cn58ci:
servername: awesome.dev
serveraliases:
- www.awesome.dev
docroot: /var/www/awesome
port: '80'
setenv:
- 'APP_ENV dev'
directories:
thl9sg0zbb5i:
provider: directory
path: /var/www/awesome
options:
- Indexes
- FollowSymlinks
- MultiViews
allow_override:
- All
require:
- all
- granted
custom_fragment: ''
engine: php
custom_fragment: ''
ssl_cert: ''
ssl_key: ''
ssl_chain: ''
ssl_certs_dir: ''
mod_pagespeed: 0
nginx:
install: '0'
settings:
default_vhost: 1
proxy_buffer_size: 128k
proxy_buffers: '4 256k'
upstreams: { }
vhosts:
ken6pmlb2civ:
proxy: ''
server_name: awesome.dev
server_aliases:
- www.awesome.dev
www_root: /var/www/awesome
listen_port: '80'
location: \.php$
index_files:
- index.html
- index.htm
- index.php
envvars:
- 'APP_ENV dev'
engine: php
client_max_body_size: 1m
ssl_cert: ''
ssl_key: ''
php:
install: '1'
version: '56'
composer: '1'
composer_home: ''
modules:
php:
- cli
- intl
- mcrypt
pear: { }
pecl:
- pecl_http
ini:
display_errors: On
error_reporting: '-1'
session.save_path: /var/lib/php/session
timezone: America/Chicago
mod_php: 0
ruby:
install: '1'
versions:
ADSqflP7ScSN:
version: ''
nodejs:
install: '1'
npm_packages: { }
python:
install: '1'
packages: { }
versions:
B69DoSTPPd85:
version: ''
mysql:
install: '1'
override_options: { }
root_password: '123'
adminer: 0
databases:
4c8zPdNREcop:
grant:
- ALL
name: dbname
host: localhost
user: dbuser
password: '123'
sql_file: ''
redis:
install: '1'
settings:
conf_port: '6379'
conf_bind: '0.0.0.0'