私は展開プロセスを自動化するためにAnsibleを使用したいと思っています。それについての言葉はほとんど言わないよ。私の場合は、展開プロセスは、2つのステップで構成されます。可能な、Windows - ネットワークフォルダへのアクセス方法?
更新DB(SQLスクリプト)
は、(異なるマシン上で)さまざまなネットワークフォルダへのファイルの定義済みのセットをコピーするために
この目的で私はInstaller.exeと呼ばれる特別な自己書き換えプログラムを使用します。私はそれを自分で実行すると、自分の資格情報で操作を実行します。それで、私のすべての権利があります。ネットワークフォルダとSQL Databeseへのアクセス。 私のプログラム(Installer.exe)の代わりに、私のプログラムのラッパーとしてAnsibleを使用したいと思います。私の目標シナリオ - 私は、設定ファイルを準備し、リモートWindowsマシン上でインストーラを実行します。私は問題に直面しました - 私のプログラムはAnsibleによって運営されており、私の完全な権利はありません。同じコンピュータ上のSQLデータベース1に正常にアクセスできますが、リモートマシンまたはアクセスネットワークフォルダのSQLデータベース2にはアクセスできません。私はいつもネットワークアクセスで "アクセス拒否"を取得し、SQLデータベースはNT AUTHORITY \ ANONYMOUS LOGONについて何か言います。 ダブルホップの問題のように見えますが、私が理解している限り正確にはありません。ダブルホップはサービスアカウントに関するものですが、自分の個人的なaccounとリモートサーバーにアクセスしようとしています。
UPD 1:そのグループの 私の変数は次のとおりです。私は、次のコマンドを実行しますAnsibleを持つ任意のアクションの前に
ansible_user: [email protected]
ansible_port: 5986
ansible_connection: winrm
ansible_winrm_server_cert_validation: ignore
ansible_winrm_operation_timeout_sec: 120
ansible_winrm_read_timeout_sec: 150
ansible_winrm_transport: kerberos
ansible_winrm_kerberos_delegation: yes
:
$> kinit [email protected]
とパスワードを入力します。後でklistを実行すると、有効なチケットが表示されます。私はドメインアカウントを使用しようとしましたが、ローカルシステムアカウントは使用しませんでした。私はそれを正しくしていますか?
UPD 2:私は脚本では、このようなコマンドを追加する場合:Windowsマシンが実行されているように聞こえる、あなたの問題声明に基づき
fatal: [targetserver.abc.ru]: FAILED! => {"changed": true, "failed": true, "rc": 1, "stderr": "", "stdout": "\r\nCurrent LogonId is 0:0x20265db4\r\nError calling API LsaCallAuthenticationPackage (ShowTickets substatus): 1312\r\n\r\nklist failed with 0xc000005f/-1073741729: A specified logon session does not exist. It may already have been terminated.\r\n\r\n\r\n", "stdout_lines": ["", "Current LogonId is 0:0x20265db4", "Error calling API LsaCallAuthenticationPackage (ShowTickets substatus): 1312", "", "klist failed with 0xc000005f/-1073741729: A specified logon session does not exist. It may already have been terminated.", "", ""]}
同じ問題があります。ネットワークフォルダにアクセスしようとするとアクセスが拒否されます。 また、win_command:whoamiは、私がansible_userに設定した適切なドメインユーザーを表示し、win_command: 'net use s://some.server.name/a_network_folder/user:domain \ username password' win_command:net useはドライブsを「使用不可」と表示します。 この問題を解決できましたか?どうやって? –