2017-04-17 10 views
0

初心者からPythonへ私は、バックエンドとフロントエンドサーバをhaproxy.cfgファイルに追加し、Pythonスクリプトを使って優雅なリロードを行う必要があります。あなたの何人かが私を正しい方向に向けることができますか?コードにコメントを含めると、より速く理解できるようになります。以下は 設定ファイルを解析するためのPythonスクリプト

は、おそらく

frontend fe:some_fe:bind:yyyy 
     mode tcp 
     bind x.x.x.x:yyyy name some_name 
     use_backend be:some_be:x.x.x.x:yyyy 

backend be:some_be:x.x.x.x:yyyy 
mode http 
     balance roundrobin 
     server x.x.x.x:yyyy check port yyyy 
     server x.x.x.x:yyyy check port yyyy 

は、いくつかのnotes- x.x.x.xはIPとyyyyのポートを意味します([引数])raw_inputに基づいて、私はCFGに送信するサンプルブロックです。

助けてください!事前に多くの感謝。

+0

[pyhaproxy](https://github.com/imjoey/pyhaproxy)ライブラリを参照してください。これは、haproxy設定ファイルを解析し、変更した後に書き戻すことができます。 – iterjpnic

答えて

0

読むパイソンなどに応じて、あなたの質問、編集6.1.4. Template strings

ドキュメント3.6.1» FEとsome_fe_:_feを置き換える$ {some_fe}

読むPythonの編集argparse.html#module-argparse

ドキュメント3.6.1»ご質問、仕事に使いたいコマンドラインとあなたの​​コードを追加と。

+0

ありがとう@stovfl。これはうまくいくはずですが、これをもう少しバリバリゼーションできるかどうかは疑問です。変数としてのインスタンス "fe"と値渡しとしてのについては?さらに文字列の書式設定(スペース、タブなど)は、このようになります。してくださいあなたは解決策を持っている場合、私は学習者だCOSすべてを投稿してみてください:) 'code'frontend FE::バインド: モードTCP バインド名前 が可能use_backend: 'code' – bindo

+0

ありがとうございます。私は理解するためのより速い方法を探していましたが、ドキュメントを読んで自分自身を理解しなければならないと思います。あなたはありがとう。 – bindo

+0

@bindo:間違っている、私はあなたのために物事を把握する。必要なものを確認するには、ドキュメントを読む必要があります。 – stovfl

関連する問題