teratail header banner
teratail header banner
質問するログイン新規登録

質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.30%
CentOS

CentOSは、主にRed Hat Enterprise Linux(RHEL)をベースにした、フリーのソフトウェアオペレーティングシステムです。

npm

npmは、Node Packaged Modulesの略。Node.jsのライブラリ・パッケージを管理できるツールです。様々なモジュールを簡単にインストールでき、自分でモジュールを作成し公開する際にも使用できます。

Node.js

Node.jsとはGoogleのV8 JavaScriptエンジンを使用しているサーバーサイドのイベント駆動型プログラムです。

Amazon EC2

Amazon EC2は“Amazon Elastic Compute Cloud”の略称です。Amazon Web Services(AWS)の一部であり、仮想化されたWebサーバーのコンピュータリソースをレンタルできるサービスです。

AWS(Amazon Web Services)

Amazon Web Services (AWS)は、仮想空間を機軸とした、クラスター状のコンピュータ・ネットワーク・データベース・ストーレッジ・サポートツールをAWSというインフラから提供する商用サービスです。

Q&A

解決済

1回答

1721閲覧

npm install の遅延について

zvub1123

総合スコア230

CentOS

CentOSは、主にRed Hat Enterprise Linux(RHEL)をベースにした、フリーのソフトウェアオペレーティングシステムです。

npm

npmは、Node Packaged Modulesの略。Node.jsのライブラリ・パッケージを管理できるツールです。様々なモジュールを簡単にインストールでき、自分でモジュールを作成し公開する際にも使用できます。

Node.js

Node.jsとはGoogleのV8 JavaScriptエンジンを使用しているサーバーサイドのイベント駆動型プログラムです。

Amazon EC2

Amazon EC2は“Amazon Elastic Compute Cloud”の略称です。Amazon Web Services(AWS)の一部であり、仮想化されたWebサーバーのコンピュータリソースをレンタルできるサービスです。

AWS(Amazon Web Services)

Amazon Web Services (AWS)は、仮想空間を機軸とした、クラスター状のコンピュータ・ネットワーク・データベース・ストーレッジ・サポートツールをAWSというインフラから提供する商用サービスです。

0グッド

0クリップ

投稿2022/10/18 05:31

編集2022/10/18 06:53

0

0

前提

AWS EC2 の CentOS8系(AlmaLinux)インスタンスにて、
npm install が極端に遅くなる事象が発生しており、
原因が特定できず困っています。(AMIは自前で用意したものです)

実現したいこと

npm install を正常に終了させたい。

発生している問題・エラーメッセージ

エラーは特に出ていません。

該当のソースコード

※ package.json, package-lock.json 共にかなりの量なので、添付は控えます。

試したコマンド

キャッシュのクリア、node_modules ディレクトリの削除等、ひとまず考えられる策は実施しました。

補足情報(FW/ツールのバージョンなど)

  • EC2 t2.micro インスタンス
  • AlmaLinux 8
  • node v16.13.0
  • npm 8.1.0

ここをこうすべき、というよりは調査の足がかりになるアドバイスをいただきたく。
現状、同一の package.json, package-lock.json を使用した状態にて、dockerコンテナ(CentOS6)上ではビルドが可能であることを確認していますので、ネットワークの帯域などの問題では無いと考えています。
また、CentOS8にてnodeのバージョンをダウングレードする、など試していますが改善せず。
また、インストール中でいずれかのパッケージのインストールに失敗しエラーが出る、というわけでもありません。ただただ遅くなるという状態です。
CentOS6での実施時は10〜20分程度、CentOS8では1時間以上経過しても終了しない、といった状況です。

このような場合、どこが怪しいのか、どこを調べるべきなのか、またCentOS6とCentOS8の設定でどのあたりを比較するべきなのか、等足がかりを得られればと思います。
よろしくお願い致します。

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

miyabi-sun

2022/10/18 05:46

> dockerコンテナ(CentOS6)上ではビルドが可能であることを確認しています これはデスクトップパソコンを用意して、 その中にLinuxを導入したものですか? それともMacbook等のパソコンの中で導入した仮想PCですか? Dockerデスクトップのファイル共有した時のリードライトが異常に遅いとか VirtualBoxのディレクトリ共有機能が異常に遅いとか 仮想PCを利用すると○○が異常に遅いみたいなケースはよくありますからね。
zvub1123

2022/10/18 06:50

コンテナは Macbook 上で稼働している CentOS6 です。 すみません、環境の記載が不十分でしたので追記しておきますが、問題が発生しているCentOS8のサーバはAWS上のec2になります。
miyabi-sun

2022/10/18 07:49

対応ありがとうございます。 > EC2 t2.micro インスタンス なんだこれ?何時から稼働しているサーバマシンなんですか? https://qiita.com/koji4104/items/58088f5af5300234aaca Qiitaの記事を見る限り、t2.microってネット回線も劣悪だし、CPUもメモリも劣悪です。 まずはCPU使用率やメモリ使用率を確認したり、 ネットワークやストレージのベンチマークを回してみたりするべきでしょう。 > dockerコンテナ(CentOS6)上ではビルドが可能であることを確認していますので、ネットワークの帯域などの問題では無いと考えています。 そもそも環境が全然違うのでOSが原因と決めつけるのは早合点過ぎるでしょう よほどの欠陥OSでない限り、違うのは要求スペックが上がるくらいのものなので インスタンスがヘボいか、長期間のヘビーユースでガタが来たか、その辺疑ってみるのが先ですね。
yu_1985

2022/10/18 08:23 編集

単純にt2.microではスペックが足りないのでは。 経験上、microではメモリ不足でどのフレームワークでもビルドすると落ちることが結構あります。
zvub1123

2022/10/18 08:26 編集

@hoshi-takanori さん コメントありがとうございます。かなり小さいEC2インスタンスを使用しているので、マシンスペックも疑ってみるべきですね。。。
zvub1123

2022/10/18 08:26

@miyabi-sun さん 検証用のインスタンスなので本稼働などはしておりません。仰る通り、OSではなくスペックの問題の可能性もありますね。。 コメントありがとうございます。
yu_1985

2022/10/18 08:28

あと、そもそもOS以外の条件が違うのでOSを疑う段階ではありません。 ビルド時の実行スペックを揃えて差異が出たならスペックが原因ではないことがわかります。 CentOS6のほうはMacbookで動かしているのに、CentOS8のほうはt2.microのインスタンス上で動かしているのでは前提が違いすぎて比較になりません。比較したいなら条件を揃えてください。 今回は実行環境が問題だと思います。
zvub1123

2022/10/18 08:29

@yu_1985 さん コメントありがとうございます。やはり皆さん仰る通り、スペックも疑ってみます。 同じスペックのコンテナ、同じt2.microで作成したCentOS6のインスタンスではビルドが通っていたので、スペックに関しては気にしていませんでした。。
guest

回答1

0

自己解決

コメントいただいた皆さん、改めてありがとうございます。
検証用とはいえ、スペックはあまりに低すぎるので一旦見直したいと思います。

コメントにて検証用の環境のスペックを揃えるべきとのご指摘いただきましたが、
こちらも記載不足ですみません。
dockerコンテナ(CentOS6), ec2(CentOS6), ec2(CentOS8) にて検証しておりましたが、CentOS6の2台では成功していた、というのが正しい経緯となります。

また、当該インスタンスにて npm cache clean --force にてキャッシュクリア後、

  • Node.js : v14.18.3
  • npm : 6.14.15
    でビルドが通ったことを確認できました。

皆さんありがとうございました。

投稿2022/10/18 08:40

zvub1123

総合スコア230

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.30%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問