質問編集履歴

2

ソースコードの追記,Elastic IP(IPv4 パブリック IP)にアクセスしたときの挙動の変化

2019/10/12 02:26

投稿

Sano
Sano

スコア19

test CHANGED
File without changes
test CHANGED
@@ -6,7 +6,7 @@
6
6
 
7
7
  自分の設定したElastic IP(IPv4 パブリック IP)にアクセスしたところ 
8
8
 
9
- このサイトにアクセスできません(IPアドレス)からの応答時間長すぎ
9
+ このサイトにアクセスできません。~~~で接続拒否されした
10
10
 
11
11
  と表示されました。
12
12
 
@@ -58,9 +58,9 @@
58
58
 
59
59
  次にブラウザから直接確認してみました。
60
60
 
61
- 冒頭にも記述しましたがElastic IP(IPv4 パブリック IP)にアクセスしたところ 
61
+ 冒頭にも記述しましたがElastic IP(IPv4 パブリック IP)にアクセスしたところ
62
-
62
+
63
- このサイトにアクセスできません(IPアドレス)からの応答時間長すぎ
63
+ このサイトにアクセスできません。~~~で接続拒否されした
64
64
 
65
65
  と表示されました。
66
66
 
@@ -158,6 +158,154 @@
158
158
 
159
159
 
160
160
 
161
+ 記事をもとに作成したconfig/unicorn.conf.rb
162
+
163
+
164
+
165
+ ```ruby
166
+
167
+ # set lets
168
+
169
+ $worker = 2
170
+
171
+ $timeout = 30
172
+
173
+ $app_dir = "/var/www/rails/play_with" #自分のアプリケーション名
174
+
175
+ $listen = File.expand_path 'tmp/sockets/.unicorn.sock', $app_dir
176
+
177
+ $pid = File.expand_path 'tmp/pids/unicorn.pid', $app_dir
178
+
179
+ #$listen = File.expand_path "/var/run/.unicorn.sock"
180
+
181
+ #$pid = File.expand_path "/var/run/unicorn.pid"
182
+
183
+ $std_log = File.expand_path 'log/unicorn.log', $app_dir
184
+
185
+ # set config
186
+
187
+ worker_processes $worker
188
+
189
+ working_directory $app_dir
190
+
191
+ stderr_path $std_log
192
+
193
+ stdout_path $std_log
194
+
195
+ timeout $timeout
196
+
197
+ listen $listen
198
+
199
+ pid $pid
200
+
201
+ # loading booster
202
+
203
+ preload_app true
204
+
205
+ # before starting processes
206
+
207
+ before_fork do |server, worker|
208
+
209
+ defined?(ActiveRecord::Base) and ActiveRecord::Base.connection.disconnect!
210
+
211
+ old_pid = "#{server.config[:pid]}.oldbin"
212
+
213
+ if old_pid != server.pid
214
+
215
+ begin
216
+
217
+ Process.kill "QUIT", File.read(old_pid).to_i
218
+
219
+ rescue Errno::ENOENT, Errno::ESRCH
220
+
221
+ end
222
+
223
+ end
224
+
225
+ end
226
+
227
+ # after finishing processes
228
+
229
+ after_fork do |server, worker|
230
+
231
+ defined?(ActiveRecord::Base) and ActiveRecord::Base.establish_connection
232
+
233
+ end
234
+
235
+ ```
236
+
237
+
238
+
239
+ 記事をもとに作成した/etc/nginx/conf.d/play_with.conf
240
+
241
+
242
+
243
+ ```ここに言語を入力
244
+
245
+ error_log /var/www/rails/play_with/log/nginx.error.log;
246
+
247
+ access_log /var/www/rails/play_with/log/nginx.access.log;
248
+
249
+ # max body size
250
+
251
+ client_max_body_size 2G;
252
+
253
+ upstream app_server {
254
+
255
+ # for UNIX domain socket setups
256
+
257
+ server unix:/var/www/rails/play_with/tmp/sockets/.unicorn.sock fail_timeout=0;
258
+
259
+ }
260
+
261
+ server {
262
+
263
+ listen 80;
264
+
265
+ server_name ; Elastic IP(IPv4 パブリック IP)
266
+
267
+ # nginx so increasing this is generally safe...
268
+
269
+ keepalive_timeout 5;
270
+
271
+ # path for static files
272
+
273
+ root /var/www/rails/play_with/public;
274
+
275
+ # page cache loading
276
+
277
+ try_files $uri/index.html $uri.html $uri @app;
278
+
279
+ location @app {
280
+
281
+ # HTTP headers
282
+
283
+ proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
284
+
285
+ proxy_set_header Host $http_host;
286
+
287
+ proxy_redirect off;
288
+
289
+ proxy_pass http://app_server;
290
+
291
+ }
292
+
293
+ # Rails error pages
294
+
295
+ error_page 500 502 503 504 /500.html;
296
+
297
+ location = /500.html {
298
+
299
+ root /var/www/rails/play_with/public;
300
+
301
+ }
302
+
303
+ }
304
+
305
+ ```
306
+
307
+
308
+
161
309
  ### 教えていただきたいこと
162
310
 
163
311
  ・.unicorn.sockを読み込めるようにするにはどうしたらよいか

1

誤字の修正

2019/10/12 02:26

投稿

Sano
Sano

スコア19

test CHANGED
File without changes
test CHANGED
@@ -96,6 +96,78 @@
96
96
 
97
97
  ```ここに言語を入力
98
98
 
99
- #.unicorn.sockが
99
+ #.unicorn.sockが存在しているか確認
100
+
101
+ ls -la /var/www/rails/play_with/tmp/sockets/
102
+
103
+ >>> srwxrwxrwx 1 mashio mashio 0 Oct 8 12:06 .unicorn.sock
100
104
 
101
105
  ```
106
+
107
+ ファイルは存在していますが、読み込めていないようです。
108
+
109
+ 同じ状況で解決された方がいないか調べてみましたが、CentOSの方しか見つけることができませんでした。
110
+
111
+ ([参考にさせて頂いた記事](https://qiita.com/naoki_mochizuki/items/22cfbf4bf7ec95f6ac1c)と同じAMIである、Amazon Linuxを使用)
112
+
113
+
114
+
115
+ ・unicorn
116
+
117
+ unicornに関して起動確認、ログ確認を記載させていただきます。
118
+
119
+ ```ここに言語を入力
120
+
121
+ ps -ef | grep unicorn | grep -v grep
122
+
123
+ >>>mashio 27744 1 0 12:06 ? 00:00:02 unicorn_rails master -c /var/www/rails/play_with/config/unicorn.conf.rb -D -E production
124
+
125
+ mashio 27749 27744 0 12:06 ? 00:00:00 unicorn_rails worker[0] -c /var/www/rails/play_with/config/unicorn.conf.rb -D -E production
126
+
127
+ mashio 27751 27744 0 12:06 ? 00:00:00 unicorn_rails worker[1] -c /var/www/rails/play_with/config/unicorn.conf.rb -D -E production
128
+
129
+ ```
130
+
131
+ 起動は確認できました。
132
+
133
+
134
+
135
+ ```ここに言語を入力
136
+
137
+ # /var/www/rails/play_with/log/unicorn.log
138
+
139
+ >>>I, [2019-10-08T09:06:18.972221 #26577] INFO -- : Refreshing Gem list
140
+
141
+ I, [2019-10-08T09:06:21.063404 #26577] INFO -- : listening on addr=/var/www/rails/play_with/tmp/sockets/unicorn.sock fd=11
142
+
143
+ I, [2019-10-08T09:06:21.069533 #26577] INFO -- : master process ready
144
+
145
+ I, [2019-10-08T09:06:21.073400 #26582] INFO -- : worker=0 ready
146
+
147
+ I, [2019-10-08T09:06:21.074532 #26584] INFO -- : worker=1 ready
148
+
149
+ I, [2019-10-08T09:12:07.734052 #26577] INFO -- : reaped #<Process::Status: pid 26582 exit 0> worker=0
150
+
151
+ I, [2019-10-08T09:12:07.734169 #26577] INFO -- : reaped #<Process::Status: pid 26584 exit 0> worker=1
152
+
153
+ I, [2019-10-08T09:12:07.734232 #26577] INFO -- : master complete
154
+
155
+
156
+
157
+ ```
158
+
159
+
160
+
161
+ ### 教えていただきたいこと
162
+
163
+ ・.unicorn.sockを読み込めるようにするにはどうしたらよいか
164
+
165
+ ・動作確認するべきファイル、確認方法
166
+
167
+
168
+
169
+ 羅列的になり読みにくいかと思いますがよろしくお願いします。
170
+
171
+ ソースコードは[参考にさせて頂いた記事](https://qiita.com/naoki_mochizuki/items/5a1757d222806cbe0cd1)と同じです。(異なっている点は、IPアドレス、アプリ名)
172
+
173
+ 他に、ログ、ソースなど必要でしたらコメントお願いします。