0

RHNSatelliteのAPIとインターフェイスするPythonスクリプトを作成しようとしています。以下のコードは、指定されたサーバー(var id)に対してリモートコマンドが即座に実行されるようにスケジュールします。問題は、Satelliteサーバーが指定してからちょうど2時間後にコマンドをスケジュールすることです。これがどこで起こっているのかわかりません。SatelliteサーバーとクライアントはすべてRHEL6です。これが私のコードです:

#!/bin/python
import xmlrpclib
from datetime import date, datetime, time, timedelta
from sys import argv
import socket
import os

SATELLITE_URL = "https://URL"
SATELLITE_LOGIN = "username"
SATELLITE_PASSWORD = "password"
client = xmlrpclib.Server(SATELLITE_URL, verbose=0)
key = client.auth.login(SATELLITE_LOGIN, SATELLITE_PASSWORD)
id = [] #Satellite server ID
script = "#!/bin/sh \n yum update -y"


def schedule_script():

    earliest_occurrence = xmlrpclib.DateTime()
    print earliest_occurrence
    client.system.scheduleScriptRun(key, id, "root", "root", 300, script, earliest_occurrence)

schedule_script()

client.auth.logout(key)

変数「earliest_occurrence」を出力すると、現在の時刻が出力されます。サテライトサーバーで「日付」を実行すると、正しい時刻が出力されます。

どんな助けでも大歓迎です。ありがとう!

4

1 に答える 1

0

これは現在解決されていますが、その方法が正確にはわかりません。私が確認した 2 つのことは、Satellite サーバー自体が正しいタイムゾーン (EST と MST) にあることでした。もう 1 つは、API キーの生成に使用されたアカウントが正しいタイムゾーンに設定されていることを確認したことです。API アカウントで Satellite にログインすると、問題が解決したように見えました。残念ながら、何も変更していないため、何が修正されたのかわかりません。ただし、これらは同じ問題があるかどうかを確認するためのものです。

于 2013-01-23T19:36:45.260 に答える