我有一堆 CoreOS 机器,它们通过 ignition 模板安装,通过 matchbox 提供服务。这些机器运行的是 1185.3.0,这不是最新的稳定版本。但它们不会自动更新。我可以使用 手动触发更新update_engine_client -check_for_update
,它们会正确更新。以下是自动更新检查的日志摘录:
Feb 16 23:16:35 kore6 update_engine[32226]: I0216 23:16:35.101521 32226 prefs.cc:51] certificate-report-to-send-update not present in /var/lib/update_engine/prefs
Feb 16 23:16:35 kore6 update_engine[32226]: I0216 23:16:35.101647 32226 prefs.cc:51] certificate-report-to-send-download not present in /var/lib/update_engine/prefs
Feb 16 23:16:35 kore6 update_engine[32226]: I0216 23:16:35.102347 32226 omaha_request_params.cc:58] Current group set to stable
Feb 16 23:16:35 kore6 update_engine[32226]: I0216 23:16:35.102634 32226 update_attempter.cc:465] Already updated boot flags. Skipping.
Feb 16 23:16:35 kore6 update_engine[32226]: I0216 23:16:35.102658 32226 update_attempter.cc:608] Scheduling an action processor start.
Feb 16 23:16:35 kore6 update_engine[32226]: I0216 23:16:35.102708 32226 action_processor.cc:36] ActionProcessor::StartProcessing: OmahaRequestAction
Feb 16 23:16:35 kore6 update_engine[32226]: I0216 23:16:35.102998 32226 omaha_request_action.cc:245] Posting an Omaha request to https://public.update.core-os.net/v1/update/
Feb 16 23:16:35 kore6 update_engine[32226]: I0216 23:16:35.103022 32226 omaha_request_action.cc:246] Request: <?xml version="1.0" encoding="UTF-8"?>
Feb 16 23:16:35 kore6 update_engine[32226]: <request protocol="3.0" version="CoreOSUpdateEngine-0.1.0.0" updaterversion="CoreOSUpdateEngine-0.1.0.0" installsource="scheduler" ismachine="1">
Feb 16 23:16:35 kore6 update_engine[32226]: <os version="Chateau" platform="CoreOS" sp="1185.3.0_x86_64"></os>
Feb 16 23:16:35 kore6 update_engine[32226]: <app appid="{e96281a6-d1af-4bde-9a0a-97b76e56dc57}" version="1185.3.0" track="stable" bootid="{a5ae9efe-11d2-4850-a29d-2f5da6ec2673}" oem="" oemversion="" alephversion="1185.3.0" machineid="806d28d1d39c45fdbeab2df0aa203da9" lang="en-US" board="amd64-usr" hardware_class="" delta_okay="false" >
Feb 16 23:16:35 kore6 update_engine[32226]: <ping active="1"></ping>
Feb 16 23:16:35 kore6 update_engine[32226]: <updatecheck></updatecheck>
Feb 16 23:16:35 kore6 update_engine[32226]: <event eventtype="3" eventresult="2" previousversion=""></event>
Feb 16 23:16:35 kore6 update_engine[32226]: </app>
Feb 16 23:16:35 kore6 update_engine[32226]: </request>
Feb 16 23:16:35 kore6 update_engine[32226]: I0216 23:16:35.103039 32226 libcurl_http_fetcher.cc:48] Starting/Resuming transfer
Feb 16 23:16:35 kore6 update_engine[32226]: I0216 23:16:35.107463 32226 libcurl_http_fetcher.cc:164] Setting up curl options for HTTPS
Feb 16 23:16:35 kore6 update_engine[32226]: I0216 23:16:35.164806 32226 libcurl_http_fetcher.cc:427] Setting up timeout source: 1 seconds.
Feb 16 23:16:35 kore6 update_engine[32226]: I0216 23:16:35.539963 32226 libcurl_http_fetcher.cc:240] HTTP response code: 200
Feb 16 23:16:35 kore6 update_engine[32226]: I0216 23:16:35.542742 32226 libcurl_http_fetcher.cc:297] Transfer completed (200), 267 bytes downloaded
Feb 16 23:16:35 kore6 update_engine[32226]: I0216 23:16:35.542783 32226 omaha_request_action.cc:563] Omaha request response: <?xml version="1.0" encoding="UTF-8"?>
Feb 16 23:16:35 kore6 update_engine[32226]: <response protocol="3.0" server="update.core-os.net">
Feb 16 23:16:35 kore6 update_engine[32226]: <daystart elapsed_seconds="0"></daystart>
Feb 16 23:16:35 kore6 update_engine[32226]: <app appid="e96281a6-d1af-4bde-9a0a-97b76e56dc57" status="ok">
Feb 16 23:16:35 kore6 update_engine[32226]: <updatecheck status="noupdate"></updatecheck>
Feb 16 23:16:35 kore6 update_engine[32226]: </app>
Feb 16 23:16:35 kore6 update_engine[32226]: </response>
Feb 16 23:16:35 kore6 update_engine[32226]: I0216 23:16:35.543097 32226 omaha_request_action.cc:383] No update.
Feb 16 23:16:35 kore6 update_engine[32226]: I0216 23:16:35.543140 32226 action_processor.cc:82] ActionProcessor::ActionComplete: finished OmahaRequestAction, starting OmahaResponseHandlerAction
Feb 16 23:16:35 kore6 update_engine[32226]: I0216 23:16:35.543157 32226 omaha_response_handler_action.cc:36] There are no updates. Aborting.
Feb 16 23:16:35 kore6 update_engine[32226]: I0216 23:16:35.543175 32226 action_processor.cc:68] ActionProcessor::ActionComplete: OmahaResponseHandlerAction action failed. Aborting processing.
Feb 16 23:16:35 kore6 update_engine[32226]: I0216 23:16:35.543189 32226 action_processor.cc:73] ActionProcessor::ActionComplete: finished last action of type OmahaResponseHandlerAction
Feb 16 23:16:35 kore6 update_engine[32226]: I0216 23:16:35.543201 32226 update_attempter.cc:280] Processing Done.
Feb 16 23:16:35 kore6 update_engine[32226]: I0216 23:16:35.543233 32226 update_attempter.cc:313] No update.
Feb 16 23:16:35 kore6 update_engine[32226]: I0216 23:16:35.543265 32226 update_check_scheduler.cc:82] Next update check in 47m37s
这是我运行之后的同一个日志文件update_engine_client -check_for_update
:
Feb 16 23:27:11 kore6 update_engine[32226]: I0216 23:27:11.093904 32226 dbus_service.cc:57] Attempting interactive update
Feb 16 23:27:11 kore6 update_engine[32226]: I0216 23:27:11.093967 32226 update_attempter.cc:253] New update check requested
Feb 16 23:27:11 kore6 update_engine[32226]: I0216 23:27:11.095021 32226 omaha_request_params.cc:58] Current group set to stable
Feb 16 23:27:11 kore6 update_engine[32226]: I0216 23:27:11.095325 32226 update_attempter.cc:465] Already updated boot flags. Skipping.
Feb 16 23:27:11 kore6 update_engine[32226]: I0216 23:27:11.095361 32226 update_attempter.cc:608] Scheduling an action processor start.
Feb 16 23:27:11 kore6 update_engine[32226]: I0216 23:27:11.095469 32226 action_processor.cc:36] ActionProcessor::StartProcessing: OmahaRequestAction
Feb 16 23:27:11 kore6 update_engine[32226]: I0216 23:27:11.095847 32226 omaha_request_action.cc:245] Posting an Omaha request to https://public.update.core-os.net/v1/update/
Feb 16 23:27:11 kore6 update_engine[32226]: I0216 23:27:11.095887 32226 omaha_request_action.cc:246] Request: <?xml version="1.0" encoding="UTF-8"?>
Feb 16 23:27:11 kore6 update_engine[32226]: <request protocol="3.0" version="CoreOSUpdateEngine-0.1.0.0" updaterversion="CoreOSUpdateEngine-0.1.0.0" installsource="ondemandupdate" ismachine="1">
Feb 16 23:27:11 kore6 update_engine[32226]: <os version="Chateau" platform="CoreOS" sp="1185.3.0_x86_64"></os>
Feb 16 23:27:11 kore6 update_engine[32226]: <app appid="{e96281a6-d1af-4bde-9a0a-97b76e56dc57}" version="1185.3.0" track="stable" bootid="{a5ae9efe-11d2-4850-a29d-2f5da6ec2673}" oem="" oemversion="" alephversion="1185.3.0" machineid="806d28d1d39c45fdbeab2df0aa203da9" lang="en-US" board="amd64-usr" hardware_class="" delta_okay="false" >
Feb 16 23:27:11 kore6 update_engine[32226]: <ping active="1"></ping>
Feb 16 23:27:11 kore6 update_engine[32226]: <updatecheck></updatecheck>
Feb 16 23:27:11 kore6 update_engine[32226]: <event eventtype="3" eventresult="2" previousversion=""></event>
Feb 16 23:27:11 kore6 update_engine[32226]: </app>
Feb 16 23:27:11 kore6 update_engine[32226]: </request>
Feb 16 23:27:11 kore6 update_engine[32226]: I0216 23:27:11.095916 32226 libcurl_http_fetcher.cc:48] Starting/Resuming transfer
Feb 16 23:27:11 kore6 update_engine[32226]: I0216 23:27:11.096164 32226 libcurl_http_fetcher.cc:164] Setting up curl options for HTTPS
Feb 16 23:27:11 kore6 update_engine[32226]: I0216 23:27:11.179698 32226 libcurl_http_fetcher.cc:427] Setting up timeout source: 1 seconds.
Feb 16 23:27:11 kore6 update_engine[32226]: I0216 23:27:11.604357 32226 libcurl_http_fetcher.cc:240] HTTP response code: 200
Feb 16 23:27:11 kore6 update_engine[32226]: I0216 23:27:11.610756 32226 libcurl_http_fetcher.cc:297] Transfer completed (200), 767 bytes downloaded
Feb 16 23:27:11 kore6 update_engine[32226]: I0216 23:27:11.610851 32226 omaha_request_action.cc:563] Omaha request response: <?xml version="1.0" encoding="UTF-8"?>
Feb 16 23:27:11 kore6 update_engine[32226]: <response protocol="3.0" server="update.core-os.net">
Feb 16 23:27:11 kore6 update_engine[32226]: <daystart elapsed_seconds="0"></daystart>
Feb 16 23:27:11 kore6 update_engine[32226]: <app appid="e96281a6-d1af-4bde-9a0a-97b76e56dc57" status="ok">
Feb 16 23:27:11 kore6 update_engine[32226]: <updatecheck status="ok">
Feb 16 23:27:11 kore6 update_engine[32226]: <urls>
Feb 16 23:27:11 kore6 update_engine[32226]: <url codebase="https://update.release.core-os.net/amd64-usr/1235.9.0/"></url>
Feb 16 23:27:11 kore6 update_engine[32226]: </urls>
Feb 16 23:27:11 kore6 update_engine[32226]: <manifest version="1235.9.0">
Feb 16 23:27:11 kore6 update_engine[32226]: <packages>
Feb 16 23:27:11 kore6 update_engine[32226]: <package hash="QP7VzgChmbSzhcrcG1ZaG0KkhB8=" name="update.gz" size="264914273" required="false"></package>
Feb 16 23:27:11 kore6 update_engine[32226]: </packages>
Feb 16 23:27:11 kore6 update_engine[32226]: <actions>
Feb 16 23:27:11 kore6 update_engine[32226]: <action event="postinstall" ChromeOSVersion="" sha256="BmH7OF/zrM/i69mJqa7V6O6RPqAzWcOubldp9ik5lKo=" needsadmin="false" IsDelta="false" DisablePayloadBackoff="true"></action>
Feb 16 23:27:11 kore6 update_engine[32226]: </actions>
Feb 16 23:27:11 kore6 update_engine[32226]: </manifest>
Feb 16 23:27:11 kore6 update_engine[32226]: </updatecheck>
Feb 16 23:27:11 kore6 update_engine[32226]: </app>
Feb 16 23:27:11 kore6 update_engine[32226]: </response>
Feb 16 23:27:11 kore6 update_engine[32226]: I0216 23:27:11.611179 32226 omaha_request_action.cc:416] Found 1 url(s)
Feb 16 23:27:11 kore6 update_engine[32226]: I0216 23:27:11.611270 32226 omaha_request_action.cc:452] Processing first of 1 package(s)
两个请求看起来完全相同,但响应却不同。这是怎么回事?