4.1 KiB
Runbook: Attestor - Rekor Transparency Log Unreachable
Sprint: SPRINT_20260117_029_DOCS_runbook_coverage Task: RUN-005 - Attestor Runbooks
Metadata
| Field | Value |
|---|---|
| Component | Attestor |
| Severity | High |
| On-call scope | Platform team |
| Last updated | 2026-01-17 |
| Doctor check | check.attestor.rekor-connectivity |
Symptoms
- Attestation transparency logging failing
- Alert
AttestorRekorUnavailablefiring - Error: "Rekor server unavailable" or "transparency log submission failed"
- Attestations created but not anchored to transparency log
- Verification failing due to missing log entry
Impact
| Impact Type | Description |
|---|---|
| User-facing | Attestations not publicly verifiable via transparency log |
| Data integrity | Attestations still valid locally; transparency reduced |
| SLA impact | Compliance may require transparency log anchoring |
Diagnosis
Quick checks
-
Check Doctor diagnostics:
stella doctor --check check.attestor.rekor-connectivity -
Check Rekor connectivity:
stella attest rekor status -
Test Rekor endpoint:
stella attest rekor ping
Deep diagnosis
-
Check Rekor server URL:
stella attest config get rekor.urlDefault: https://rekor.sigstore.dev
-
Check for public Rekor outage:
stella attest rekor api-statusAlso check: https://status.sigstore.dev/
-
Check network/proxy issues:
stella attest rekor test --verboseLook for: TLS errors, proxy blocks, timeout
-
Check pending log entries:
stella attest rekor pending-entries
Resolution
Immediate mitigation
-
Queue attestations for later submission:
stella attest config set rekor.queue_on_failure true stella attest reload -
Disable Rekor requirement temporarily:
stella attest config set rekor.required false stella attest reloadWarning: Reduces transparency guarantees
-
Use private Rekor instance if available:
stella attest config set rekor.url https://rekor.internal.example.com stella attest reload
Root cause fix
If public Rekor outage:
- Wait for Sigstore to resolve the issue
- Check status at https://status.sigstore.dev/
- Process queued entries when service recovers:
stella attest rekor process-queue
If network/firewall issue:
-
Verify outbound HTTPS to rekor.sigstore.dev:
stella attest rekor connectivity --verbose -
Configure proxy if required:
stella attest config set rekor.proxy https://proxy:8080 -
Add Rekor endpoints to firewall allowlist:
- rekor.sigstore.dev:443
- fulcio.sigstore.dev:443 (for certificate issuance)
If TLS certificate issue:
-
Check certificate validity:
stella attest rekor cert-check -
Update CA certificates:
stella crypto ca update
If private Rekor instance issue:
- Check private Rekor server status
- Verify Rekor database health
- Check Rekor signer availability
Verification
# Test Rekor connectivity
stella attest rekor ping
# Submit test entry
stella attest rekor test-submit
# Process any queued entries
stella attest rekor process-queue
# Verify recent attestation in log
stella attest rekor lookup --attestation <attestation-id>
Prevention
- Redundancy: Configure private Rekor instance as fallback
- Queuing: Enable queue-on-failure for resilience
- Monitoring: Alert on Rekor submission failures
- Offline: Document attestation validity without Rekor for air-gap scenarios
Related Resources
- Architecture:
docs/modules/attestor/transparency-log.md - Related runbooks:
attestor-signing-failed.md,attestor-verification-failed.md - Sigstore docs: https://docs.sigstore.dev/
- Rekor setup:
docs/operations/rekor-configuration.md