Linuxシステムのstorm uiにはkillトポロジー機能がありますが、マスクがなければ、stormトポロジーは簡単に強制終了されます。ほとんどの場合、uiアドレスはわかっていますが、システムのセキュリティ上、Storm uiのkill機能をシールドする必要があります。
2つの方法があります。
1.遠位増加nginxのは、殺すボタンに対応し、場所
UIページ解析を行い、HTMLはアクションです。< Br>
コードは次のとおりです。 =' button' value =' Kill'
jsのconfirmActionメソッドが呼び出されますこのメソッドはstorm-core /src /ui /public /js /script.jsにあります。 :
コードは次のとおりです。
function confirmAction(id、name、action、wait、defaultWait){var opts = {type:‘、URL:‘ /topology /’} + id +‘ /’ + action};
if(wait){
var waitSecs = prompt(‘ + action +‘ topology');’ + name +‘'?’ +‘はいの場合は、wait timを指定してください秒単位のe:’、defaultWait); if(waitSecs!= null& waitSecs!='& sureInt(waitSecs)){opts.url + =‘ /’ + waitSecs; } else {return false;}
} else if(!確認します(本当にアクション+アクション+トポロジ+名前+’?’?’?’?’?’?)を返します。{return false;}
$(' input [ type = button]')attr(< disabled< /disabled> disabled'); $。ajax(opts).always(function(){window.location.reload();})。fail(function() {alert(Nimbusとの通信中にエラーが発生しました。}); falseを返す;}
表示方法は大きく2つのステップに分かれており、投稿リクエストのURLを生成します。フォーマットは‘ /topology /です。 ’ + id +‘ /action +‘ + waitSecs、ここでactionはkill、waitSecsは強制終了時の手動入力時間(30秒など)、最終的なURL形式は次のとおりです。
コードは次のとおりです。
/topology /xxxxx /kill /xxxx
2番目のステップは、この設定に基づいてajaxリクエストを起動することです。 nginxを次のように設定します。
コードは次のとおりです。
upstream storm {< Br>
サーバー127.0.0.1:8888 weight = 3 max_fails = 3 fail_timeout = 5s;}
サーバー{
server_name storm.xxx.com;
listen 80;
proxy_set_headerホスト$ host;
proxy_read_timeout 3600;
proxy_set_header $ remote_addr用; access_log /var/log/nginx/storm.access.logメイン; error_log /var/log/nginx/storm.error.logデバッグ;場所〜* /topology/(.*)/kill/(.*){return 403;}
location /{
proxy_pass http://storm;
}
}
このようにして、フロントエンドのkill関数を隠すことができます。
細かい点に注意してください。デフォルトのstorm uiのポートは8080です。このポートはnmと競合します(https://github.com/yahoo/storm-yarn/issues/25を参照)、storm.yaml uiを設定します。 .port:8888、そしてuiを再起動します。
2.コードを変更してアクション関連のボタンを削除します。
コードは次のとおりです。
storm-core /src /ui /public /topology.html
次のセクションを削除します。
コードは次のとおりです。
"div id ='トポロジアクション'"
"h2 class =' js-only'"トポロジアクション "/h2"
"p id ='トポロジアクション' jsのみ'"
"/p"
"/div"
2番目の方法は再コンパイルが必要で、テストされていません。 。
上記はLinuxシステムにおけるstorm uiのkill関数をシールドする方法ですが、2つ目の方法はまだテストされていないので、この2つの方法を紹介します。
Microsoftシステムのプロセス管理では、タスクマネージャを開くこと、プロセスを表示すること、プロセスを終了すること、またはプロセスを作成することはできません。しかし、Linuxシステムではプロセ
Linuxシステムの動作中に、起動後に端末インタフェースによって-bash-2.05b $と表示され、端末がカラーで表示されなくなります。次の小シリーズでは、Linux端末のプロンプト-bash-2.
Linuxシステムは他のシステムと比較してコマンドラインを使ってさまざまな操作を実行できますが、これは顕著な特徴です。今日、XiaobianはLinuxシステムでコマンドを使用してファイルの内容を見つ
TecplotはLinuxシステム用のデータ分析ソフトウェアで、Tecplotの機能がより充実し、使用される人々の数が増えています。 Linuxシステムでtecplotにメモをインストールする方法を紹