@@ -86,6 +86,7 @@ function setup() {
86
86
echo " LOG_DUMP_SSH_USER not set, but required when using log_dump_custom_get_instances"
87
87
exit 1
88
88
fi
89
+ source " ${KUBE_ROOT} /hack/lib/util.sh"
89
90
}
90
91
91
92
function log-dump-ssh() {
@@ -504,18 +505,23 @@ function dump_nodes_with_logexporter() {
504
505
local -r logexport_sleep_seconds=" $(( 90 + NUM_NODES / 3 )) "
505
506
506
507
# Fill in the parameters in the logexporter daemonset template.
507
- sed -i' ' -e " s@{{.LogexporterNamespace}}@${logexporter_namespace} @g" " ${KUBE_ROOT} /cluster/log-dump/logexporter-daemonset.yaml"
508
- sed -i' ' -e " s@{{.ServiceAccountCredentials}}@${service_account_credentials} @g" " ${KUBE_ROOT} /cluster/log-dump/logexporter-daemonset.yaml"
509
- sed -i' ' -e " s@{{.CloudProvider}}@${cloud_provider} @g" " ${KUBE_ROOT} /cluster/log-dump/logexporter-daemonset.yaml"
510
- sed -i' ' -e " s@{{.GCSPath}}@${gcs_artifacts_dir} @g" " ${KUBE_ROOT} /cluster/log-dump/logexporter-daemonset.yaml"
511
- sed -i' ' -e " s@{{.EnableHollowNodeLogs}}@${enable_hollow_node_logs} @g" " ${KUBE_ROOT} /cluster/log-dump/logexporter-daemonset.yaml"
512
- sed -i' ' -e " s@{{.DumpSystemdJournal}}@${dump_systemd_journal} @g" " ${KUBE_ROOT} /cluster/log-dump/logexporter-daemonset.yaml"
513
- sed -i' ' -e " s@{{.ExtraLogFiles}}@${extra_log_files} @g" " ${KUBE_ROOT} /cluster/log-dump/logexporter-daemonset.yaml"
514
- sed -i' ' -e " s@{{.ExtraSystemdServices}}@${extra_systemd_services} @g" " ${KUBE_ROOT} /cluster/log-dump/logexporter-daemonset.yaml"
508
+ local -r tmp=" ${KUBE_TEMP} /logexporter"
509
+ local -r manifest_yaml=" ${tmp} /logexporter-daemonset.yaml"
510
+ mkdir -p " ${tmp} "
511
+ cp " ${KUBE_ROOT} /cluster/log-dump/logexporter-daemonset.yaml" " ${manifest_yaml} "
512
+
513
+ sed -i' ' -e " s@{{.LogexporterNamespace}}@${logexporter_namespace} @g" " ${manifest_yaml} "
514
+ sed -i' ' -e " s@{{.ServiceAccountCredentials}}@${service_account_credentials} @g" " ${manifest_yaml} "
515
+ sed -i' ' -e " s@{{.CloudProvider}}@${cloud_provider} @g" " ${manifest_yaml} "
516
+ sed -i' ' -e " s@{{.GCSPath}}@${gcs_artifacts_dir} @g" " ${manifest_yaml} "
517
+ sed -i' ' -e " s@{{.EnableHollowNodeLogs}}@${enable_hollow_node_logs} @g" " ${manifest_yaml} "
518
+ sed -i' ' -e " s@{{.DumpSystemdJournal}}@${dump_systemd_journal} @g" " ${manifest_yaml} "
519
+ sed -i' ' -e " s@{{.ExtraLogFiles}}@${extra_log_files} @g" " ${manifest_yaml} "
520
+ sed -i' ' -e " s@{{.ExtraSystemdServices}}@${extra_systemd_services} @g" " ${manifest_yaml} "
515
521
516
522
# Create the logexporter namespace, service-account secret and the logexporter daemonset within that namespace.
517
523
KUBECTL=" ${KUBE_ROOT} /cluster/kubectl.sh"
518
- if ! " ${KUBECTL} " create -f " ${KUBE_ROOT} /cluster/log-dump/logexporter-daemonset.yaml " ; then
524
+ if ! " ${KUBECTL} " create -f " ${manifest_yaml} " ; then
519
525
echo " Failed to create logexporter daemonset.. falling back to logdump through SSH"
520
526
" ${KUBECTL} " delete namespace " ${logexporter_namespace} " || true
521
527
dump_nodes " ${NODE_NAMES[@]} "
@@ -629,6 +635,7 @@ function detect_node_failures() {
629
635
630
636
function main() {
631
637
setup
638
+ kube::util::ensure-temp-dir
632
639
# Copy master logs to artifacts dir locally (through SSH).
633
640
echo " Dumping logs from master locally to '${report_dir} '"
634
641
dump_masters
0 commit comments