Ubuntu 18.04にApache Mavenをインストールする
はじめにApache Mavenは、Javaプロジェクトで使用される無料のオープンソースプロジェクト管理ツールです。プロジェクトのビルド、レポート、
ITインフラストラクチャがクラウドに移行し、モノのインターネットが普及するにつれて、組織とITプロフェッショナルはパブリッククラウドサービスをより広範囲に使用しています。サーバーで実行されるサーバーとサービスが増加するにつれて、システムで生成されるログの量も増加しています。これらのログの分析は、いくつかの理由でインフラストラクチャで非常に重要です。これには、セキュリティポリシーと規制の遵守、システムのトラブルシューティング、セキュリティ関連のインシデントへの対応、またはユーザーの行動の理解が含まれます。
Elasticsearch、Logstash、Kibanaという3つの非常に人気のあるオープンソースアプリケーションを組み合わせて、Elastic StackまたはELK Stackを作成します。Elastic Stackは、ログとデータを検索、分析、視覚化するための非常に強力なツールです。Elasticsearchは、ログを保存し、ログを検索するための、分散されたリアルタイムのスケーラブルで可用性の高いアプリケーションです。Logstashは、Beatsから送信されたログを収集して拡張し、Elasticsearchに送信します。Kibanaは、ログと実用的な洞察を視覚化するために使用されるWeb UIです。
このチュートリアルでは、最新バージョンのElasticsearch、Logstash、KibanaとX-PackをUbuntu 17.04にインストールします。
このチュートリアルを実行するには、4 GB以上のRAMを搭載したVultr 64ビットUbuntu 17.04サーバーインスタンスが必要です。本番環境では、ユーザーとログの数に応じてハードウェア要件が増加します。
このチュートリアルは、sudo
ユーザーの観点から書かれています。sudoユーザーを設定するには、DebianでのSudoの使用方法ガイドに従ってください。
Let's Encrypt CAから証明書を取得するには、サーバーを指すドメインも必要です。
Ubuntuサーバーインスタンスにパッケージをインストールする前に、システムを更新することをお勧めします。sudoユーザーを使用してログインし、次のコマンドを実行してシステムを更新します。
sudo apt update
sudo apt -y upgrade
システムのアップグレードが完了したら、次の手順に進みます。
Elasticsearchが機能するには、Java 8が必要です。Oracle JavaとOpenJDKの両方をサポートしています。チュートリアルのこのセクションでは、Oracle JavaとOpenJDKの両方のインストールについて説明します。
以下のJavaバージョンのいずれかをインストールしてください。ElasticsearchにはOracle Javaのインストールをお勧めします。ただし、好みに応じてOpenJDKのインストールを選択することもできます。
UbuntuシステムにOracle Javaをインストールするには、次のコマンドを実行してOracle Java PPAを追加する必要があります。
sudo add-apt-repository ppa:webupd8team/java
次のコマンドを実行して、リポジトリ情報を更新します。
sudo apt update
次のコマンドを実行することで、最新の安����たバージョンのJava 8を簡単にインストールできます。
sudo apt -y install oracle-java8-installer
プロンプトが表示されたら、使用許諾契約に同意します。インストールが完了したら、次のコマンドを実行してJavaのバージョンを確認できます。
java -version
次のような出力が表示されます。
user@vultr:~$ java -version
java version "1.8.0_131"
Java(TM) SE Runtime Environment (build 1.8.0_131-b11)
Java HotSpot(TM) 64-Bit Server VM (build 25.131-b11, mixed mode)
をJAVA_HOME
インストールして、およびその他のデフォルトを設定することもできoracle-java8-set-default
ます。実行:
sudo apt -y install oracle-java8-set-default
次のコマンドをJAVA_HOME
実行して、変数が設定されているかどうかを確認できます。
echo "$JAVA_HOME"
出力は次のようになります。
user@vultr:~$ echo "$JAVA_HOME"
/usr/lib/jvm/java-8-oracle
上記の出力が得られない場合は、ログアウトしてシェルに再度ログインする必要があります。Oracle Javaがサーバーにインストールされました。これで、チュートリアルのOpenJDKのインストールをスキップするステップ3に進むことができます。
OpenJDKのインストールは非常に簡単です。OpenJDKをインストールするには、次のコマンドを実行するだけです。
sudo apt -y install default-jdk
インストールが完了したら、次のコマンドを実行してJavaのバージョンを確認できます。
java -version
次のような出力が表示されます。
user@vultr:~$ java -version
openjdk version "1.8.0_131"
OpenJDK Runtime Environment (build 1.8.0_131-8u131-b11-2ubuntu1.17.04.2-b11)
OpenJDK 64-Bit Server VM (build 25.131-b11, mixed mode)
JAVA_HOME
変数を設定するには、次のコマンドを実行します。
sudo echo "JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64" >> /etc/environment
次のコマンドを実行して、環境ファイルをリロードします。
sudo source /etc/environment
次のコマンドをJAVA_HOME
実行して、変数が設定されているかどうかを確認できます。
echo "$JAVA_HOME"
出力は次のようになります。
user@vultr:~$ echo "$JAVA_HOME"
/usr/lib/jvm/java-8-openjdk-amd64/
Elasticsearchは、超高速、分散、高可用性、RESTful検索エンジンです。次のコマンドを実行して、Elasticsearch APTリポジトリを追加します。
echo "deb https://artifacts.elastic.co/packages/5.x/apt stable main" | sudo tee -a /etc/apt/sources.list.d/elastic-5.x.list
上記のコマンドは、Elasticsearchの新しいリポジトリファイルを作成し、そこにソースエントリを追加します。次に、パッケージの署名に使用するPGP鍵をインポートします。
wget -qO - https://artifacts.elastic.co/GPG-KEY-elasticsearch | sudo apt-key add -
次のコマンドを実行して、APTリポジトリメタデータを更新します。
sudo apt update
次のコマンドを実行してElasticsearchをインストールします。
sudo apt -y install elasticsearch
上記のコマンドは、システムにElasticsearchの最新バージョンをインストールします。Elasticsearchがインストールされたら、次を実行してSystemdサービスデーモンをリロードします。
sudo systemctl daemon-reload
Elasticsearchを起動して、起動時に自動的に起動するようにします。
sudo systemctl enable elasticsearch
sudo systemctl start elasticsearch
Elasticsearchを停止するには、次を実行します。
sudo systemctl stop elasticsearch
実行できるサービスのステータスを確認するには:
sudo systemctl status elasticsearch
Elasticsearchがポートで実行されています9200
。次のコマンドを実行することにより、それが機能しており、結果を生成しているかどうかを確認できます。
curl -XGET 'localhost:9200/?pretty'
次のようなメッセージが出力されます。
user@vultr:~$ curl -XGET 'localhost:9200/?pretty'
{
"name" : "wDaVa1K",
"cluster_name" : "elasticsearch",
"cluster_uuid" : "71drjJ8PTyCcbai33Esy3Q",
"version" : {
"number" : "5.5.1",
"build_hash" : "19c13d0",
"build_date" : "2017-07-18T20:44:24.823Z",
"build_snapshot" : false,
"lucene_version" : "6.6.0"
},
"tagline" : "You Know, for Search"
}
X-Packは、セキュリティ、アラート、モニタリング、レポート、グラフ機能などの多くのアドオン機能を提供するElastic Stackプラグインです。X-Packは、ElasticsearchとKibanaのユーザー認証、およびKibanaのさまざまなノードの監視も提供します。X-PackとElasticsearchが同じバージョンでインストールされていることが重要です。
次のコマンドを実行して、Elasticsearch用のX-Packを直接インストールできます。
cd /usr/share/elasticsearch
sudo bin/elasticsearch-plugin install x-pack
インストールを続行するには、y
プロンプトが表示されたらEnter を押します。このコマンドは、X-Packプラグインをシステムにインストールします。X-Packをインストールすると、Elasticsearchの認証が有効になります。デフォルトのユーザー名はelastic
、パスワードはchangeme
です。Elasticsearchが機能しているかどうかを確認するために実行したのと同じコマンドを実行して、認証が有効になっているかどうかを確認できます。
curl -XGET 'localhost:9200/?pretty'
これで、出力に認証が失敗したことが表示されます。
user@vultr:~# curl -XGET 'localhost:9200/?pretty'
{
"error" : {
"root_cause" : [
{
"type" : "security_exception",
"reason" : "missing authentication token for REST request [/?pretty]",
"header" : {
"WWW-Authenticate" : "Basic realm=\"security\" charset=\"UTF-8\""
}
}
],
"type" : "security_exception",
"reason" : "missing authentication token for REST request [/?pretty]",
"header" : {
"WWW-Authenticate" : "Basic realm=\"security\" charset=\"UTF-8\""
}
},
"status" : 401
}
changeme
次のコマンドを実行して、デフォルトのパスワードを変更します。
curl -XPUT -u elastic:changeme 'localhost:9200/_xpack/security/user/elastic/_password?pretty' -H 'Content-Type: application/json' -d'
{
"password": "NewElasticPassword"
}
'
NewPassword
使用する実際のパスワードに置き換えます。新しいパスワードが設定されていて、Elasticsearchが機能しているかどうかを確認するには、次のコマンドを実行します。
curl -XGET -u elastic:NewElasticPassword 'localhost:9200/?pretty'
クエリが正常に実行されたことを示す出力が表示されます。
さらに、次を実行してElasticsearch構成ファイルを編集します。
sudo nano /etc/elasticsearch/elasticsearch.yml
次の行を見つけ、コメントを外して、提供された指示に従って変更します。
#cluster.name: my-application #Provide the name of your cluster
#node.name: node-1 #Provide the name of your node
#network.host: 192.168.0.1
の場合network.host
、システムに割り当てられたプライベートIPアドレスを入力します。次のコマンドを実行して、Elasticsearchインスタンスを再起動します。
sudo systemctl restart elasticsearch
これで、の代わりにlocalhost
、IPアドレスを使用して、を使用してクエリを実行する必要がありますcurl
。
curl -XGET -u elastic:NewElasticPassword '192.168.0.1:9200/?pretty'
192.168.0.1
サーバーの実際のプライベートIPアドレスに置き換えます。Elasticsearchをインストールしたので、さらに進んでKibanaをインストールします。
Kibanaは、Webインターフェースを使用してログと実用的な洞察を視覚化するために使用されます。Elasticsearchの管理にも使用できます。Elasticsearchと同じバージョンのKibanaをインストールすることをお勧めします。
ElasticsearchリポジトリとPGPキーをすでに追加しているので、次のコマンドを実行してKibanaを直接インストールできます。
sudo apt -y install kibana
前のコマンドは、システムに最新バージョンのKibanaをインストールします。Kibanaをインストールしたら、次のコマンドを実行してSystemdサービスデーモンをリロードします。
sudo systemctl daemon-reload
次のコマンドを実行することで、Kibanaを起動し、起動時に自動的に起動するようにできます。
sudo systemctl enable kibana
sudo systemctl start kibana
次のコマンドを実行すると、X-Pack for Kibanaを直接インストールできます。
cd /usr/share/kibana
sudo bin/kibana-plugin install x-pack
X-Pack for Kibanaでは、グラフ、機械学習、モニタリングがデフォルトで有効になっています。X-Packは、Kibanaの認証も可能にします。デフォルトのユーザー名はkibana
、パスワードはchangeme
です。Kibanaユーザーのデフォルトのパスワードを変更することが重要です。次のコマンドを実行してパスワードを変更します。
curl -XPUT -u elastic '192.168.0.1:9200/_xpack/security/user/kibana/_password?pretty' -H 'Content-Type: application/json' -d'
{
"password": "NewKibanaPassword"
}
'
192.168.0.1
サーバーの実際のプライベートIPアドレスと、NewKibanaPassword
Kibanaユーザーの新しいパスワードに置き換えます。
次のコマンドを実行して、Kibana構成ファイルを編集します。
sudo nano /etc/kibana/kibana.yml
次の行を見つけ、提供された指示に従って値を変更します。
#elasticsearch.url: "http://localhost:9200"
#elasticsearch.username: "user"
#elasticsearch.password: "password"
上記の行のコメントを外し、elasticsearch.url
ElasticsearchインスタンスのURLを提供します。IPアドレスは、で使用されたものと同じIPでなければなりませんelasticsearch.yml
。さらに、ユーザー名をからuser
にelastic
設定し、以前に設定したエラスティックユーザーのパスワードも提供します。
次のコマンドを実行して、Kibanaインスタンスを再起動します。
sudo systemctl restart kibana
localhost
ポート5601
でKibanaを実行しているため、ローカルネットワークの外部からKibanaにアクセスするには、ApacheまたはNginxでリバースプロキシをセットアップすることをお勧めします。このチュートリアルでは、NginxをKibanaのリバースプロキシとして設定します。Let's Encryptの無料SSL証明書でNginxインスタンスを保護します。
次のコマンドを実行して、Nginxをインストールします。
sudo apt -y install nginx
Nginxを起動して有効にし、起動時に自動的に起動するようにします。
sudo systemctl start nginx
sudo systemctl enable nginx
Nginxウェブサーバーがインストールされて実行されたので、Certbotのインストールに進むことができます。これは、公式の自動Let's Encrypt証明書クライアントです。次のコマンドを実行して、Certbot PPAをシステムに追加します。
sudo add-apt-repository ppa:certbot/certbot
リポジトリのメタ情報を更新します。
sudo apt update
次のコマンドを実行することで、最新バージョンのCertbotを簡単にインストールできます。
sudo apt -y install python-certbot-nginx
前のコマンドは、Certbotパッケージと共に必要な依存関係を解決してインストールします。
Certbotがインストールされたので、次のコマンドを実行してドメインの証明書を生成します。
sudo certbot certonly --webroot -w /var/www/html/ -d kibana.example.com
kibana.example.com
実際のドメイン名で変更することを忘れないでください。前のコマンドはCertbotクライアントを使用します。このcertonly
パラメーターは、証明書のみを生成するようにCertbotクライアントに指示します。このオプションを使用すると、証明書が自動的にインストールされず、Nginxの構成が変更されません。確認は、指定されたwebroot
ディレクトリにチャレンジファイルを配置することによって行われます。
Certbotは、更新通知を送信するためにメールアドレスを提供するように求めます。また、使用許諾契約に同意する必要があります。
Let's Encrypt CAから証明書を取得するには、証明書を生成するドメインがサーバーに向けられていることを確認する必要があります。そうでない場合は、ドメインのDNSレコードに必要な変更を加え、DNSが伝播するのを待ってから、証明書要求を再度行ってください。証明書ボットは、証明書を提供する前にドメイン認証局をチェックします。
生成された証明書は、/etc/letsencrypt/live/kibana.example.com/
ディレクトリに格納される可能性があります。SSL証明書はとして保存されfullchain.pem
、秘密鍵はとして保存されprivkey.pem
ます。
Let's Encrypt証明書の有効期限は90日です。そのため、cronjobsを使用して証明書の自動更新をセットアップすることをお勧めします。Cronは、定期的なタスクを実行するために使用されるシステムサービスです。
次のコマンドを実行して、cronジョブファイルを開きます。
sudo crontab -e
ファイルの最後に次の行を追加します。
30 5 * * 1 /usr/bin/certbot renew -a nginx --quiet
上記のcronジョブは、毎週月曜日の午前5時30分に実行されます。証明書の有効期限が切れる場合は、自動的に更新されます。
次のコマンドを実行して、Nginxのデフォルトの仮想ホストファイルを編集します。
sudo nano /etc/nginx/sites-available/default
既存のコンテンツを次のコンテンツに置き換えます。
server {
listen 80 default_server;
server_name kibana.example.com
return 301 https://$server_name$request_uri;
}
server {
listen 443 default_server ssl http2;
server_name kibana.example.com;
ssl_certificate /etc/letsencrypt/live/kibana.example.com/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/kibana.example.com/privkey.pem;
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
ssl_prefer_server_ciphers on;
ssl_ciphers "EECDH+AESGCM:EDH+AESGCM:AES256+EECDH:AES256+EDH";
ssl_ecdh_curve secp384r1;
ssl_session_cache shared:SSL:10m;
ssl_session_tickets off;
ssl_stapling on;
ssl_stapling_verify on;
resolver 8.8.8.8 8.8.4.4 valid=300s;
resolver_timeout 5s;
add_header Strict-Transport-Security "max-age=63072000; includeSubdomains";
add_header X-Frame-Options DENY;
add_header X-Content-Type-Options nosniff;
location / {
proxy_pass http://localhost:5601;
proxy_http_version 1.1;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection 'upgrade';
proxy_set_header Host $host;
proxy_cache_bypass $http_upgrade;
}
}
kibana.example.com
実際のドメイン名で更新していることを確認し、SSL証明書と秘密鍵へのパスも確認してください。
次のコマンドを実行して、Nginx Webサーバーを再起動します。
sudo systemctl restart nginx
すべてが正しく設定されている場合、Kibanaログイン画面が表示されます。kibana
設定したユーザー名とパスワードでログインします。ログインに成功し、Kibanaダッシュボードを表示できるはずです。ダッシュボードから離れます。今のところ、後で設定します。
Logstashは、前に追加した公式のElasticsearchリポジトリからもインストールできます。以下を実行してLogstashをインストールします。
sudo apt -y install logstash
上記のコマンドは、システムに最新バージョンのLogstashをインストールします。Logstashがインストールされたら、次を実行してSystemdサービスデーモンをリロードします。
sudo systemctl daemon-reload
Logstashを起動して、起動時に自動的に起動するようにします。
sudo systemctl enable logstash
sudo systemctl start logstash
次のコマンドを実行して、Logstash用のX-Packを直接インストールできます。
cd /usr/share/logstash
sudo bin/logstash-plugin install x-pack
X-Pack for Logstashにはデフォルトのユーザーが付属していますlogstash_system
。次のコマンドを実行してパスワードをリセットできます。
curl -XPUT -u elastic '192.168.0.1:9200/_xpack/security/user/logstash_system/_password?pretty' -H 'Content-Type: application/json' -d'
{
"password": "NewLogstashPassword"
}
'
置き換え192.168.0.1
、サーバの実際のプライベートIPアドレスを持つとNewLogstashPassword
Logstashユーザーの新しいパスワードを。
次のコマンドを実行して、Logstashサービスを再起動します。
sudo systemctl restart logstash
次のコマンドを実行して、Logstash構成ファイルを編集します。
sudo nano /etc/logstash/logstash.yml
ファイルの最後に次の行を追加して、Logstashインスタンスの監視を有効にします。
xpack.monitoring.enabled: true
xpack.monitoring.elasticsearch.url: http://192.168.0.1:9200
xpack.monitoring.elasticsearch.username: logstash_system
xpack.monitoring.elasticsearch.password: NewLogstashPassword
設定に応じてElasticsearch URLとLogstashパスワードを置き換えます。
これで、さまざまなビートを使用してデータを受信するようにLogstashを構成できます。使用可能なビートには、Packetbeat、Metricbeat、Filebeat、Winlogbeat、Heartbeatのいくつかのタイプがあります。各ビートを個別にインストールする必要があります。
このチュートリアルでは、Ubuntu 17.04にX-Packを使用してElastic Stackをインストールしました。基本的なELKスタックがサーバーにインストールされました。
はじめにApache Mavenは、Javaプロジェクトで使用される無料のオープンソースプロジェクト管理ツールです。プロジェクトのビルド、レポート、
Scalaはオブジェクト指向で機能的なプログラミング言語です。これは、Spark、Akkaなどのアプリケーションの開発に使用されている一般的な言語です。
一部のAndroidユーザーの間では、Javaがデバイス上でどのように機能するかについて大きな混乱があるようです。どうやら実行したいユーザーがいます
はじめにApache Mavenは、Javaプロジェクトで使用される無料のオープンソースプロジェクト管理ツールです。プロジェクトのビルド、レポート、
WindowsおよびMacOSでJavaUpdateAvailableメッセージを有効または無効にする方法。
Apache Mavenは無料でオープンソースのソフトウェアプロジェクト管理ツールで、Javaベースのアプリケーションのデプロイに広く使用されています。前提条件ニュール
JNLPファイルに慣れていない場合は、このガイドを読み続けて、JNLPファイルの詳細を確認してください。また、それらを開く方法も示します。
Windowsの[ファイル名を指定して実行]ダイアログのコマンドを使用して、Java Web StartCacheをクリアします。
このガイドでは、Apache TomcatをUbuntu 16.04サーバーにインストールする方法について説明します。前提条件新しいUbuntu 16.04サーバーインスタンスをデプロイします。非ルートsudを作成する
はじめにBukkitはMinecraftの拡張機能であり、ゲーム体験を大幅に改善できるプラグインだけでなく、いくつかの排他的な機能も提供します。
別のシステムを使用していますか?Gradleは、Apache AntおよびApache Mavenの概念に基づいた無料のオープンソースのビルド自動化ツールセットです。Gradleが提供する
はじめにJavaは、さまざまなハードウェア環境でJavaアプリケーションおよびアプレットを開発および実行できる人気のソフトウェアプラットフォームです。あります
別のシステムを使用していますか?Red5はJavaで実装されたオープンソースのメディアサーバーで、ライブストリーミングなどのFlashマルチユーザーアプリケーションを実行できます。
Elasticsearchは、人気のあるオープンソースの全文検索および分析エンジンです。汎用性、スケーラビリティ、および使いやすさのおかげで、Elasticsearchは幅広い
別のシステムを使用していますか?Gradleは、Apache AntおよびApache Mavenの概念に基づいた無料のオープンソースのビルド自動化ツールセットです。Gradleが提供する
別のシステムを使用していますか?GoCDは、オープンソースの継続的デリバリーおよび自動化システムです。並列処理を使用して複雑なワークフローをモデル化できます
人気のApache Webサーバーと同じ組織によって作成されたApache Tomcatは、訪問者にJava Webページを提供できるWebサーバーです。ティで
必要なもの1 GB以上のRAMを備えたVultr VPS。SSHアクセス(root /管理者特権で)。ステップ1:BungeeCordのインストール
このガイドでは、Ubuntu 16.04にJava 8を手動でインストールする方法を学びます。このチュートリアルの手順は、Ubuntuの他のバージョンでも機能します
ヘルスケアにおけるAIは、過去数十年から大きな飛躍を遂げました。したがって、ヘルスケアにおけるAIの未来は、日々成長を続けています。
最近、Appleは問題を修正するための補足アップデートであるmacOS Catalina 10.15.4をリリースしましたが、このアップデートにより、Macマシンのブリックにつながる問題がさらに発生しているようです。詳細については、この記事をお読みください
原子力は、過去の出来事のために私たちが決して尊重しないことを常に軽蔑していますが、それは必ずしも悪ではありません。詳細については、投稿をお読みください。
これを読んで、人工知能が小規模企業の間でどのように人気を博しているか、そして人工知能がどのように成長し、競合他社に優位に立つ可能性を高めているかを理解してください。
私たちのコンピューターは、ジャーナリングファイルシステムと呼ばれる組織化された方法ですべてのデータを保存します。これは、検索を押すとすぐにコンピューターがファイルを検索して表示できるようにする効率的な方法です。https://wethegeek.com/?p = 94116&preview = true
ビッグデータと人工知能は流行語ですが、それらがどのように相互に関連しているか知っていますか?さて、この記事を最後まで読んで、同じことを知ってください。
LiteCartは、PHP、jQuery、およびHTML 5で記述された無料のオープンソースのショッピングカートプラットフォームです。シンプルで軽量、使いやすいeコマースソフトウォー
NFSはネットワークベースのファイルシステムであり、コンピューターはコンピューターネットワークを介してファイルにアクセスできます。このガイドでは、NFを介してフォルダーを公開する方法について説明します
別のシステムを使用していますか?Matomo(旧Piwik)は、Google Analyticsのオープンな代替手段であるオープンソースの分析プラットフォームです。Matomoのソースはoでホストされています
HTTPライブストリーミング(HLS)は、Apple Inc.によって実装された非常に堅牢なストリーミングビデオプロトコルです。HLSは、ファイアウォール、プロキシ、