<!DOCTYPE html><html lang="en"><head><meta http-equiv="Content-Type" content="text/html charset=UTF-8"><meta charset="UTF-8"><meta name="viewport" content="width=device-width"><meta name="x-apple-disable-message-reformatting"><title>TLDR DevOps</title><meta name="color-scheme" content="light dark"><meta name="supported-color-schemes" content="light dark"><style type="text/css">
:root {
color-scheme: light dark; supported-color-schemes: light dark;
}
*,
*:after,
*:before {
-webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box;
}
* {
-ms-text-size-adjust: 100%; -webkit-text-size-adjust: 100%;
}
html,
body,
.document {
width: 100% !important; height: 100% !important; margin: 0; padding: 0;
}
body {
-webkit-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale; text-rendering: optimizeLegibility;
}
div[style*="margin: 16px 0"] {
margin: 0 !important;
}
table,
td {
mso-table-lspace: 0pt; mso-table-rspace: 0pt;
}
table {
border-spacing: 0; border-collapse: collapse; table-layout: fixed; margin: 0 auto;
}
img {
-ms-interpolation-mode: bicubic; max-width: 100%; border: 0;
}
*[x-apple-data-detectors] {
color: inherit !important; text-decoration: none !important;
}
.x-gmail-data-detectors,
.x-gmail-data-detectors *,
.aBn {
border-bottom: 0 !important; cursor: default !important;
}
.btn {
-webkit-transition: all 200ms ease; transition: all 200ms ease;
}
.btn:hover {
background-color: #f67575; border-color: #f67575;
}
* {
font-family: Arial, Helvetica, sans-serif; font-size: 18px;
}
@media screen and (max-width: 600px) {
.container {
width: 100%; margin: auto;
}
.stack {
display: block!important; width: 100%!important; max-width: 100%!important;
}
.btn {
display: block; width: 100%; text-align: center;
}
}
body,
p,
td,
tr,
.body,
table,
h1,
h2,
h3,
h4,
h5,
h6,
div,
span {
background-color: #FEFEFE !important; color: #010101 !important;
}
@media (prefers-color-scheme: dark) {
body,
p,
td,
tr,
.body,
table,
h1,
h2,
h3,
h4,
h5,
h6,
div,
span {
background-color: #27292D !important; color: #FEFEFE !important;
}
}
a {
color: inherit !important; text-decoration: underline !important;
}
</style><!--[if mso | ie]>
<style type="text/css">
a {
background-color: #FEFEFE !important; color: #010101 !important;
}
@media (prefers-color-scheme: dark) {
a {
background-color: #27292D !important; color: #FEFEFE !important;
}
}
</style>
<![endif]--></head><body class="">
<div style="display: none; max-height: 0px; overflow: hidden;">AWS has announced VPC encryption controls, a new Amazon VPC capability that audits and enforces encryption in transit for all traffic </div>
<div style="display: none; max-height: 0px; overflow: hidden;">
<br>
</div>
<table align="center" class="document"><tbody><tr><td valign="top">
<table align="center" border="0" cellpadding="0" cellspacing="0" class="container" width="600"><tbody><tr class="inner-body"><td>
<table align="center" border="0" cellpadding="0" cellspacing="0" width="100%"><tbody><tr class="header"><td bgcolor="" class="container">
<table width="100%"><tbody><tr><td class="container">
<table align="center" bgcolor="" border="0" cellpadding="0" cellspacing="0" style="margin-top: 0px;" width="100%"><tbody><tr><td style="padding: 0px;">
<table align="center" bgcolor="" border="0" cellpadding="0" cellspacing="0" width="100%"><tbody><tr><td class="container" style="padding: 15px 15px;">
<div style="text-align: center;">
<span style="margin-right: 0px;"><a href="https://tracking.tldrnewsletter.com/CL0/https:%2F%2Ftldr.tech%2Fdevops%3Futm_source=tldrdevops/1/0100019ab5d1c1b4-89eec8c4-2fe6-4e9d-8ca3-b9395e710d6e-000000/Fh_JxuOKelWc0qud1KFNlofXSf2HOD-bwQZeg7W01Lg=432" rel="noopener noreferrer" target="_blank"><span>Sign Up</span></a>
|<span style="margin-right: 2px; margin-left: 2px;"><a href="https://tracking.tldrnewsletter.com/CL0/https:%2F%2Fadvertise.tldr.tech%2F%3Futm_source=tldrdevops%26utm_medium=newsletter%26utm_campaign=advertisetopnav/1/0100019ab5d1c1b4-89eec8c4-2fe6-4e9d-8ca3-b9395e710d6e-000000/yw7uasfqtBNeALbF9DLdMpGHwbV416m2f4lqKTdM6pE=432" rel="noopener noreferrer" target="_blank"><span>Advertise</span></a></span>|<span style="margin-left: 2px;"><a href="https://tracking.tldrnewsletter.com/CL0/https:%2F%2Fa.tldrnewsletter.com%2Fweb-version%3Fep=1%26lc=156bb4b0-84b7-11f0-bc2e-b90f05b5bd4b%26p=03b088ba-c916-11f0-9e0b-63b81888de10%26pt=campaign%26t=1763987014%26s=0ae209838a9f43d29323e9d7bf7920cee4a63dc8f95c866aa548365861fd8bb2/1/0100019ab5d1c1b4-89eec8c4-2fe6-4e9d-8ca3-b9395e710d6e-000000/YP0uqwtdO05iSUNWz3yeYIawkoof7bmDU3nGKLAso4c=432"><span>View Online</span></a></span>
<br>
</span></div>
</td></tr></tbody></table>
<table align="center" bgcolor="" border="0" cellpadding="0" cellspacing="0" width="100%"><tbody><tr><td class="container" style="text-align: center;"><span data-darkreader-inline-color="" style="--darkreader-inline-color:#3db3ff; color: rgb(51, 175, 255) !important; font-size: 30px;">T</span><span style="font-size: 30px;"><span data-darkreader-inline-color="" style="color: rgb(232, 192, 96) !important; --darkreader-inline-color:#e8c163; font-size:30px;">L</span><span data-darkreader-inline-color="" style="color: rgb(101, 195, 173) !important; --darkreader-inline-color:#6ec7b2; font-size:30px;">D</span></span><span data-darkreader-inline-color="" style="--darkreader-inline-color:#dd6e6e; color: rgb(220, 107, 107) !important; font-size: 30px;">R</span>
<br>
</td></tr></tbody></table>
<br>
<table align="center" bgcolor="" border="0" cellpadding="0" cellspacing="0" width="100%"><tbody><tr id="together-with"><td align="center" height="20" style="vertical-align:middle !important;" valign="middle" width="100%"><strong style="vertical-align:middle !important; height: 100%;">Together With </strong>
<a href="https://tracking.tldrnewsletter.com/CL0/https:%2F%2Fwww.n-able.com%2Fresources%2Fthe-it-leaders-playbook-for-smarter-automation%3Futm_medium=email-paid%26utm_source=playbook%26utm_campaign=nc-na-lt-dgp-tldr_newsletter_campaign-2025-11-07%26utm_content=tldr/1/0100019ab5d1c1b4-89eec8c4-2fe6-4e9d-8ca3-b9395e710d6e-000000/T5KIUZjJNv2137whT0mD0HnyT8v20-aEC4m7PF-dz4E=432"><img src="https://images.tldr.tech/n-able.png" valign="middle" style="vertical-align: middle !important; height: 100%;" alt="N-Central"></a></td></tr></tbody></table>
<table style="table-layout: fixed; width:100%;" width="100%"><tbody><tr><td style="padding:0;border-collapse:collapse;border-spacing:0;margin:0;">
<div style="text-align: center;">
<h1><strong>TLDR DevOps <span id="date">2025-11-24</span></strong></h1>
</div>
</td></tr></tbody></table>
<table style="table-layout: fixed; width:100%;" width="100%"><tbody><tr id="sponsy-copy"><td class="container" style="padding: 15px 15px;">
<div class="text-block">
<span>
<a href="https://tracking.tldrnewsletter.com/CL0/https:%2F%2Fwww.n-able.com%2Fresources%2Fthe-it-leaders-playbook-for-smarter-automation%3Futm_medium=email-paid%26utm_source=playbook%26utm_campaign=nc-na-lt-dgp-tldr_newsletter_campaign-2025-11-07%26utm_content=tldr/2/0100019ab5d1c1b4-89eec8c4-2fe6-4e9d-8ca3-b9395e710d6e-000000/9b_0thBLPqlaxvDui4Z5_vkdxBpWbcKLTsLYhtO0gng=432">
<span>
<strong>Your (ungated) playbook for smarter automation + 5 free scripts (Sponsor)</strong>
</span>
</a>
<br>
<br>
<span style="font-family: "Helvetica Neue", Helvetica, Arial, Verdana, sans-serif;">
Are you providing bonuses for script development? Holding team automation contests? How about providing time-based script dev perks?<p></p><p>If you're not getting your team involved in automation, you're missing out on their ideas. This <a href="https://tracking.tldrnewsletter.com/CL0/https:%2F%2Fwww.n-able.com%2Fresources%2Fthe-it-leaders-playbook-for-smarter-automation%3Futm_medium=email-paid%26utm_source=playbook%26utm_campaign=nc-na-lt-dgp-tldr_newsletter_campaign-2025-11-07%26utm_content=tldr/3/0100019ab5d1c1b4-89eec8c4-2fe6-4e9d-8ca3-b9395e710d6e-000000/Zj7IoASr59hR-NnYQzK_QUGzOyJgqxqD9_ENPqFo9bw=432" rel="noopener noreferrer nofollow" target="_blank"><span>N-able playbook</span></a> lays out a framework for making automation a collaborative venture. </p>
<p>Inside, you'll find:</p>
<ul>
<li>A clear strategy for implementing IT automation that delivers real impact</li>
<li>Key areas where automation drives the most value—like patching, onboarding, and alert response</li>
<li>Practical advice for managing team adoption and driving buy-in</li>
<li><a href="https://tracking.tldrnewsletter.com/CL0/https:%2F%2Fwww.n-able.com%2Fresources%2Fthe-it-leaders-playbook-for-smarter-automation%3Futm_medium=email-paid%26utm_source=playbook%26utm_campaign=nc-na-lt-dgp-tldr_newsletter_campaign-2025-11-07%26utm_content=tldr/4/0100019ab5d1c1b4-89eec8c4-2fe6-4e9d-8ca3-b9395e710d6e-000000/OlSQ31Bwz3E9uerl6c1_zx7d2I2EhI186LLNstugTQE=432" rel="noopener noreferrer nofollow" target="_blank"><span>Free ready-to-use scripts</span></a> for failed login detection, BitLocker management, screen locking, and more</li>
</ul>
<p><a href="https://tracking.tldrnewsletter.com/CL0/https:%2F%2Fwww.n-able.com%2Fresources%2Fthe-it-leaders-playbook-for-smarter-automation%3Futm_medium=email-paid%26utm_source=playbook%26utm_campaign=nc-na-lt-dgp-tldr_newsletter_campaign-2025-11-07%26utm_content=tldr/5/0100019ab5d1c1b4-89eec8c4-2fe6-4e9d-8ca3-b9395e710d6e-000000/2uSSJCIQmNQaEWnAfBLMSwL44XzLeZjTOal-cild-k8=432" rel="noopener noreferrer nofollow" target="_blank"><span>Get the playbook</span></a>
</p>
</span></span></div>
</td></tr></tbody></table>
</td></tr></tbody></table>
</td></tr></tbody></table>
</td></tr>
<tr bgcolor=""><td class="container">
<table align="center" bgcolor="" border="0" cellpadding="0" cellspacing="0" width="100%"><tbody><tr><td style="padding: 0px;">
<table align="center" bgcolor="" border="0" cellpadding="0" cellspacing="0" width="100%"><tbody><tr><td class="container" style="padding-top: 0px; padding-bottom: 0px;">
<div class="text-block">
<div style="text-align: center;"><span style="font-size: 36px;">📱</span></div></div>
</td></tr></tbody></table>
<table align="center" bgcolor="" border="0" cellpadding="0" cellspacing="0" width="100%"><tbody><tr><td class="container" style="padding-top: 0px; padding-bottom: 0px;">
<div class="text-block">
<div style="text-align: center;">
<h1><strong>News & Trends</strong></h1>
</div>
</div>
</td></tr></tbody></table>
<table style="table-layout: fixed; width: 100%;" width="100%"><tbody><tr><td style="padding:0;border-collapse:collapse;border-spacing:0;margin:0;" valign="top">
<table align="center" border="0" cellpadding="0" cellspacing="0" width="100%"><tbody><tr><td class="container" style="padding: 15px 15px;">
<div class="text-block">
<span>
<a href="https://tracking.tldrnewsletter.com/CL0/https:%2F%2Fgrafana.com%2Fblog%2F2025%2F11%2F21%2Fbreaking-siloes-how-to-use-cross-store-correlations-with-grafana%2F%3Futm_source=tldrdevops/1/0100019ab5d1c1b4-89eec8c4-2fe6-4e9d-8ca3-b9395e710d6e-000000/20BPV5F6bh1o67VlxfVTZe-cy11Wb4vLE5ahWEA9g_E=432">
<span>
<strong>Breaking siloes: How to use cross-store correlations with Grafana (6 minute read)</strong>
</span>
</a>
<br>
<br>
<span style="font-family: "Helvetica Neue", Helvetica, Arial, Verdana, sans-serif;">
Grafana users can now correlate third-party data sources with Grafana Cloud using the correlation feature in Grafana 12.3. Users can jump from a chart to logs or traces with one click. The time range and label values are carried automatically, so there is no copying and pasting or need for new agents.
</span>
</span>
</div>
</td></tr></tbody></table>
<table align="center" border="0" cellpadding="0" cellspacing="0" width="100%"><tbody><tr><td class="container" style="padding: 15px 15px;">
<div class="text-block">
<span>
<a href="https://tracking.tldrnewsletter.com/CL0/https:%2F%2Faws.amazon.com%2Fblogs%2Faws%2Fintroducing-vpc-encryption-controls-enforce-encryption-in-transit-within-and-across-vpcs-in-a-region%2F%3Futm_source=tldrdevops/1/0100019ab5d1c1b4-89eec8c4-2fe6-4e9d-8ca3-b9395e710d6e-000000/sqSzmu-hlDHauRTBEXyi1-VSVXpd1e5RE_muqOtqDKk=432">
<span>
<strong>Introducing VPC encryption controls: Enforce encryption in transit within and across VPCs in a Region (7 minute read)</strong>
</span>
</a>
<br>
<br>
<span style="font-family: "Helvetica Neue", Helvetica, Arial, Verdana, sans-serif;">
AWS has announced VPC encryption controls, a new Amazon VPC capability that audits and enforces encryption in transit for all traffic within and across VPCs in a Region. With monitor and enforce modes, organizations can gain centralized visibility and control over encryption status, identify resources allowing plaintext traffic, and ensure all future resources are created on compatible Nitro instances.
</span>
</span>
</div>
</td></tr></tbody></table>
<table align="center" border="0" cellpadding="0" cellspacing="0" width="100%"><tbody><tr><td class="container" style="padding: 15px 15px;">
<div class="text-block">
<span>
<a href="https://tracking.tldrnewsletter.com/CL0/https:%2F%2Faws.amazon.com%2Fblogs%2Fdevops%2Fintroducing-aws-cloudformation-stack-refactoring-reorganize-your-infrastructure-without-disruption%2F%3Futm_source=tldrdevops/1/0100019ab5d1c1b4-89eec8c4-2fe6-4e9d-8ca3-b9395e710d6e-000000/2NIOW9hbv9osiLTioHujJimQ9QJJmDCedNTTgnBrC8k=432">
<span>
<strong>Introducing AWS CloudFormation Stack Refactoring Console Experience: Reorganize Your Infrastructure Without Disruption (5 minute read)</strong>
</span>
</a>
<br>
<br>
<span style="font-family: "Helvetica Neue", Helvetica, Arial, Verdana, sans-serif;">
AWS CloudFormation Stack Refactoring, announced today, lets users reorganize their stacks in the CloudFormation console by moving resources between stacks, renaming logical IDs and decomposing templates without disrupting underlying infrastructure. This new console experience extends the AWS CLI experience. It is available in all commercial AWS regions.
</span>
</span>
</div>
</td></tr></tbody></table>
</td></tr></tbody></table>
<table align="center" bgcolor="" border="0" cellpadding="0" cellspacing="0" width="100%"><tbody><tr><td class="container" style="padding-top: 0px; padding-bottom: 0px;">
<div class="text-block">
<div style="text-align: center;"><span style="font-size: 36px;">🚀</span></div>
</div>
</td></tr></tbody></table>
<table align="center" bgcolor="" border="0" cellpadding="0" cellspacing="0" width="100%"><tbody><tr><td class="container" style="padding-top: 0px; padding-bottom: 0px;">
<div class="text-block">
<div style="text-align: center;">
<h1><strong>Opinions & Tutorials</strong></h1>
</div>
</div>
</td></tr></tbody></table>
<table style="table-layout: fixed; width: 100%;" width="100%"><tbody><tr><td style="padding:0;border-collapse:collapse;border-spacing:0;margin:0;" valign="top">
<table align="center" border="0" cellpadding="0" cellspacing="0" width="100%"><tbody><tr><td class="container" style="padding: 15px 15px;">
<div class="text-block">
<span>
<a href="https://tracking.tldrnewsletter.com/CL0/https:%2F%2Fpalark.com%2Fblog%2Fin-place-pod-resizing-kubernetes%2F%3Futm_source=tldrdevops/1/0100019ab5d1c1b4-89eec8c4-2fe6-4e9d-8ca3-b9395e710d6e-000000/Jwk-dP_AovVCWGLXT8N7jo8P9ZuSsb_BGHyIlD2P4IU=432">
<span>
<strong>In-place Pod resizing in Kubernetes: How it works and how to use it (12 minute read)</strong>
</span>
</a>
<br>
<br>
<span style="font-family: "Helvetica Neue", Helvetica, Arial, Verdana, sans-serif;">
Kubernetes supports in-place Pod resizing, allowing CPU and memory resources to be updated on running Pods without restarting them, with kubelet and the container runtime handling changes asynchronously. The feature, fully enabled by default in v1.33, includes a resize subresource, status tracking, and policies for restarts. Limitations remain for swap usage, Windows nodes, QoS class changes, and certain container types.
</span>
</span>
</div>
</td></tr></tbody></table>
<table align="center" border="0" cellpadding="0" cellspacing="0" width="100%"><tbody><tr><td class="container" style="padding: 15px 15px;">
<div class="text-block">
<span>
<a href="https://tracking.tldrnewsletter.com/CL0/https:%2F%2Farinco.com.au%2Fblog%2Fautomating-azure-devops-pipeline-creation%2F%3Futm_source=tldrdevops/1/0100019ab5d1c1b4-89eec8c4-2fe6-4e9d-8ca3-b9395e710d6e-000000/cm_xpV9nhJFbpwCycepRc0HIdLf0cnwth6I1QZLjjao=432">
<span>
<strong>Automating Azure DevOps Pipeline Onboarding (7 minute read)</strong>
</span>
</a>
<br>
<br>
<span style="font-family: "Helvetica Neue", Helvetica, Arial, Verdana, sans-serif;">
This post describes an automated Azure DevOps pipeline that scans a repository for YAML files and imports them all into Azure DevOps automatically, eliminating the need for manual creation. The self-contained PowerShell-based solution preserves folder structure, prevents duplicates, supports dry-run mode, and uses built-in variables for zero configuration setup.
</span>
</span>
</div>
</td></tr></tbody></table>
<table align="center" border="0" cellpadding="0" cellspacing="0" width="100%"><tbody><tr><td class="container" style="padding: 15px 15px;">
<div class="text-block">
<span>
<a href="https://tracking.tldrnewsletter.com/CL0/https:%2F%2Fwww.docker.com%2Fblog%2Fai-developer-productivity-workflow%2F%3Futm_source=tldrdevops/1/0100019ab5d1c1b4-89eec8c4-2fe6-4e9d-8ca3-b9395e710d6e-000000/uaKyc2X_dAvCNwk4v_3W2mzozFoqfE3uZz0e6hZV9M0=432">
<span>
<strong>Use AI to Boost Developer Productivity (13 minute read)</strong>
</span>
</a>
<br>
<br>
<span style="font-family: "Helvetica Neue", Helvetica, Arial, Verdana, sans-serif;">
Software engineers can improve productivity with AI tools by adopting a development process that includes prompting, planning, producing, and refining. This approach involves breaking tasks into actionable chunks, managing context, and using steering documents to guide the AI, ensuring sustainable code and maximum productivity. The habits you build and the workflows you develop will help you stay ahead of the curve as AI tools evolve.
</span>
</span>
</div>
</td></tr></tbody></table>
</td></tr></tbody></table>
<table align="center" bgcolor="" border="0" cellpadding="0" cellspacing="0" width="100%"><tbody><tr><td class="container" style="padding-top: 0px; padding-bottom: 0px;">
<div class="text-block">
<div style="text-align: center;"><span style="font-size: 36px;">🧑💻</span></div>
</div>
</td></tr></tbody></table>
<table align="center" bgcolor="" border="0" cellpadding="0" cellspacing="0" width="100%"><tbody><tr><td class="container" style="padding-top: 0px; padding-bottom: 0px;">
<div class="text-block">
<div style="text-align: center;">
<h1><strong>Resources & Tools</strong></h1>
</div>
</div>
</td></tr></tbody></table>
<table style="table-layout: fixed; width: 100%;" width="100%"><tbody><tr><td style="padding:0;border-collapse:collapse;border-spacing:0;margin:0;" valign="top">
<table align="center" border="0" cellpadding="0" cellspacing="0" width="100%"><tbody><tr><td class="container" style="padding: 15px 15px;">
<div class="text-block">
<span>
<a href="https://tracking.tldrnewsletter.com/CL0/https:%2F%2Fwww.moderne.ai%2Fcontent-library%2Fhow-uber-migrated-1m-lines-junit-2-weeks-webinar%3Futm_source=tldr%26utm_medium=email%26utm_campaign=dec_uber_webinar_nov_24%26utm_content=lp%26utm_term=register/1/0100019ab5d1c1b4-89eec8c4-2fe6-4e9d-8ca3-b9395e710d6e-000000/Ln5ReV6oN4IiN5POkkZ2-0S_DIEOkOv6NYSB2zEM33Y=432">
<span>
<strong>🚗 How Uber Migrated 1M Lines of JUnit in 2 weeks with AI and OpenRewrite (Sponsor)</strong>
</span>
</a>
<br>
<br>
<span style="font-family: "Helvetica Neue", Helvetica, Arial, Verdana, sans-serif;">
A million-line migration would take most teams months, but Uber did it in just two weeks. Using OpenRewrite and AI-assisted static analysis, they automated 4,000 pull requests and modernized 1 million lines of code - safely. In the <a href="https://tracking.tldrnewsletter.com/CL0/https:%2F%2Fwww.moderne.ai%2Fcontent-library%2Fhow-uber-migrated-1m-lines-junit-2-weeks-webinar%3Futm_source=tldr%26utm_medium=email%26utm_campaign=dec_uber_webinar_nov_24%26utm_content=lp%26utm_term=register/2/0100019ab5d1c1b4-89eec8c4-2fe6-4e9d-8ca3-b9395e710d6e-000000/gtcCQfa67GbK-dOJmkXoaHSq9-ynw3E-AYfujQYdcpo=432" rel="noopener noreferrer nofollow" target="_blank"><span>upcoming Moderne webinar</span></a>, their engineering team will share the full story. <a href="https://tracking.tldrnewsletter.com/CL0/https:%2F%2Fwww.moderne.ai%2Fcontent-library%2Fhow-uber-migrated-1m-lines-junit-2-weeks-webinar%3Futm_source=tldr%26utm_medium=email%26utm_campaign=dec_uber_webinar_nov_24%26utm_content=lp%26utm_term=register/3/0100019ab5d1c1b4-89eec8c4-2fe6-4e9d-8ca3-b9395e710d6e-000000/ojIiwpHGP2yJMZ-e1CKK3ELo9AJKkm4216k7JU-SSzA=432" rel="noopener" target="_blank"><span>Join live</span></a>
</span>
</span>
</div>
</td></tr></tbody></table>
<table align="center" border="0" cellpadding="0" cellspacing="0" width="100%"><tbody><tr><td class="container" style="padding: 15px 15px;">
<div class="text-block">
<span>
<a href="https://tracking.tldrnewsletter.com/CL0/https:%2F%2Fgithub.com%2Fpshenok%2Fserver-survival%3Futm_source=tldrdevops/1/0100019ab5d1c1b4-89eec8c4-2fe6-4e9d-8ca3-b9395e710d6e-000000/1hXzTcvwv_RBl4ADnKJqBeg4hRn7fx0UsWiz1m3Bc_U=432">
<span>
<strong>Server Survival (GitHub Repo)</strong>
</span>
</a>
<br>
<br>
<span style="font-family: "Helvetica Neue", Helvetica, Arial, Verdana, sans-serif;">
Server Survival, a 3D simulation game, puts players in the role of a Cloud Architect tasked with building a resilient cloud infrastructure and managing budgets while fighting off DDoS attacks. Players can use a toolbar to build their architecture, balancing the cost and upkeep of each service to survive as long as possible and maintain their budget and reputation.
</span>
</span>
</div>
</td></tr></tbody></table>
<table align="center" border="0" cellpadding="0" cellspacing="0" width="100%"><tbody><tr><td class="container" style="padding: 15px 15px;">
<div class="text-block">
<span>
<a href="https://tracking.tldrnewsletter.com/CL0/https:%2F%2Fwww.jpt.sh%2Fprojects%2Ftrifold%2F%3Futm_source=tldrdevops/1/0100019ab5d1c1b4-89eec8c4-2fe6-4e9d-8ca3-b9395e710d6e-000000/I3BrZLZUIa6Az0pJJ9oCmpXbiFhMMvYifcTv_j4k0A0=432">
<span>
<strong>trifold (Resource)</strong>
</span>
</a>
<br>
<br>
<span style="font-family: "Helvetica Neue", Helvetica, Arial, Verdana, sans-serif;">
trifold is a tool that serves static websites using a content delivery network (CDN).
</span>
</span>
</div>
</td></tr></tbody></table>
</td></tr></tbody></table>
<table align="center" bgcolor="" border="0" cellpadding="0" cellspacing="0" width="100%"><tbody><tr><td class="container" style="padding-top: 0px; padding-bottom: 0px;">
<div class="text-block">
<div style="text-align: center;"><span style="font-size: 36px;">🎁</span></div></div>
</td></tr></tbody></table>
<table align="center" bgcolor="" border="0" cellpadding="0" cellspacing="0" width="100%"><tbody><tr><td class="container" style="padding-top: 0px; padding-bottom: 0px;">
<div class="text-block">
<div style="text-align: center;"><strong><h1>Miscellaneous</h1></strong></div>
</div>
</td></tr></tbody></table>
<table bgcolor="" style="table-layout: fixed; width: 100%;" width="100%"><tbody><tr><td style="padding:0;border-collapse:collapse;border-spacing:0;margin:0;" valign="top">
<table align="center" border="0" cellpadding="0" cellspacing="0" width="100%"><tbody><tr><td class="container" style="padding: 15px 15px;">
<div class="text-block">
<span>
<a href="https://tracking.tldrnewsletter.com/CL0/https:%2F%2Fdev.to%2Fdevin-rosario%2Fimplementing-terraform-drift-detection-in-your-workflow-56op%3Futm_source=tldrdevops/1/0100019ab5d1c1b4-89eec8c4-2fe6-4e9d-8ca3-b9395e710d6e-000000/cVcDr0qkN0dlQbYiPkdyvRE8nuiAuq5cVANzdOt2q6U=432">
<span>
<strong>Implementing Terraform Drift Detection in Your Workflow (9 minute read)</strong>
</span>
</a>
<br>
<br>
<span style="font-family: "Helvetica Neue", Helvetica, Arial, Verdana, sans-serif;">
Infrastructure drift occurs when live cloud resources diverge from Terraform configurations, causing security gaps, compliance violations, and significant unexpected costs. Implementing continuous drift detection using tools like Terraform plan, Driftctl, or Spacelift enables automated alerts, reconciliation, and code alignment, reducing financial waste, maintaining compliance, and ensuring infrastructure matches declared state.
</span>
</span>
</div>
</td></tr></tbody></table>
<table align="center" border="0" cellpadding="0" cellspacing="0" width="100%"><tbody><tr><td class="container" style="padding: 15px 15px;">
<div class="text-block">
<span>
<a href="https://tracking.tldrnewsletter.com/CL0/https:%2F%2Fengineeringblog.yelp.com%2F2025%2F09%2Fs3-server-access-logs-at-scale.html%3Futm_source=tldrdevops/1/0100019ab5d1c1b4-89eec8c4-2fe6-4e9d-8ca3-b9395e710d6e-000000/rN2mdB8c9G2ZSPHsN4SZsMRWsj4y6H0JSdo7sfsnzZU=432">
<span>
<strong>S3 server access logs at scale (14 minute read)</strong>
</span>
</a>
<br>
<br>
<span style="font-family: "Helvetica Neue", Helvetica, Arial, Verdana, sans-serif;">
Yelp implemented object-level logging on its Amazon S3 buckets to improve data security, troubleshoot permission issues, and identify unused data for deletion, after AWS added essential features like date-based partitioning for S3 server access logs in November 2023. By converting raw logs to parquet format, Yelp reduced storage size by 85% and the number of objects by 99.99%, also using a single AWS account for querying between different accounts. The company uses access-based retention to delete unused objects. It is planning to forward S3 server access logs to Splunk for more efficient troubleshooting in the future.
</span>
</span>
</div>
</td></tr></tbody></table>
</td></tr></tbody></table>
<table align="center" bgcolor="" border="0" cellpadding="0" cellspacing="0" width="100%"><tbody><tr><td class="container" style="padding-top: 0px; padding-bottom: 0px;">
<div class="text-block">
<div style="text-align: center;"><span style="font-size: 36px;">⚡</span></div></div>
</td></tr></tbody></table>
<table align="center" bgcolor="" border="0" cellpadding="0" cellspacing="0" width="100%"><tbody><tr><td class="container" style="padding-top: 0px; padding-bottom: 0px;">
<div class="text-block">
<div style="text-align: center;">
<h1><strong>Quick Links</strong></h1>
</div>
</div>
</td></tr></tbody></table>
<table bgcolor="" style="table-layout: fixed; width: 100%;" width="100%"><tbody><tr><td style="padding:0;border-collapse:collapse;border-spacing:0;margin:0;" valign="top">
<table align="center" border="0" cellpadding="0" cellspacing="0" width="100%"><tbody><tr><td class="container" style="padding: 15px 15px;">
<div class="text-block">
<span>
<a href="https://tracking.tldrnewsletter.com/CL0/https:%2F%2Fengage.broadcom.com%2Fmainframe-bigironbits%3Futm_source=TLDR%26utm_medium=Paid%26utm_campaign=Tldr-DO-Nov/1/0100019ab5d1c1b4-89eec8c4-2fe6-4e9d-8ca3-b9395e710d6e-000000/IeZi-f_SWgrHA07jjsfhDfng2xLPNAOqIv2rshHLNbY=432">
<span>
<strong>Big Iron Bits: The mainframe mockumentary you never knew you needed (Sponsor)</strong>
</span>
</a>
<br>
<br>
<span style="font-family: "Helvetica Neue", Helvetica, Arial, Verdana, sans-serif;">
The mainframe is thriving! Big Iron Bits: a Mainframe Mockumentary explains why everyone still needs Big Iron. Think <em>The I.T. Crowd</em> meets <em>Silicon Valley</em>. <a href="https://tracking.tldrnewsletter.com/CL0/https:%2F%2Fengage.broadcom.com%2Fmainframe-bigironbits%3Futm_source=TLDR%26utm_medium=Paid%26utm_campaign=Tldr-DO-Nov/2/0100019ab5d1c1b4-89eec8c4-2fe6-4e9d-8ca3-b9395e710d6e-000000/-lsCavUpKm-2v9rl0i6UbKom-absXOJn6o2ex91_D_4=432" rel="noopener noreferrer nofollow" target="_blank"><span>Start watching now</span></a>
</span>
</span>
</div>
</td></tr></tbody></table>
<table align="center" border="0" cellpadding="0" cellspacing="0" width="100%"><tbody><tr><td class="container" style="padding: 15px 15px;">
<div class="text-block">
<span>
<a href="https://tracking.tldrnewsletter.com/CL0/https:%2F%2Ftechcommunity.microsoft.com%2Fblog%2Fazureinfrastructureblog%2Fmanage-azure-firewall-rulesnsg-rules-using-terraform-resource-blocks-and-csv-fil%2F4467764%3Futm_source=tldrdevops/1/0100019ab5d1c1b4-89eec8c4-2fe6-4e9d-8ca3-b9395e710d6e-000000/4KWIYVnwz4gKIn6i4GzANSuae49IqA46AbIIsZSFRqU=432">
<span>
<strong>Manage Azure Firewall Rules, NSG rules, using Terraform resource blocks and CSV files (2 minute read)</strong>
</span>
</a>
<br>
<br>
<span style="font-family: "Helvetica Neue", Helvetica, Arial, Verdana, sans-serif;">
Using CSV files to define Azure Firewall, NSG, and route table rules allows Terraform to dynamically generate resources, reducing code clutter and simplifying bulk updates.
</span>
</span>
</div>
</td></tr></tbody></table>
<table align="center" border="0" cellpadding="0" cellspacing="0" width="100%"><tbody><tr><td class="container" style="padding: 15px 15px;">
<div class="text-block">
<span>
<a href="https://tracking.tldrnewsletter.com/CL0/https:%2F%2Flinks.tldrnewsletter.com%2FNKxEZJ/1/0100019ab5d1c1b4-89eec8c4-2fe6-4e9d-8ca3-b9395e710d6e-000000/3RLjiKlzhVdiUh4xQ_5McOoIoaRCwVRHCSJHHuLg9Z0=432">
<span>
<strong>Kubernetes Guardrail Extension: Bringing Compliance-as-Code to Your Browser (5 minute read)</strong>
</span>
</a>
<br>
<br>
<span style="font-family: "Helvetica Neue", Helvetica, Arial, Verdana, sans-serif;">
The Kubernetes Guardrail Extension validates YAML files directly in GitHub and GitLab, giving developers instant, in-browser feedback on compliance and security best practices before commit.
</span>
</span>
</div>
</td></tr></tbody></table>
</td></tr></tbody></table>
<table align="center" bgcolor="" border="0" cellpadding="0" cellspacing="0" width="100%"><tbody><tr><td align="left" style="word-break: break-word; vertical-align: top; padding: 5px 10px;">
<p style="padding: 0; margin: 0; font-size: 22px; color: #000000; line-height: 1.6; font-weight: bold;">
Love TLDR? Tell your friends and get rewards!
</p>
</td></tr>
<tr><td class="container" style="padding: 0px 10px 15px;">
<div class="text-block">
Share your referral link below with friends to get free TLDR swag!
</div>
</td></tr>
<tr><td align="left" style="padding: 10px;">
<div class="text-block">
<a href="https://tracking.tldrnewsletter.com/CL0/https:%2F%2Frefer.tldr.tech%2Fb957c121%2F10/1/0100019ab5d1c1b4-89eec8c4-2fe6-4e9d-8ca3-b9395e710d6e-000000/Pnp1FzqXsrHv2I4f-1WXs0kSUTJpQKYmHCLw4co_Vs4=432" style="color: #464ba4; text-decoration: underline;">https://refer.tldr.tech/b957c121/10</a>
</div>
</td></tr>
<tr></tr>
<tr><td align="left" style="padding:5px 10px;">
<a href="https://tracking.tldrnewsletter.com/CL0/https:%2F%2Fhub.sparklp.co%2Fsub_87a3a5d479ea%2F10/1/0100019ab5d1c1b4-89eec8c4-2fe6-4e9d-8ca3-b9395e710d6e-000000/6PspfR33edMluaI_oIE4vlOrHOUlpoIuwDN5FizWXwE=432" style="font-size: 16px; line-height: 1.6; padding: 10px 0; display: inline-block; text-decoration: underline;"><span style="mso-text-raise:13pt; text-decoration: underline;">Track your referrals here.</span></a>
</td></tr></tbody></table>
<table align="center" bgcolor="" border="0" cellpadding="0" cellspacing="0" width="100%"><tbody><tr><td align="left" style="word-break: break-word; vertical-align: top; padding: 5px 10px;">
<p style="padding: 0; margin: 0; font-size: 22px; color: #000000; line-height: 1.6; font-weight: bold;">
Want to advertise in TLDR? 📰
</p>
<div class="text-block" style="margin-top: 10px;">
If your company is interested in reaching an audience of devops professionals and decision makers, you may want to <a href="https://tracking.tldrnewsletter.com/CL0/https:%2F%2Fadvertise.tldr.tech%2F%3Futm_source=tldrdevops%26utm_medium=newsletter%26utm_campaign=advertisecta/1/0100019ab5d1c1b4-89eec8c4-2fe6-4e9d-8ca3-b9395e710d6e-000000/NsmoM4g-zS9nHnh2I15g0I8ATFk0jYI6Cl1PKo1y7js=432"><strong><span>advertise with us</span></strong></a>.
</div>
<br>
<!-- New "Want to work at TLDR?" section -->
<p style="padding: 0; margin: 0; font-size: 22px; color: #000000; line-height: 1.6; font-weight: bold;">
Want to work at TLDR? 💼
</p>
<div class="text-block" style="margin-top: 10px;">
<a href="https://tracking.tldrnewsletter.com/CL0/https:%2F%2Fjobs.ashbyhq.com%2Ftldr.tech/1/0100019ab5d1c1b4-89eec8c4-2fe6-4e9d-8ca3-b9395e710d6e-000000/qSCklboezr0KMnWgCuyNmsRZo58ZUOc9bupqZFlYX5I=432" rel="noopener noreferrer" style="color: #0000EE; text-decoration: underline;" target="_blank"><strong>Apply here</strong></a> or send a friend's resume to <a href="mailto:jobs@tldr.tech" style="color: #0000EE; text-decoration: underline;">jobs@tldr.tech</a> and get $1k if we hire them!
</div>
<br>
<div class="text-block">
If you have any comments or feedback, just respond to this email!
<br>
<br> Thanks for reading,
<br>
<a href="https://tracking.tldrnewsletter.com/CL0/https:%2F%2Fwww.linkedin.com%2Fin%2Fkunaljaydesai%2F/1/0100019ab5d1c1b4-89eec8c4-2fe6-4e9d-8ca3-b9395e710d6e-000000/KVmlZFuypBgFDUPmQTWMH8Fy1B6yGcqfOqrpiMDZchg=432"><span>Kunal Desai</span></a> & <a href="https://tracking.tldrnewsletter.com/CL0/https:%2F%2Fwww.linkedin.com%2Fin%2Fmartin-hauskrecht%2F/1/0100019ab5d1c1b4-89eec8c4-2fe6-4e9d-8ca3-b9395e710d6e-000000/4IpQ7Z3SgImK1vXa9kdEdeobFYIL1KYBoSysJd4roWI=432"><span>Martin Hauskrecht</span></a>
<br>
<br>
</div>
<br>
</td></tr></tbody></table>
<table align="center" bgcolor="" border="0" cellpadding="0" cellspacing="0" width="100%"><tbody><tr><td class="container" style="padding: 15px 15px;">
<div class="text-block" id="testing-id">
<a href="https://tracking.tldrnewsletter.com/CL0/https:%2F%2Ftldr.tech%2Fdevops%2Fmanage%3Femail=silk.theater.56%2540fwdnl.com/1/0100019ab5d1c1b4-89eec8c4-2fe6-4e9d-8ca3-b9395e710d6e-000000/0AakIAqNVex9CoawaXcWdOJz40fBCIS83GxuKTgb1F0=432">Manage your subscriptions</a> to our other newsletters on tech, startups, and programming. Or if TLDR DevOps isn't for you, please <a href="https://tracking.tldrnewsletter.com/CL0/https:%2F%2Fa.tldrnewsletter.com%2Funsubscribe%3Fep=1%26l=1c5ddf10-b6dc-11ed-a12f-33c00cd07e37%26lc=156bb4b0-84b7-11f0-bc2e-b90f05b5bd4b%26p=03b088ba-c916-11f0-9e0b-63b81888de10%26pt=campaign%26pv=4%26spa=1763985683%26t=1763987014%26s=5594ff2698a3751e5b76f7a70cb5b92598610bad123fff298f473c809c0cb01e/1/0100019ab5d1c1b4-89eec8c4-2fe6-4e9d-8ca3-b9395e710d6e-000000/k7Js_BQQVqZqQZxsnj-V_X3XDkUpvlTSytsEs6OZY84=432">unsubscribe</a>.
<br>
</div>
</td></tr></tbody></table>
</td></tr></tbody></table>
</td></tr></tbody></table>
</td></tr></tbody></table>
</td></tr></tbody></table>
<img alt="" src="http://tracking.tldrnewsletter.com/CI0/0100019ab5d1c1b4-89eec8c4-2fe6-4e9d-8ca3-b9395e710d6e-000000/MIOVDo-BD9DUrY3knRvurzQZld4rUAgYnD3J_dSRum8=432" style="display: none; width: 1px; height: 1px;">
</body></html>