Connecting to production: the architecture of remote bindings

Post Syndicated from Samuel Macleod original https://blog.cloudflare.com/connecting-to-production-the-architecture-of-remote-bindings/

Remote bindings are bindings that connect to a deployed resource on your Cloudflare account instead of a locally simulated resource – and recently, we announced that remote bindings are now generally available

With this launch, you can now connect to deployed resources like R2 buckets and D1 databases while running Worker code on your local machine. This means you can test your local code changes against real data and services, without the overhead of deploying for each iteration. 

In this blog post, we’ll dig into the technical details of how we built it, creating a seamless local development experience.

Developing on the Workers platform

A key part of the Cloudflare Workers platform has been the ability to develop your code locally without having to deploy it every time you wanted to test something – though the way we’ve supported this has changed greatly over the years. 

We started with wrangler dev running in remote mode. This works by deploying and connecting to a preview version of your Worker that runs on Cloudflare’s network every time you make a change to your code, allowing you to test things out as you develop. However, remote mode isn’t perfect — it’s complex and hard to maintain. And the developer experience leaves a lot to be desired: slow iteration speed, unstable debugging connections, and lack of support for multi-worker scenarios. 

Those issues and others motivated a significant investment in a fully local development environment for Workers, which was released in mid-2023 and became the default experience for wrangler dev. Since then, we’ve put a huge amount of work into the local dev experience with Wrangler, the Cloudflare Vite plugin (alongside @cloudflare/vitest-pool-workers) & Miniflare.

Still, the original remote mode remained accessible via a flag: wrangler dev --remote. When using remote mode, all the DX benefits of a fully local experience and the improvements we’ve made over the last few years are bypassed. So why do people still use it? It enables one key unique feature: binding to remote resources while locally developing. When you use local mode to develop a Worker locally, all of your bindings are simulated locally using local (initially empty) data. This is fantastic for iterating on your app’s logic with test data – but sometimes that’s not enough, whether you want to share resources across your team, reproduce bugs tied to real data, or just be confident that your app will work in production with real resources.

Given this, we saw an opportunity: If we could bring the best parts of remote mode (i.e. access to remote resources) to wrangler dev, there’d be one single flow for developing Workers that would enable many use cases, while not locking people out of the advancements we’ve made to local development. And that’s what we did! 

As of Wrangler v4.37.0 you can pick on a per-binding basis whether a binding should use remote or local resources, simply by specifying the remote option. It’s important to re-emphasise this—you only need to add remote: true! There’s no complex management of API keys and credentials involved, it all just works using Wrangler’s existing Oauth connection to the Cloudflare API.

{
  "name": "my-worker",
  "compatibility_date": "2025-01-01",
  "kv_namespaces": [{
    "binding": "KV",
    "id": "my-kv-id",
  },{
    "binding": "KV_2",
    "id": "other-kv-id",
    "remote": true
  }],
  "r2_buckets": [{
    "bucket_name": "my-r2-name",
    "binding": "R2"
  }]
}

The eagle-eyed among you might have realised that some bindings already worked like this, accessing remote resources from local dev. Most prominently, the AI binding was a trailblazer for what a general remote bindings solution could look like. From its introduction, the AI binding always connected to a remote resource, since a true local experience that supports all the different models you can use with Workers AI would be impractical and require a huge upfront download of AI models. 

As we realised different products within Workers needed something similar to remote bindings (Images and Hyperdrive, for instance), we ended up with a bit of a patchwork of different solutions. We’ve now unified under a single remote bindings solution that works for all binding types.

How we built it

We wanted to make it really easy for developers to access remote resources without having to change their production Workers code, and so we landed on a solution that required us to fetch data from the remote resource at the point of use in your Worker.

const value = await env.KV.get("some-key")

The above code snippet shows accessing the “some-key” value in the env.KV KV namespace, which is not available locally and needs to be fetched over the network.

So if that was our requirement, how would we get there? For instance, how would we get from a user calling env.KV.put(“key”, “value”) in their Worker to actually storing that in a remote KV store? The obvious solution was perhaps to use the Cloudflare API. We could have just replaced the entire env locally with stub objects that made API calls, transforming env.KV.put() into PUT http:///accounts/{account_id}/storage/kv/namespaces/{namespace_id}/values/{key_name}

This would’ve worked great for KV, R2, D1, and other bindings with mature HTTP APIs, but it would have been a pretty complex solution to implement and maintain. We would have had to replicate the entire bindings API surface and transform every possible operation on a binding to an equivalent API call. Additionally, some binding operations don’t have an equivalent API call, and wouldn’t be supportable using this strategy.

Instead, we realised that we already had a ready-made API waiting for us — the one we use in production! 

How bindings work under the hood in production

Most bindings on the Workers platform boil down to essentially a service binding. A service binding is a link between two Workers that allows them to communicate over HTTP or JSRPC (we’ll come back to JSRPC later). 

For example, the KV binding is implemented as a service binding between your authored Worker and a platform Worker, speaking HTTP. The JS API for the KV binding is implemented in the Workers runtime, and translates calls like env.KV.get() to HTTP calls to the Worker that implements the KV service. 


Diagram showing a simplified model of how a KV binding works in production

You may notice that there’s a natural async network boundary here — between the runtime translating the env.KV.get() call and the Worker that implements the KV service. We realised that we could use that natural network boundary to implement remote bindings. Instead of the production runtime translating env.KV.get() to an HTTP call, we could have the local runtime (workerd) translate env.KV.get() to an HTTP call, and then send it directly to the KV service, bypassing the production runtime. And so that’s what we did!


Diagram showing a locally run worker with a single KV binding, with a single remote proxy client that communicates to the remote proxy server, which in turn communicates with the remote KV

The above diagram shows a local Worker running with a remote KV binding. Instead of being handled by the local KV simulation, it’s now being handled by a remote proxy client. This Worker then communicates with a remote proxy server connected to the real remote KV resource, ultimately allowing the local Worker to communicate with the remote KV data seamlessly.

Each binding can independently either be handled by a remote proxy client (all connected to the same remote proxy server) or by a local simulation, allowing for very dynamic workflows where some bindings are locally simulated while others connect to the real remote resource, as illustrated in the example below:


The above diagram and config shows a Worker (running on your computer) bound to 3 different resources—two local (KV & R2), and one remote (KV_2)

How JSRPC fits in

The above section deals with bindings that are backed by HTTP connections (like KV and R2), but modern bindings use JSRPC. That means we needed a way for the locally running workerd to speak JSRPC to a production runtime instance. 

In a stroke of good luck, a parallel project was going on to make this possible, as detailed in the Cap’n Web blog. We integrated that by making the connection between the local workerd instance and the remote runtime instance communicate over websockets using Cap’n Web, enabling bindings backed by JSRPC to work. This includes newer bindings like Images, as well as JSRPC service bindings to your own Workers.

Remote bindings with Vite, Vitest and the JavaScript ecosystem

We didn’t want to limit this exciting new feature to only wrangler dev. We wanted to support it in our Cloudflare Vite Plugin and vitest-pool-workers packages, as well as allowing any other potential tools and use cases from the JavaScript ecosystem to also benefit from it.

In order to achieve this, the wrangler package now exports utilities such as startRemoteProxySession that allow tools not leveraging wrangler dev to also support remote bindings. You can find more details in the official remote bindings documentation.

How do I try this out?

Just use wrangler dev! As of Wrangler v4.37.0 (@cloudflare/vite-plugin v1.13.0, @cloudflare/vitest-pool-workers v0.9.0), remote bindings are available in all projects, and can be turned on a per-binding basis by adding remote: true to the binding definition in your Wrangler config file.

Attackers accelerate, adapt, and automate: Rapid7’s Q3 2025 Threat Landscape Report

Post Syndicated from Rapid7 original https://www.rapid7.com/blog/post/tr-rapid7-q3-2025-threat-landscape-report

The Q3 2025 Threat Landscape Report, authored by the Rapid7 Labs team, paints a clear picture of an environment where attackers are moving faster, working smarter, and using artificial intelligence to stay ahead of defenders. The findings reveal a threat landscape defined by speed, coordination, and innovation.

The quarter showed how quickly exploitation now follows disclosure: Rapid7 observed newly reported vulnerabilities weaponized within days, if not hours, leaving organizations little time to patch before attackers struck. Critical business platforms and third-party integrations were frequent targets, as adversaries sought direct paths to disruption. Ransomware remained a most visible threat, but the nature of these operations continued to evolve.

Groups such as Qilin, Akira, and INC Ransom drove much of the activity, while others went quiet, rebranded, or merged into larger collectives. The overall number of active groups increased compared to the previous quarter, signaling renewed energy across the ransomware economy. Business services, manufacturing, and healthcare organizations were the most affected, with the majority of incidents occurring in North America.

Many newer actors opted for stealth, limiting public exposure by leaking fewer victim details, opting for “information-lite” screenshots in an effort to thwart law enforcement. Some established groups built alliances and shared infrastructure to expand reach such as Qilin extending its influence through partnerships with DragonForce and LockBit. Meanwhile, SafePay gained ground by running a fully in-house, hands-on model avoiding inter-party duelling and law enforcement. These trends show how ransomware has matured into a complex, service-based ecosystem.

Nation-state operations in Q3 favored persistence and stealth over disruption. Russian, Chinese, Iranian, and North Korean-linked groups maintained long-running campaigns. Many targeted identity systems, telecom networks, and supply chains. Rapid7’s telemetry showed these actors shrinking the window between disclosure and exploitation and relying on legitimate synchronization processes to remain hidden for months. The result: attacks that are harder to spot and even harder to contain.

Threat actors are fully operationalizing AI to enhance deception, automate intrusions, and evade detection. Generative tools now power realistic phishing, deepfake vishing, influence operations, and adaptive malware like LAMEHUG. This means the theoretical risk of AI has been fully operationalized. Defenders must now assume attackers are using these tools and techniques against them and not just supposing they are. 

This is but a taste of the valuable threat information the report has to offer. In addition to deeper dives on the subjects above, the threat report includes analysis of some of the most common compromise vectors, new vulnerabilities and existing ones still favored by attackers, and, of course, our recommendations to safeguard against compromises across your entire attack surface. 

Want to learn more? Click here to download the report

On Hacking Back

Post Syndicated from Bruce Schneier original https://www.schneier.com/blog/archives/2025/11/on-hacking-back.html

Former DoJ attorney John Carlin writes about hackback, which he defines thus: “A hack back is a type of cyber response that incorporates a counterattack designed to proactively engage with, disable, or collect evidence about an attacker. Although hack backs can take on various forms, they are—­by definition­—not passive defensive measures.”

His conclusion:

As the law currently stands, specific forms of purely defense measures are authorized so long as they affect only the victim’s system or data.

At the other end of the spectrum, offensive measures that involve accessing or otherwise causing damage or loss to the hacker’s systems are likely prohibited, absent government oversight or authorization. And even then parties should proceed with caution in light of the heightened risks of misattribution, collateral damage, and retaliation.

As for the broad range of other hack back tactics that fall in the middle of active defense and offensive measures, private parties should continue to engage in these tactics only with government oversight or authorization. These measures exist within a legal gray area and would likely benefit from amendments to the CFAA and CISA that clarify and carve out the parameters of authorization for specific self-defense measures. But in the absence of amendments or clarification on the scope of those laws, private actors can seek governmental authorization through an array of channels, whether they be partnering with law enforcement or seeking authorization to engage in more offensive tactics from the courts in connection with private litigation.

И пак за руската хибридна война срещу демокрациите

Post Syndicated from Григор original http://www.gatchev.info/blog/?p=2672

Ето ви сериозно съкратен разказ за една от многото руски групи за пропагандни лъжи, кръстена от изследователите на Майкрософт “Storm-1516”. (Числото е пореден номер.)

—-

Започнала е като клон на Агенцията за Интернет проучвания – руска пропагандна група, създадена от Евгений Пригожин и регистрирана като „частна фирма“, за да се прикрие фактът, че е управлявана от отдела за активни мероприятия в чужбина на КГБ. Отделното съществуване на Storm-1516 е забелязано за пръв път от група изследователи на дезинформацията в медиите в университета Клемсън.

Основният им канал за разпространение са създавани в YouTube и X акаунти, представящи се за разследващи журналисти или уисълблоуъри. След това разпространява чрез тях пропагандни лъжи на английски, руски, финландски, арабски и френски езици. Често една и съща лъжа се пуска през няколко акаунта, за да оставя впечатление за достоверност.

Основният ѝ метод е заснемане на фалшиви видеота с участие на актьори или генерирането им с AI (по-рано – с дийпфейкване). Вероятната локация на екипа, който заснема видеотата с актьори, е Санкт Петербург. Те често се позовават на източници, които всъщност не съществуват. Пуснатите от тях видеота, както и другите пропагандни лъжи, след това биват споделяни от контролирани от ГРУ ботмрежи за ехо-акаунти.

В командването на групата вероятно взимат участие, или се намират под общо командване с нея, антилибералният „Центр геополитических экспертиз“ и друга пропагандна група, известна като „Фондация для борьбы с несправедливости“. Тясно свързани с нея са:

– групата Storm-1099, специализирана в създаване на фалшиви или имитационни пропагандни уебсайтове
– групата Storm-1679, специализирана в създаване на фалшиви документи и новинарски рапорти от името на достоверно изглеждащи, но фалшиви организации
– Ruza Flood, Volga Flood и Rybar – организации, които също разпространяват фалшива информация, често под името на реална личност (напр. Rybar – Михаил Звинчук) или фалшива персона, изпълнявана от актьор (напр. „Саня от Флорида“).

Свързана с нея изглежда и руската медийна компания Tenet Media, затворена през 2024 г. Основната ѝ дейност е била да плаща на десни блогъри в САЩ да снимат видеота с поръчано от нея съдържание.

Някои от основните теми, по които Storm-1516 генерират фалшиво съдържание, са:

– Намаляване на подкрепата за западна помощ за Украйна срещу руската агресия

През май 2024 г. те пускат фалшиво видео, което показва как украински войници горят чучело на Доналд Тръмп.

Много от фалшивките им лъжат, че украинските лидери злоупотребяват със западната помощ – купуват си яхти, имения, луксозни коли, наркотици и т.н. Имало е случаи, когато американски политици са се хващали на тези лъжи.

– Подкрепа за Доналд Тръмп

Честа тяхна теза е че украински тролски ферми работят срещу избирането на Доналд Тръмп. Целта ѝ е да прикрие отлично доказания факт, че всички руски тролски ферми бяха ангажирани в подкрепа на Доналд Тръмп. Едно от фалшивите видеота показва „служител на украинска тролска ферма“, който „си признава“, че ЦРУ изпълнява заговор, за да попречи на Тръмп да стане президент.

– Свързване на Украйна с Хамас

През октомври 2023 г. те пускат фалшиво видео, в което „ръководител на Хамас“ (лицето му е скрито) „благодари на Зеленски за доставките на оръжие и муниции“. В реалността между Украйна и Хамас няма връзки. Същият актьор в друго видео, пуснато преди Олимпийските игри в Париж, предупреждава, че „Хамас ще атакуват Олимпийските игри“. Видеото е широко разпространено чрез руските тролски мрежи. Френските и израелските служби потвърждават, че е фалшиво.

– Подкрепа за Доналд Тръмп

От началото на лятото на 2024 г. до самите избори за президент в САЩ групата, както и всички други тролски ресурси на ГРУ, е съсредоточена върху подкрепа за Доналд Тръмп. Storm-1516 основно произвеждат фалшиви видеота и новини, обвиняващи кандидатите на демократите в престъпления и разпространяващи конспиративни теории спрямо тях. През това време групата оперира над 100 фалшиви уебсайта, които очернят демократите и хвалят Тръмп и Русия. Частта от групата, която се грижи за тези сайтове, е ръководена от Джон Марк Дугън – бивш полицай от Флорида, конспиративен теорист, уличен в платена проруска пропаганда и потърсил политическо убежище в Русия.

Един от разпространяваните от групата фалшификати е, че Сикрет Сървис са открили в имението на Тръмп подслушвателни устройства, монтирани там от ФБР. Тръмп и Ванс също споделят тази лъжа в социалните мрежи.

Друг гласи, че при посещение в Замбия Камала Харис е застреляла нелегално Касуба – популярен женски черен носорог (видът е застрашен от изчезване). Фалшификатът е споделен от над милион фалшиви акаунта в Х, както и от работещи за Русия западни пропагандисти (Chay Bowes и т.н.)

Друго тяхно фалшиво видео, разпространено от Джон Дугън, „показва“ как поддръжници на Камала Харис атакуват сбирка на поддръжници на Тръмп и пребиват един от посетителите. Към това са прикрепени обичайните опорки за „агресивните леви екстремисти“, и коментари, целящи да засилят междурасови напрежения в САЩ.

На друго тяхно фалшиво видео „нелегален имигрант от Хаити“ разказва „как му е било платено да гласува за Харис многократно с различни шофьорски книжки“.

На друго тяхно фалшиво видео, пуснато в деня на изборите, „американски гласоподавател“ разказва как двама поддръжници на Харис нападнали и пребили поддръжник на Тръмп, за да му попречат да гласува.

В много агресивно разпространявано тяхно видео, видяно от почти 3 милиона души, жена твърди че е била блъсната като тинейджърка през 2011 г. от Камала Харис с кола и оставена да умре. Била цялата изпотрошена, претърпяла 11 операции преди да проходи отново, била и до момента в постоянни болки и т.н… Жената, посочена в различни източници като „Алисия Браун“, „Алиша Браун“ и т.н., е платена актриса. Рентгеновата снимка, показана във видеото за нейна, е взета от медицинско списание. Снимката на катастрофата от видеото е от катастрофа в Гуам през 2018 г. Новинарската агенция, посочена във видеото като източник на материала, не съществува (с изключение на фалшив уебсайт, създаден и поддържан от Storm-1516). Частта от видеото, на която Камала Харис напуска мястото на катастрофата, е дийпфейк… Видеото е споделено от много конгресмени-републиканци, включително Дж. Д. Ванс.

През октомври 2024 г., точно преди изборите, Storm-1516 прави съвместна кампания с QAnon за изкарване на Тим Валц (кандидат за вицепрезидент на демократите) педофил. Близко до QAnon радио излъчва „интервюта“ с „родител“ (в ролята – Джон Дугън) на „ученик“ на Валц, и със „студент на Валц от Казахстан“. (Проверката показва, че в училището, където преподава Валц, за последните 20 години не е имало студенти от Казахстан.) Части от излъчването са споделени масово от руски тролски ботмрежи и са видени от над 800 000 души в САЩ.

Един от акаунтите, споделили излъчването, е “BlackInsurrectionist” – създаден и управляван от Storm-1516. Има го във всички големи социални мрежи, следван е от водещи републикански политици (вкл. Тръмп-младши и Роджър Стоун). С тяхна помощ излъчването стига до около 33 милиона души.

В средата на октомври 2024 г. този акаунт пуска видео с е-майл, за който твърди, че е от малолетен, сексуално преследван от Валц. Многобройни признаци, че видеото е фалшификат, са моментално посочени от много негови зрители, но търсенията в Гугъл за „Tim Waltz pedophile“ скачат стократно. Няколко дни по-късно друг акаунт за конспиративни теории, също управляван от Storm-1516, пуска друго видео с подобни твърдения. Трето подобно видео, очевидно дело на същата група, е пуснато от акаунт на QAnon. Анализ на експерти от Wired показва, че всичките тези видеота са дийпфейкове.

На 19 октомври почти всички сайтове, управлявани от Джон Дугън, пускат голям репортаж, който цитира тези видеота (и ги представя за истински). Репортажът е цитиран от десни инфлуенсъри, между тях Кендис Оуенс и Джак Пособиец. На 21 октомври експерти на Wired успяват да докажат, че видеотата са дело на Storm-1516.

Друго фалшиво видео, създадено от същата група и пуснато през акаунт на QAnon 2 дни преди изборите, показва как член на изборна комисия проверява пратени по пощата бюлетини и къса тези, които са за Доналд Тръмп. Експертите веднага забелязват, че материалите и бюлетините, показани във видеото, не са истински – очевидно реквизиторът на групата се е изложил.

… Мога да напиша още няколко пъти по толкова за тях. А като погледнете поредния им номер, се досещайте колко още са като тях.

Правете си изводите.

Introducing the Amazon OpenSearch Lens for the AWS Well-Architected Framework

Post Syndicated from Muslim Abu-Taha original https://aws.amazon.com/blogs/big-data/introducing-the-amazon-opensearch-lens-for-the-aws-well-architected-framework/

Earlier this year, we released the Amazon OpenSearch Service Lens, an AWS Well-Architected whitepaper. The AWS Well-Architected Framework provides a consistent approach for evaluating architectures and implementing scalable designs. Using this framework, the Amazon OpenSearch Service Lens outlines how to perform AWS Well-Architected reviews to assess and identify technical risks in your OpenSearch Service deployments.

In this post, we show you how to use the Amazon OpenSearch Service Lens to evaluate your OpenSearch Service workloads against architectural best practices.

Understanding the AWS Well-Architected Framework

At AWS, a well-architected cloud environment is fundamental to helping you achieve your business outcomes. The AWS Well-Architected Framework represents the collective experience of AWS from working with organizations across industries, distilled into a structured approach for evaluating architectures and implementing designs that scale over time. The AWS Well-Architected Framework is built on six pillars: Operational Excellence, Security, Reliability, Performance Efficiency, Cost Optimization, and Sustainability. Using the Framework, cloud architects, system builders, engineers, and developers can build secure, high performance, resilient, and efficient infrastructure for their applications and workloads.

OpenSearch Service Lens

The OpenSearch Service Lens is a collection of customer-proven design principles and best practices to help you adopt a cloud-native approach to using Amazon OpenSearch Service. These recommendations are based on insights that AWS has gathered from customers, AWS Partners, the community, and our own AWS OpenSearch technical specialist communities.

The OpenSearch Service Lens extends the AWS Well-Architected Framework to help you address critical architectural questions specific to Amazon OpenSearch workloads, for example:

  • How do you size and configure Amazon OpenSearch Service domains for optimal performance?
  • What data retention and lifecycle management strategies help balance cost and accessibility?
  • How do you implement security controls that protect sensitive data while maintaining search functionality?
  • What operational practices ensure reliable search experiences as your data volumes grow?

The OpenSearch Service Lens joins a collection of AWS Well-Architected Lenses that focus on specialized workloads such as the Internet of Things (IoT), games, artificial intelligence (AI) and machine learning (ML), SAP, and serverless technology.

The lens highlights some of the most common areas for assessment and improvement. It is designed to align with and provide insights across the six pillars of the AWS Well-Architected Framework:

  • Operational excellence focuses on running and monitoring systems to deliver business value, and continually improving processes and procedures. This topic includes the ability to support development and run workloads effectively, gaining insights into their operations, and continuously improve supporting processes to deliver business value.
  • Security focuses on protecting your data and systems. This addresses implementing fine-grained access control for users and applications, securing domain access through encryption and network controls, detecting and mitigating vulnerabilities, reducing potential attack surfaces, and protecting sensitive data.
  • Reliability focuses on ensuring an end user environment performs correctly and consistently when it’s expected to. This topic includes implementing automatic disaster recovery mechanisms, designing multi-Availability Zone deployments for high availability, scaling domain capacity to meet demand, and using automation for operational tasks to reduce human error. It also covers implementing backup and restore strategies, managing cluster state, and setting up monitoring and alerting to maintain service performance and availability.
  • Performance efficiency focuses on using Amazon OpenSearch Service resources effectively. This includes selecting appropriate instance types and storage options based on your workload requirements, implementing performance monitoring and optimization strategies, and using OpenSearch Service features to reduce operational overhead. It also covers tuning domain configurations, managing data indexing patterns, and optimizing search and analytics queries to achieve the best possible performance while maintaining cost efficiency.
  • Cost optimization focuses on managing expenses effectively. This topic addresses implementing cost allocation tags to track domain expenses by workload, selecting appropriate instance types and storage options based on your needs, and choosing cost-effective payment options such as Reserved Instances for predictable workloads. It also covers using UltraWarm and cold storage tiers for infrequently accessed data, implementing index lifecycle policies to manage storage costs, and monitoring usage patterns to rightsize domains and optimize performance-to-cost ratios.
  • Sustainability focuses on minimizing the environmental impacts of running cloud workloads. OpenSearch topics addresses implementing efficient domain sizing strategies, selecting instance types with the best performance-to-energy ratio, optimizing retention policies and using different storage tiers to reduce the active compute footprint.

By applying this lens to your Amazon OpenSearch Service workloads, you gain insights that go beyond general architectural principles to address characteristics of search and analytics implementations. The OpenSearch Service Lens provides a consistent framework for making architectural decisions aligned with AWS best practices for designing a new Amazon OpenSearch Service architecture or optimizing an existing deployment.

Getting started with the OpenSearch Lens

To get started with the Amazon OpenSearch Service Lens, review the six pillars of the AWS Well-Architected Framework: Operational Excellence, Security, Reliability, Performance Efficiency, Cost Optimization, and Sustainability.

Then, sign in to the AWS Management Console and open the AWS Well-Architected Tool. Navigate to Custom Lenses and import the Amazon OpenSearch Service Lens. After importing the lens, you can use the specialized questionnaires to evaluate your OpenSearch Service workloads against best practices, and once you complete the questionnaire, you will get insightful feedback.

Next, plan architecture reviews with your team to evaluate your Amazon OpenSearch Service domains using the lens criteria. Document your assessment results, including what works well and where you can improve your deployment. For help understanding the Amazon OpenSearch Service Lens questions, refer to the lens documentation.

If you have an AWS Support plan, you can request help with your architecture review. The OpenSearch Service Lens questions aim to guide your architectural decisions, not test your knowledge. Focus on understanding the architectural principles behind each question. After completing your assessment, create a prioritized improvement plan that addresses findings that could affect your workload performance, data durability, and cost efficiency. For help implementing these improvements, you can work with AWS Professional Services or AWS Partners who specialize in Amazon OpenSearch Service.

Conclusion and next steps

The Amazon OpenSearch Service Lens provides actionable guidance to help you build well-architected search and analytics workloads aligned with your business requirements. Start by accessing the AWS Well-Architected Tool and applying this lens to your OpenSearch Service domains. Make architectural reviews a regular part of your development process. Consider sharing your experiences with the AWS community to help others improve their OpenSearch Service implementations.

You can find more information on AWS Well-Architected Lenses in the AWS Well-Architected Tool User Guide. We encourage you to incorporate this specialized guidance into your architectural reviews and use it to drive continuous improvement in your search and analytics workloads on AWS.

AWS regularly updates the Amazon OpenSearch Service Lens to reflect new service capabilities and architectural best practices. These updates help you take advantage of the latest improvements in Amazon OpenSearch Service while maintaining architectural excellence.

To learn more about Amazon OpenSearch Service, including customer success stories and additional resources, visit Amazon OpenSearch Service page.


About the authors

Muslim Abu-Taha

Muslim Abu-Taha

Muslim is the Senior Worldwide Specialist Solutions Architect for Amazon OpenSearch located in Dubai, UAE. He works with customers across Europe, the Middle East and Africa to support them on their journeys adopting and scaling AWS OpenSeach workloads.

Shih-Yong Wang

Shih-Yong Wang

Shih-Yong is a Solutions Architect at AWS in Taiwan. He utilizes over twenty years of IT expertise to empower clients across diverse industries. By strategically leveraging AWS services, he helps foster business value and creates limitless opportunities for innovation.


Contributors

The authors would like to thank the following people for their invaluable help in developing this new OpenSearch Lens for the AWS Well-Architected Framework: Muslim Abu-Taha, Senior Worldwide Specialist Solutions Architect for Amazon OpenSearch; Shih-Yong Wang, Manager, Solutions Architecture; Ankush Agarwal, Solutions Architect; and Jun-Tin Yeh, Cloud Optimization Success Solutions Architect.

The authors would also like to thank the following people for their contributions to technical reviews: Cedric Pelvet, Principal OpenSearch Solutions Architect; Hajer Bouafif, Senior OpenSearch Solutions Architect; Francisco Losada, OpenSearch Solutions Architect; Bharav Patel, OpenSearch Solutions Architect; and Praveen Prasad, Senior Specialist Technical Account Manager.

Patch Tuesday – November 2025

Post Syndicated from Adam Barnett original https://www.rapid7.com/blog/post/em-patch-tuesday-november-2025

Microsoft is publishing 66 new vulnerabilities today, which is far fewer than we’ve come to expect in recent months. There’s a lone exploited-in-the-wild zero-day vulnerability, which Microsoft assesses as critical severity, although there’s apparently no public disclosure yet. Three critical remote code execution (RCE) vulnerabilities are patched today; happily, Microsoft currently assesses all three as less likely to see exploitation. Five browser vulnerabilities and a dozen or so fixes for Azure Linux (aka Mariner) have already been published separately this month, and are not included in the total.

Windows GDI+: critical 0-day RCE

Faced with a fresh stack of Patch Tuesday vulns, there are a few different ways to prioritize our analysis. Do we start with vulns exploited in the wild? Pre-authentication RCEs? The vuln with the highest CVSS base score? The vuln which is likely to affect just about every asset running Microsoft software? Any of these are sensible avenues of approach, and today, all roads lead to CVE-2025-60724. As the advisory notes, in the worst-case scenario, an attacker could exploit this vulnerability by uploading a malicious document to a vulnerable web service. The advisory doesn’t spell out the context of code execution, but if all the stars align for the attacker, the prize could be remote code execution as SYSTEM via the network without any need for an existing foothold. While this vuln almost certainly isn’t wormable, it’s clearly very serious and is surely a top priority for just about anyone considering how to approach this month’s patches.

The weakness underlying CVE-2025-60724 is CWE-122: Heap-based buffer overflow, a concept which celebrated its 50th birthday several years ago. As the authors of the original 1972 paper noted: “If the code makes use of an internal buffer, there is a possibility that a user could input enough data to overwrite other portions of the program’s private storage.” Regarding computer security in general, they opined that “this problem is neither hopeless nor solved. It is, however, perfectly clear […] that solutions to the problem will not occur spontaneously, nor will they come from the various well-intentioned attempts to provide security as an add-on to existing systems.”

Office: critical ACE

Once again, we find ourselves wondering: “when is remote code execution really remote?” CVE-2025-62199 describes a critical RCE vulnerability in Microsoft Office, where exploitation relies on the user downloading and opening a malicious file. The attacker is remote, and that’s enough to satisfy the definition, even if the action is taken on the local system by the unwitting user. Anyone hoping that the Preview Pane is not a vector will be sadly disappointed, and this certainly increases the probability of real-world exploitation, since there’s no need for the attacker to craft a way around those pesky warnings about enabling dangerous content. Just scrolling through a list of emails in Outlook could be enough.

Visual Studio: critical RCE

Some attacks are straightforward, with only a single step needed to reach the finish line. Others, like Visual Studio critical RCE CVE-2025-62214, require that the attacker execute a complex chain of events. In this case, exploitation demands multi-stage abuse of recent advances in Visual Studio AI development capabilities, including prompt injection, Agent interaction, and triggering a build. The advisory doesn’t describe the context of code execution. If the prize is simply code execution on an asset in the context of the user, there’s no obvious advancement for the attacker, since exploitation already requires code execution on the asset by the attacker or the targeted user. The brief description of the attack chain does mention that the attacker would need to trigger a build. On that basis, possible outcomes might include execution in an elevated context, or compromised build artifacts, although the advisory does not provide enough information to be certain either way.

SQL Server: critical EoP

SQL Server admins should take note of CVE-2025-59499, which describes an elevation of privilege (EoP) vulnerability. Although some level existing privileges are required, successful exploitation will permit an attacker to run arbitrary Transact-SQL (T-SQL) commands. T-SQL is the language which SQL Server databases and clients use to communicate with one another. Although the default configuration for SQL Server disables the xp_cmdshell functionality which allows direct callouts to the underlying OS, there’s more than one way to shine a penny, and the only safe assumption here is that exploitation will lead to code execution in the context of SQL Server itself. Patches are available for all supported versions of SQL Server.

Microsoft lifecycle update

Following the sweeping lifecycle changes seen in October 2025, Microsoft is taking it fairly easy this month. The only significant transition today is the end of support for Windows 11 Home and Pro 23H2. Unlike the demise of Windows 10, this much smaller change won’t affect most people; a small number of older CPUs might not make the cut, since Windows 11 24H2 introduces a requirement for a couple of newer CPU instruction sets. Microsoft provides lists of compatible Intel, AMD, and Qualcomm CPU series.

Summary charts

A bar chart showing vulnerability count by component for Microsoft Patch Tuesday 2025-Nov

A bar chart showing vulnerability count by impact for Microsoft Patch Tuesday 2025-Nov

A heat map showing impact type by component for Microsoft Patch Tuesday 2025-Nov

Summary tables

Azure vulnerabilities

CVE

Title

Exploited?

Publicly disclosed?

CVSSv3 base score

CVE-2025-59504

Azure Monitor Agent Remote Code Execution Vulnerability

No

No

7.3

Browser vulnerabilities

CVE

Title

Exploited?

Publicly disclosed?

CVSSv3 base score

CVE-2025-12729

Chromium: CVE-2025-12729 Inappropriate implementation in Omnibox

No

No

N/A

CVE-2025-12728

Chromium: CVE-2025-12728 Inappropriate implementation in Omnibox

No

No

N/A

CVE-2025-12727

Chromium: CVE-2025-12727 Inappropriate implementation in V8

No

No

N/A

CVE-2025-12726

Chromium: CVE-2025-12726 Inappropriate implementation in Views.

No

No

N/A

CVE-2025-12725

Chromium: CVE-2025-12725 Out of bounds write in WebGPU

No

No

N/A

Developer Tools vulnerabilities

CVE

Title

Exploited?

Publicly disclosed?

CVSSv3 base score

CVE-2025-62222

Agentic AI and Visual Studio Code Remote Code Execution Vulnerability

No

No

8.8

CVE-2025-62449

Microsoft Visual Studio Code CoPilot Chat Extension Security Feature Bypass Vulnerability

No

No

6.8

CVE-2025-62214

Visual Studio Remote Code Execution Vulnerability

No

No

6.7

CVE-2025-62453

GitHub Copilot and Visual Studio Code Security Feature Bypass Vulnerability

No

No

5

Mariner Open Source Software vulnerabilities

CVE

Title

Exploited?

Publicly disclosed?

CVSSv3 base score

CVE-2024-25621

containerd affected by a local privilege escalation via wide permissions on CRI directory

No

No

7.3

CVE-2025-10966

missing SFTP host verification with wolfSSH

No

No

6.8

CVE-2025-64329

containerd CRI server: Host memory exhaustion through Attach goroutine leak

No

No

N/A

Microsoft Dynamics vulnerabilities

CVE

Title

Exploited?

Publicly disclosed?

CVSSv3 base score

CVE-2025-62210

Dynamics 365 Field Service (online) Spoofing Vulnerability

No

No

8.7

CVE-2025-62211

Dynamics 365 Field Service (online) Spoofing Vulnerability

No

No

8.7

CVE-2025-62206

Microsoft Dynamics 365 (On-Premises) Information Disclosure Vulnerability

No

No

6.5

Microsoft Office vulnerabilities

CVE

Title

Exploited?

Publicly disclosed?

CVSSv3 base score

CVE-2025-62204

Microsoft SharePoint Remote Code Execution Vulnerability

No

No

8

CVE-2025-62199

Microsoft Office Remote Code Execution Vulnerability

No

No

7.8

CVE-2025-62216

Microsoft Office Remote Code Execution Vulnerability

No

No

7.8

CVE-2025-62205

Microsoft Office Remote Code Execution Vulnerability

No

No

7.8

CVE-2025-60727

Microsoft Excel Remote Code Execution Vulnerability

No

No

7.8

CVE-2025-62200

Microsoft Excel Remote Code Execution Vulnerability

No

No

7.8

CVE-2025-62201

Microsoft Excel Remote Code Execution Vulnerability

No

No

7.8

CVE-2025-62203

Microsoft Excel Remote Code Execution Vulnerability

No

No

7.8

CVE-2025-60726

Microsoft Excel Information Disclosure Vulnerability

No

No

7.1

CVE-2025-62202

Microsoft Excel Information Disclosure Vulnerability

No

No

7.1

CVE-2025-60722

Microsoft OneDrive for Android Elevation of Privilege Vulnerability

No

No

6.5

CVE-2025-59240

Microsoft Excel Information Disclosure Vulnerability

No

No

5.5

CVE-2025-60728

Microsoft Excel Information Disclosure Vulnerability

No

No

4.3

Open Source Software vulnerabilities

CVE

Title

Exploited?

Publicly disclosed?

CVSSv3 base score

CVE-2025-62220

Windows Subsystem for Linux GUI Remote Code Execution Vulnerability

No

No

8.8

CVE-2025-12863

Libxml2: namespace use-after-free in xmlsettreedoc() function of libxml2

No

No

7.5

CVE-2025-64433

KubeVirt Arbitrary Container File Read

No

No

6.5

CVE-2025-40107

can: hi311x: fix null pointer dereference when resuming from sleep before interface was enabled

No

No

5.5

CVE-2025-60753

An issue was discovered in libarchive bsdtar before version 3.8.1 in function apply_substitution in file tar/subst.c when processing crafted -s substitution rules. This can cause unbounded memory allocation and lead to denial of service (Out-of-Memory crash).

No

No

5.5

CVE-2025-12875

mruby array.c ary_fill_exec out-of-bounds write

No

No

5.3

CVE-2025-64435

KubeVirt VMI Denial-of-Service (DoS) Using Pod Impersonation

No

No

5.3

CVE-2025-64437

KubeVirt Isolation Detection Flaw Allows Arbitrary File Permission Changes

No

No

5

CVE-2025-64434

KubeVirt Improper TLS Certificate Management Handling Allows API Identity Spoofing

No

No

4.7

CVE-2025-64432

KubeVirt Affected by an Authentication Bypass in Kubernetes Aggregation Layer

No

No

4.7

CVE-2025-40109

crypto: rng – Ensure set_ent is always present

No

No

4.2

CVE-2025-52881

runc: LSM labels can be bypassed with malicious config using dummy procfs files

No

No

N/A

CVE-2025-31133

runc container escape via “masked path” abuse due to mount race conditions

No

No

N/A

CVE-2025-52565

container escape due to /dev/console mount and related races

No

No

N/A

CVE-2025-64436

KubeVirt Excessive Role Permissions Could Enable Unauthorized VMI Migrations Between Nodes

No

No

N/A

Other vulnerabilities

CVE

Title

Exploited?

Publicly disclosed?

CVSSv3 base score

CVE-2025-30398

Nuance PowerScribe 360 Information Disclosure Vulnerability

No

No

8.1

SQL Server vulnerabilities

CVE

Title

Exploited?

Publicly disclosed?

CVSSv3 base score

CVE-2025-59499

Microsoft SQL Server Elevation of Privilege Vulnerability

No

No

8.8

System Center vulnerabilities

CVE

Title

Exploited?

Publicly disclosed?

CVSSv3 base score

CVE-2025-47179

Configuration Manager Elevation of Privilege Vulnerability

No

No

6.7

Windows vulnerabilities

CVE

Title

Exploited?

Publicly disclosed?

CVSSv3 base score

CVE-2025-59511

Windows WLAN Service Elevation of Privilege Vulnerability

No

No

7.8

CVE-2025-60713

Windows Routing and Remote Access Service (RRAS) Elevation of Privilege Vulnerability

No

No

7.8

CVE-2025-60718

Windows Administrator Protection Elevation of Privilege Vulnerability

No

No

7.8

CVE-2025-60721

Windows Administrator Protection Elevation of Privilege Vulnerability

No

No

7.8

CVE-2025-60707

Multimedia Class Scheduler Service (MMCSS) Driver Elevation of Privilege Vulnerability

No

No

7.8

CVE-2025-60710

Host Process for Windows Tasks Elevation of Privilege Vulnerability

No

No

7.8

CVE-2025-59507

Windows Speech Runtime Elevation of Privilege Vulnerability

No

No

7

CVE-2025-59508

Windows Speech Recognition Elevation of Privilege Vulnerability

No

No

7

CVE-2025-62215

Windows Kernel Elevation of Privilege Vulnerability

Yes

No

7

CVE-2025-59515

Windows Broadcast DVR User Service Elevation of Privilege Vulnerability

No

No

7

CVE-2025-60717

Windows Broadcast DVR User Service Elevation of Privilege Vulnerability

No

No

7

CVE-2025-62218

Microsoft Wireless Provisioning System Elevation of Privilege Vulnerability

No

No

7

CVE-2025-62219

Microsoft Wireless Provisioning System Elevation of Privilege Vulnerability

No

No

7

CVE-2025-60716

DirectX Graphics Kernel Elevation of Privilege Vulnerability

No

No

7

CVE-2025-60708

Storvsp.sys Driver Denial of Service Vulnerability

No

No

6.5

CVE-2025-60723

DirectX Graphics Kernel Denial of Service Vulnerability

No

No

6.3

CVE-2025-59509

Windows Speech Recognition Information Disclosure Vulnerability

No

No

5.5

CVE-2025-62208

Windows License Manager Information Disclosure Vulnerability

No

No

5.5

CVE-2025-62209

Windows License Manager Information Disclosure Vulnerability

No

No

5.5

CVE-2025-60706

Windows Hyper-V Information Disclosure Vulnerability

No

No

5.5

CVE-2025-60724

GDI+ Remote Code Execution Vulnerability

Yes

No

9.8

Windows ESU vulnerabilities

CVE

Title

Exploited?

Publicly disclosed?

CVSSv3 base score

CVE-2025-62452

Windows Routing and Remote Access Service (RRAS) Remote Code Execution Vulnerability

No

No

8

CVE-2025-60715

Windows Routing and Remote Access Service (RRAS) Remote Code Execution Vulnerability

No

No

8

CVE-2025-60720

Windows Transport Driver Interface (TDI) Translation Driver Elevation of Privilege Vulnerability

No

No

7.8

CVE-2025-59505

Windows Smart Card Reader Elevation of Privilege Vulnerability

No

No

7.8

CVE-2025-60703

Windows Remote Desktop Services Elevation of Privilege Vulnerability

No

No

7.8

CVE-2025-60714

Windows OLE Remote Code Execution Vulnerability

No

No

7.8

CVE-2025-60709

Windows Common Log File System Driver Elevation of Privilege Vulnerability

No

No

7.8

CVE-2025-60705

Windows Client-Side Caching Elevation of Privilege Vulnerability

No

No

7.8

CVE-2025-59514

Microsoft Streaming Service Proxy Elevation of Privilege Vulnerability

No

No

7.8

CVE-2025-59512

Customer Experience Improvement Program (CEIP) Elevation of Privilege Vulnerability

No

No

7.8

CVE-2025-60704

Windows Kerberos Elevation of Privilege Vulnerability

No

No

7.5

CVE-2025-60719

Windows Ancillary Function Driver for WinSock Elevation of Privilege Vulnerability

No

No

7

CVE-2025-62217

Windows Ancillary Function Driver for WinSock Elevation of Privilege Vulnerability

No

No

7

CVE-2025-62213

Windows Ancillary Function Driver for WinSock Elevation of Privilege Vulnerability

No

No

7

CVE-2025-59506

DirectX Graphics Kernel Elevation of Privilege Vulnerability

No

No

7

CVE-2025-59510

Windows Routing and Remote Access Service (RRAS) Denial of Service Vulnerability

No

No

5.5

CVE-2025-59513

Windows Bluetooth RFCOM Protocol Driver Information Disclosure Vulnerability

No

No

5.5

CVE-2025-60724

GDI+ Remote Code Execution Vulnerability

Yes

No

9.8

Windows Microsoft Office ESU vulnerabilities

CVE

Title

Exploited?

Publicly disclosed?

CVSSv3 base score

CVE-2025-60724

GDI+ Remote Code Execution Vulnerability

No

No

9.8

Updates

  • 2025-11-11: clarified the description of CVE-2025-62214.

Monitoring Website Changes with Zabbix Browser Item

Post Syndicated from Adi Rusmanto original https://blog.zabbix.com/monitoring-website-changes-with-zabbix-browser-item/31684/

In today’s digital era, information is an asset and most of it is obtained from websites. The ability to automatically monitor website content changes has become a crucial competitive advantage, as even small changes on a website can affect business strategies, security postures, and data-driven decision-making. Accordingly, Zabbix 7.0 saw the introduction of a new feature called Browser Item, which allowed users to perform advanced website monitoring using a browser.

The Browser Item feature includes the ability to:

● Capture screenshots of the current website state
● Measure website performance and availability metrics
● Extract and analyze data from web pages
● Generate automatic alerts based on detected changes or errors

This means Zabbix is no longer limited to traditional IT infrastructure monitoring. It can now also serve as a tool for monitoring strategic external information.

Key use cases for website change monitoring with Zabbix

The Zabbix Browser Item opens up many valuable use cases for organizations that want to proactively track website changes. Below are some key examples:

Monitoring release notes

Tracking vendor release notes is essential for IT teams. With Zabbix, we can automatically detect new releases, extract relevant information, and notify the appropriate team members so they can respond faster.

Tracking security advisories

Security advisories are critical for maintaining a strong security posture. By monitoring websites that publish vulnerability information using Zabbix, security teams can be promptly alerted about new threats and take timely actions to reduce risks.

Monitoring competitor websites

In a competitive market, staying informed about competitor activities is vital. Zabbix allows users to monitor competitor websites for pricing updates, new product offerings, marketing campaigns, or news announcements, while providing valuable business intelligence to support strategic decisions.

Monitoring tender announcements

Zabbix can also monitor websites for new tender announcements from government portals or business partners, ensuring our organization stays aware of the latest business opportunities.

Ensuring internal website integrity

Beyond external sites, we can also use the Browser Item to ensure the integrity and availability of our own websites. It helps detect unexpected content changes, broken links, or performance degradation that may affect the user experience or signal potential issues. Proactive monitoring helps maintain a high-quality user experience and protect our brand reputation.

Getting started with website change monitoring in Zabbix

Solution overview architecture

This diagram shows how Zabbix uses a WebDriver to capture and analyze website content.
The collected data is stored in Zabbix for visualization and alerts when changes are
detected.

Step-by-step configuration

In this example, we’ll monitor changes on the Nginx Security Advisories webpage.

Step 1: Prepare the Web Driver

Zabbix requires a Web Driver to perform browser-based monitoring. One commonly used option is Selenium, which can be deployed using the following Docker image:

https://hub.docker.com/r/selenium/standalone-chrome

Step 2: Configure WebDriverURL on Zabbix server or proxy

Update the WebDriverURL parameter in your Zabbix Server or Zabbix Proxy configuration to point to the Selenium service you deployed.

Step 3: Create a Browser Item in Zabbix

1. Create a host if it doesn’t already exist.

2. Add a new item with the following settings:

  • Type: Browser
  • Type of information: Text

The key part is the script section. Below is the example script.

The script uses two methods:

  • browser.navigate method defines the URL to be monitored
  • browser.findElements method specifies the page section where changes should be detected

Note: The StartBrowserPollers parameter must be enabled on the Zabbix server or proxy configuration for browser items to work. It is enabled by default with the value StartBrowserPollers=1.

Step 4: Create dependent items

The Browser Item produces a JSON result containing website data. This item serves as the master item for dependent items such as:

  • Extracting the latest security advisories
  • Capturing a website screenshot

Step 5: Create a trigger for change alerts

Create a trigger that compares the current and previous values of the “latest security advisories” item. If any change is detected, Zabbix will automatically send an alert notifying your team of the update.

Step 6: Display data on the dashboard

To visualize the monitored data, we can use the Item History widget on a Zabbix dashboard to show both the latest security advisories and the corresponding screenshot, for example.

Conclusion

The Browser Item feature in Zabbix 7.0 elevates website monitoring beyond simple availability checks. It enables comprehensive monitoring of website changes, unlocking a variety of use cases such as tracking release notes, security advisories, competitor activity, and more.

If you’re interested in implementing this capability, feel free to contact us. Bangunindo is a Zabbix Premium Partner in Indonesia, ready to help you design, implement, and optimize your Zabbix monitoring solution to fit your specific needs.

The post Monitoring Website Changes with Zabbix Browser Item appeared first on Zabbix Blog.

Prompt Injection in AI Browsers

Post Syndicated from Bruce Schneier original https://www.schneier.com/blog/archives/2025/11/prompt-injection-in-ai-browsers.html

This is why AIs are not ready to be personal assistants:

A new attack called ‘CometJacking’ exploits URL parameters to pass to Perplexity’s Comet AI browser hidden instructions that allow access to sensitive data from connected services, like email and calendar.

In a realistic scenario, no credentials or user interaction are required and a threat actor can leverage the attack by simply exposing a maliciously crafted URL to targeted users.

[…]

CometJacking is a prompt-injection attack where the query string processed by the Comet AI browser contains malicious instructions added using the ‘collection’ parameter of the URL.

LayerX researchers say that the prompt tells the agent to consult its memory and connected services instead of searching the web. As the AI tool is connected to various services, an attacker leveraging the CometJacking method could exfiltrate available data.

In their tests, the connected services and accessible data include Google Calendar invites and Gmail messages and the malicious prompt included instructions to encode the sensitive data in base64 and then exfiltrate them to an external endpoint.

According to the researchers, Comet followed the instructions and delivered the information to an external system controlled by the attacker, evading Perplexity’s checks.

I wrote previously:

Prompt injection isn’t just a minor security problem we need to deal with. It’s a fundamental property of current LLM technology. The systems have no ability to separate trusted commands from untrusted data, and there are an infinite number of prompt injection attacks with no way to block them as a class. We need some new fundamental science of LLMs before we can solve this.

In Fight We Trust. Паравоенните организации в САЩ

Post Syndicated from Искрен Иванов original https://www.toest.bg/in-fight-we-trust-paravoennite-organizatsii-v-usa/

In Fight We Trust. Паравоенните организации в САЩ

Темата за паравоенните организации и т.нар. „невидими армии“ набира особена популярност в последните години, когато тези недържавни субекти започнаха да вземат все по-активно участие в политическия живот на развитите демокрации. Да си член на такава организация днес се възприема като възможност да станеш участник в държавен преврат. Законите в различните държави предвиждат строги наказания, обикновено свързани с лишаване от свобода, а в демократична Турция дори е възможно подсъдимите да се сдобият с присъда доживотен затвор. 

В представите на хората, участващи в тези организации, нещата стоят по различен начин. Обикновено за тях това е уникален шанс да бъдат част от нещо голямо, което завинаги ще промени хода на историята – мисъл също толкова опасна, колкото и убеждението на религиозно радикализираните терористи, че са борци за свобода. В някои отношения обаче паравоенните организации са дори по-опасни, отколкото сестринските им организации, проповядващи радикализъм, тъй като последните обикновено се мобилизират извън държавите, докато първите могат да се прегрупират за относително кратко време на територията на страната. 

В САЩ тези мрежи са много добре развити. От тях неведнъж са се формирали мощни лобистки групи, които застават зад някои действия на правителството, например National Rifle Organization, Gun Owners of America, National Association for Gun Rights.

За целите на този текст т.нар. militias, както са познати подобни фракции в САЩ, ще бъдат наричани „паравоенни организации“ и „военни опълчения“.

Какво всъщност са американските militias?

Подобно на повечето фракции в САЩ, военните опълчения са частни организации, които не получават държавно финансиране и се издържат изцяло от собствени приходи и дарения. Но кой би им дарил средства и защо изобщо американското общество би толерирало създаването на неправителствени въоръжени движения? Отговорът е комплексен.

In Fight We Trust. Паравоенните организации в САЩ
Член на The Citizens Militia of Mississippi на учение в собствения си имот. Снимка: Jim Tuttle / News21, CC BY 3.0 US via Wikimedia Commons

Основната причина за съществуването на американските militias е презумпцията, че гражданите могат да се събират мирно, за да отстояват интересите си. Терминът „мирно“ обаче има доста широко тълкуване в американските закони. Правният консенсус, че всяко събрание, което прилага насилие или нарушава закона, е нелегално, се отнася с пълна сила за свободата на сдружаването в САЩ, но тези ограничения не се простират нормативно до ресурсите, с които участниците в едно събрание могат да боравят. Това ни отвежда и до втората причина за възникването на паравоенните организации – Втората поправка в Конституцията на САЩ, която дава възможност на гражданите свободно да притежават оръжие. Казано с други думи, една организация може и да е мирна по своя замисъл, но това не пречи участниците ѝ да купуват и съхраняват оръжие, което в един момент да се използва за насилие. Въпреки тези нормативни противоречия позицията на Върховния съд на САЩ в полза на Втората поправка и до днес остава твърда.

Военните опълчения в САЩ не са ново явление. Тяхното начало се губи в периода, когато новосъздадената държава води войни с Британия, за да защити независимостта си. Тогава политическият консенсус, че гражданите в американските колонии имат право да притежават и ползват лично оръжие, помага на американците да се мобилизират срещу британските войски сравнително бързо. Исторически погледнато, военните опълчения на практика водят първите сражения с британците до момента, когато бащите основатели на САЩ не се консолидират, за да придадат на тази борба по-организиран вид, който в крайна сметка намира окончателното си изражение в Американската революция. 

След приемането на Устава на Конфедерацията – първата американска конституция – опълченията продължават да играят важна роля, тъй като те стоят зад конституционния преход от конфедерация към организирана федеративна държавност. Капитан Даниел Шейс – герой от революцията, е един от първите инициатори на въоръжената съпротива срещу Конфедерацията. Въпреки че много историци днес дебатират доколко ролята на Шейс в тези процеси е положителна, съществува съгласие, че в крайна сметка той е част от механизма, задвижващ разпада на Конфедерацията, която се оказва неспособна да отстоява независимостта на колониите от Британия. Впоследствие това довежда и до приемането на Конституцията на САЩ.

След Гражданската война, отмяната на робството с Тринайсетата поправка и утвърждаването на Вашингтон като велика сила с победата в Испано-американската война опълченията губят силата си, тъй като американските президенти са заети да работят за интересите на страната по време на двете световни войни и нямат време да обръщат внимание на паравоенните мрежи в страната. Изключение правят „Ку-клукс-клан“ и дъщерните ѝ организации, чиито действия се изразяват по-скоро в изолирани актове на насилие, отколкото в организирана съпротива срещу правителството.

Възраждането на опълченията започва през 60-те години на ХХ век, по време на Студената война, когато Америка е залята от студентски бунтове. Този период е изключително удобен за т.нар. militias, тъй като те се стараят да пленят сърцата на американците, които живеят със спомените отпреди Втората световна война и не желаят САЩ да победят в Студената война, понеже виждат в това конспиративен заговор, който ще отприщи Нов световен ред. Преоблечени в дрехите на наследниците на старите борци за свобода срещу Британската империя, новите „революционери“ се обявяват против политиката на правителството, открито призовавайки за промяна на обществения договор. Става въпрос за ултраконсервативните американци, които искат САЩ да поемат към изолационизъм. Те са наследници на антиимпериалистката фракция от Първата световна война, която е против участието на Вашингтон в Голямата война. Или поне се заявяват като такива, но нямат много общо с образованите хора, които тогава са настоявали Америка да не се меси в Европа.

Мотивация, идеология и крайна цел

Разпадането на СССР така и не позволява на САЩ да се фокусират върху вътрешното си единство и това дава възможност на паравоенните организации да извършат третата и най-опасна своя трансформация. Някои от тях започват да се обявяват за „конституционни сили за съпротива“, считайки се за пазители на Конституцията от федералното правителство и действията му. Това ги поставя по естествен начин в графата на крайнодесните сили в Америка, които реагират на бурните обществени промени в обществото и се опитват с помощта на популистка реторика да обсебят политическата социализация на по-младото поколение.

Тази вътрешна идеологическа борба в САЩ е добре дошла за наследника на СССР – Русия, която вижда в кливиджа възможност да се вмъкне незабелязано в дневния ред на американския политически процес. Най-много примери в това отношения могат да бъдат дадени отново с „Ку-клукс-клан“, чиито лидери редовно проповядват думите на Александър Дугин пред своите последователи. Постулатите на паравоенните организации често припознават идеологията на дугинизма, особено в частта ѝ, в която сблъсъкът между логоса и хаоса се възприема като неизбежен. Това реакционно разбиране на Дугин за разликата между добро и зло почива върху схващането, че дори лошият хаос е по-добър от покварения логос. С други думи, идеята отразява руското мистично разбиране, че хаосът е за предпочитане, когато ценностите на едно общество вече са покварени.

In Fight We Trust. Паравоенните организации в САЩ
Билборд на Oath Keepers в Пайн Ривър, Минесота, с правописна грешка в думата triumph, който гласи: „За да триумфира злото, добрите хора не трябва да правят нищо“. Снимка: Myotus / CC0 via Wikimedia Commons

Мотивацията на военните опълчения в САЩ не се различава от тази на терористичните организации – в двата случая се призовава за прилагане на политически мотивирано насилие срещу цивилни. И ако стремежът към насилствена промяна на политическата формула в една държава често завършва с преврат или контрапреврат, то когато военните опълчения излязат по улиците, последиците се понасят не толкова от политиците, колкото от цивилните. 

Тук можем да кажем, че на практика конфронтацията между крайнодесните и крайнолевите движения в САЩ напомня на своеобразна минигражданска война, която продължава да разделя американското общество. Големият проблем с мотивацията на паравоенните организации е, че те няма как да бъдат убедени по мирен път, че не са наследници на бащите основатели или на Даниел Шейс – в крайна сметка американските революционери са се борили за свободата на американците, а не против самите граждани. Нещо повече, предвид свободите, които американското законодателство е връчило в ръцете на гражданите, самата граница между опълчение и организация с мирна цел остава много неясна.

Основен генератор на идеи за тези организации са конспиративните теории, които, за жалост, можем да намерим в социалните мрежи и в много книги, излизащи и на американския пазар – в тях се говори за „еврейския заговор“, „злите елити, контролиращи правителството“, „нисшите и висшите раси“. 

„Опълченец“ ли е Доналд Тръмп?

Доста сериозен въпрос, който тревожи немалка част от американското общество, е връзката на паравоенните организации с политическия елит в САЩ. Идеята, че глобалистите са овладели Америка и искат всячески да наложат на нейното общество ценности, различни от традиционните, е добре известен мотив, който се чува в реториката на много политици и в Европа. Флиртът на политическата класа с военните опълчения обаче може да бъде много опасен, защото рано или късно тези агенти на хаоса ще излязат извън контрола на елитите, които ги подкрепят. Това се случи по време на щурма на Капитолия на 6 януари 2021 г. Малцина предполагаха, че мирно събралите се протестиращи ще нахлуят в сърцето на американската демокрация и ще се опитат да похитят законно избраните от американците политици – независимо дали става въпрос за Нанси Пелоси, или за Майк Пенс. В тези условия си струва да се запитаме част ли е Доналд Тръмп от грандиозния антидемократичен заговор.

Важно е да подчертаем, че щурмът на Капитолия беше безпрецедентно събитие в американската история, чиито измерения надхвърля единствено Гражданската война. Това беше моментът, в който крайнолевите и крайнодесните си стиснаха ръцете пред възможността да подронят американската демокрация. Тази чудовищна сплав от Антифа и Oath Keepers породи вълна от насилие, насочено не само към промяна на политическия дневен ред. Голяма част от хората, които участваха в пуча, едва ли щяха да се спрат само до Капитолия. Някои американски медии прокараха нишки между Антифа, Oath Keepers и Русия, но американското разузнаване така и не представи доказателства в полза или против това твърдение. Ето защо е прагматично да приемем, че тяхната мотивация не се различава от традиционното кредо на антисистемните фракции, които целят мобилизация на радикализирана маса от членове с цел въоръжена борба срещу статуквото. 

Да се счита обаче, че Тръмп е президент, който с помощта на военните опълчения се опитва да установи диктатура в САЩ, е опасно измамно както за американската демокрация, така и за политиката на Вашингтон като цяло. Факт е, че част от паравоенните организации застанаха зад кандидатурата на американския президент открито и взеха участие в щурма на Капитолия – „шоу“, което всички видяхме по медиите. Но дойде момент, когато политиците в Америка започнаха да се плашат от флирта си с крайните фракции, които ги подкрепят. Така например, въпреки че обамистката фракция открито застана зад Black Lives Matter (BLM), по време на президентството на Байдън членовете на BLM на няколко пъти изразиха несъгласие с политиката на президента по отношение на реформата в полицията, което доведе до разрив.

Сходни процеси се наблюдаваха и по време на втората президентска кампания на Тръмп, когато той се дистанцира от хора като Лoра Лумър и последователите ѝ въпреки оказваната му от тях подкрепа. Сякаш американските политици се усетиха, че невидимите им поддръжници започват да стават опасни, а последователите на тези поддръжници постепенно се превръщат в полезни инструменти в ръцете на Русия и Китай.

Важно е да си дадем сметка и за още нещо – американците са свободолюбив народ и колкото и мазохистично да звучи в ушите на един европеец, едва ли ще жертват Втората поправка и законите на страната, за да спрат влиянието на паравоенните организации. Или както гласи едно ценностно мото: „По-добре политически равни, но икономически неравни“. Обикновеният американец може да направи компромис дори с жизнения си стандарт, но не и със свободите си. В тези условия насилието от отделни индивиди или от цели организации в двата края на политическия спектър, на което ставаме свидетели в последните години, е отговорност преди всичко на „групите по интереси“ и на политическия елит от двете партии, който много дълго време флиртуваше с тях.

На фона на обсъжданите процеси полицията в Америка става все по-рестриктивна. В същото време повечето американци смятат, че войниците им вече трябва да бъдат изтеглени от Ирак и Сирия. Това може да доведе до включването в militias на нови прясно снети от служба военни, които продължават да търсят начини да защитават страната си. Въпросът е как ще бъдат използвани. 

Ето защо, ако САЩ имат проблем, той не е в едно или в две лица, а в събирателния образ на политика, който е готов да стане „опълченец“ в името на собствената си власт и амбиции. Това е погубвало императори, крале и диктатори. Дано не стане така и в САЩ.

Designing for every learner in every classroom

Post Syndicated from Rachel Arthur original https://www.raspberrypi.org/blog/designing-for-every-learner-in-every-classroom/

One of the things I love most about my role as Chief Learning Officer at the Raspberry Pi Foundation is hearing from teachers around the world. A teacher in Kenya told me how their students debugged their first programming projects on a shared laptop. In Scotland, another explained how our resources gave them the confidence to teach computing for the very first time. These stories remind me daily why our work matters: every young person, no matter where they live, should have the chance to explore the power of computing.

Young people use laptops to do their coding tasks.

But creating resources that work in such different contexts is not easy. How do we design materials that work in a wide range of learning environments, from a bustling city classroom to a rural school where internet access can vary? How do we make sure that every learner sees themselves reflected in the examples we choose?

That’s where our teaching and learning design principles come in.

What makes our approach different

Over the past decade, we’ve learned a huge amount about what teachers and learners need from us. We’ve made mistakes, we’ve listened, and we’ve refined our practice again and again. The result is a set of design principles that guide the creation of everything we make, from full curricula to one-off projects.

Four students at laptops in a school in India.

These principles are practical and based on real classroom experience. They’re our way of making sure our resources are reliable, inspiring, and flexible, wherever and however teachers use them.

Here’s what that looks like in action:

  • High quality – You can trust our resources to be accurate and classroom-ready. We put every piece of content through rigorous checks because we understand how busy you are.
  • Research-informed – Our choices are grounded in evidence, not guesswork. We blend academic studies with insight from teachers like you and our own evaluations to create approaches that genuinely work.
  • Consistent – We design our materials to fit together, so learners can build skills step by step, without confusion or contradiction along the way.
  • Inclusive by design – We think carefully about accessibility, representation, and language right from the start. When young people see themselves reflected in computing, they see it as a future they can be a part of.
  • Adaptable – No two classrooms are the same. By making our resources editable and flexible, we give you the freedom to shape them for your learners.

Why share these design principles now?

For us, being transparent about our approach is about trust. Teachers make daily decisions about which resources to use, often with limited preparation time. By showing you the principles behind our work, we want to give you the confidence that our content is not only free and adaptable, but also designed with care, expertise, and your learners at the heart.

Educators participate in a teacher training in Kenya.

Looking ahead

The world of computing education is moving fast, from new programming software, to artificial intelligence tools. Our design principles give us a strong foundation to keep innovating while staying true to our mission of enabling young people to realise their full potential through the power of computing and digital technologies.

A boy and teacher in a computing class

And we’d love to hear from you! How do these principles resonate with your teaching? What helps you most in the classroom? Your feedback is what keeps making our work better.

The post Designing for every learner in every classroom appeared first on Raspberry Pi Foundation.

Българската пунктуация – патрулки, полиция, контраинтуиция

Post Syndicated from original https://www.toest.bg/bulgarskata-punktuatsiya-patrulki-policiya-kontraintuitsiya/

Българската пунктуация – патрулки, полиция, контраинтуиция

Веднъж попитах мой близък как поставя запетаите. Неговият отговор беше следният:

Знам някои основни правила, а другите запетаи ги слагам по интуиция. После оглеждам текста и ако ми се стори, че в някой квадрант подозрително липсват запетаи, добавям още няколко.

За третия ръководен принцип не знаех дотогава, но за първите два – няколко правила и интуиция – съм сигурна, че са основни за голяма част от пишещите хора.

Какво можем да направим, за да придадем сила на правилата и да омаломощим интуицията при поставянето на запетаите и на другите препинателни знаци? По отношение на българската пунктуация изобщо не бива да ѝ се доверяваме, защото не едно и две правила са контраинтуитивни.

Структурата е в основата

За да проектира стабилна сграда, един строителен инженер трябва да познава добре нейната конструкция.

За да поставим непоклатимо запетаите в изречението, трябва да сме наясно с неговата структура.

Нашата пунктуация е от немски тип и се основава на синтактичното членение на изречението. Английската пунктуация например е от френски тип, който се основава на смисловото и фонетичното членение на изречението.¹ С две думи, когато пишете на български, забравете всичко, което знаете за запетаите в английския. И обратното.

Прокарването на синтактичния принцип в пунктуацията според мен най-добре личи в сложното изречение. И така,

основното правило гласи, че запетая се поставя на границата на простите изречения в сложното.

Накратко припомняме, че всяко просто изречение съдържа едно сказуемо (обикновено изразено с глагол). Тоест трябва да можем да групираме смислово думите около сказуемите, за да определяме границата между тези цялости в сложното изречение:

Станах рано,минах набързо през банята,направих закуска.

На границата много често стоят съюзи – добре познатите ни а, но, че, когато, който, защото и т.н. Точно те задействат червената лампичка в съзнанието ни и ние почти не се замисляме защо поставяме запетая пред тях. Ако един средностатистически човек трябва да посочи причината, той вероятно би казал „Пред който се пише запетая“, а не „Пред съюза който е нужна запетая, защото свързва две прости изречения в сложно“. В това няма нищо лошо, разбира се, защото в огромното си мнозинство хората не са филолози и не са длъжни да мислят езиковедски. (За съжаление обаче, дори и за да навигираш в правилата, е добре да имаш филологическа подготовка.)

Важно е да наблегнем – за да разберем философията на пунктуацията, – че запетаята се пише не заради съюза сам по себе си, а защото той се оказва на границата на простите изречения в сложното:

Ще се кандидатирам за общински съветник,ако ме подкрепите.

Пунктуацията в това изречение би трябвало да е безпроблемна, но не е така с фактически същото по смисъл

Ще се кандидатирам за общински съветник при положение че ме подкрепите.

Тук мнозина биха поставили запетая пред че – и ще сгрешат, защото при положение че е сложен съюз² и запетаята трябва да се измести малко по-напред, където минава границата между двете прости изречения:

Ще се кандидатирам за общински съветник,при положение че ме подкрепите.

Същият основен принцип важи и в един тип конструкции, при които запетаята често се пропуска – става дума за т.нар. затваряща запетая, например:

Проблемът,който разтревожи цялата фирма, │ се разреши бързо.

Особеното тук е, че двете прости изречения не са последователно разположени, както в предишните примери, а едното е вмъкнато в другото. Образували са се две граници, затова поставяме две запетаи. Вмъкнатото изречение (нарича се подчинено) пояснява дума от разкъсаното (главно) и много често се въвежда с който, затова винаги внимавайте при този съюз и си мислете за евентуална затваряща запетая.

Сега ми хрумва (наистина сега, заклевам се!), че може да си представите запетаите като полицаи, които охраняват границите на простите изречения, за да не прескачате, когато и както ви скимне, от една територия в друга. Ако пък тази асоциация ви се стори обидно детинска, предложете я на някой близък ученик, който се бори с правилата в българския език.

Многобройни изключения

Не се плашете от многобройни, защото повечето изключения всъщност си ги знаем и не поставяме запетая на границата на простите изречения – например пред толкова често срещаните съюзи и, или, да, а също и пред въпросителните думи кой, защо, дали и прочее. Тук сме, така да се каже, в шенгенското пунктуационно пространство (ето, вдигнахме нивото на асоциациите) и няма гранична полиция.

Депутатите се забързаха │и гласуваха новия закон.
Питаш ме за потвърждение │или искаш честен отговор?
Работодателите отказаха │да участват в заседанието на Тристранния съвет.
Искаме обяснение │защо линия 3 на метрото не работи.

Не бързайте да си отдъхвате, защото това са примери за общите случаи, в които конструкциите са прости.

Никъде не е написано и в действителност не съществува правило, че пред и, или, да, защо и т.н. никога няма запетая.

Ако по силата на други правила тя се окаже пред посочените съюзи, трябва да я поставим. Нека да разширим например едно от горните изречения:

Депутатите се забързаха,когато времето ги притисна,и гласуваха новия закон.

Между двете прости изречения, свързани с и, сме вмъкнали друго, за да поясним първото. Запетаята пред когато е ясна и надали ще си я спестите, обаче другата, затварящата, понеже е пред и, може и да я пропуснете. Това ще бъде грешка. Не е фатална, но ако я направите на изпит за проверка на езиковата култура, ще ви отнемат точка. След като сме отворили едно просто изречение със запетая, трябва и да го затворим, щом основната мисъл продължава (Депутатите се забързаха,, и гласуваха новия закон). Тоест тук основното правило, че запетая се поставя на границата на две прости изречения, важи с пълна сила и няма никакво значение, че се оказва точно пред и.

Предстои ни да обясним едни други изключения от „граничното“ правило, за чието осмисляне е нужна повече мисловна енергия. Започваме с по-лесните случаи, свързани с отрицателната частица не и с т.нар. уточняващи думи или изрази. Първият термин е ясен на всички, но вторият е измислен специално за целите на българската пунктуация, и по-точно за целите на едно правило в нея. Специалистите да ме поправят, ако греша. И така, уточняващи думи или изрази са само, единствено, точно, едва, чак, тъкмо, дори, даже, именно, много, малко, поне, твърде скоро и др. Когато такава дума стои пред съюз, свързващ две прости изречения, запетая не се поставя. Отново ще направим опит да влезем в хипотетичния общински съвет:

Ще се кандидатирам за общински съветник │ единствено ако ме подкрепите.

По същия начин и частицата не има силата да неутрализира запетаята:

Намерих ключовете │ не където първо ги потърсих, │а където най-малко очаквах.

Следващото изключение ще илюстрираме с едно изречение от тази статия, но леко ще го променим:

Грешката не е фатална, │ноако я направите на изпит, │ще ви отнемат точка.

Съюзът но всъщност въвежда не второто, а третото просто изречение: но… ще ви отнемат точка. Тъкмо обаче сме го започнали, и веднага вмъкваме едно поясняващо просто изречение след съюза но – при какво условие ще отнемат точката. Ако се спазва основното правило, между но и ако трябва да има запетая, защото там минава вътрешна изреченска граница. Кодификаторът обаче казва: хайде, тук наистина ще бъде прекалено да спъваме четящия, затова правим изключение. И действително това решение е разумно.

Разумно ли е обаче да не се прави същото изключение, в случай че вместо неударения едносричен съюз но употребим ударен многосричен?

Грешката не е фатална, │обàче,ако я направите на изпит, │ще ви отнемат точка.

Тук изключение няма и запетаята трябва да се постави. За мен това е ненужно усложняване и даже бих казала, издребняване. Защо трябва да имаме различен пунктуационен режим в тези абсолютно еднакви синтактични конструкции и поставянето на запетаята да зависи единствено от вида на първия съюз? Ако ще правим изключение за но ако, и ако, че ако, а ако, да го направим и за обаче ако, защото ако, който ако и т.н. Допълнителната запетая с нищо не помага за бързото и адекватно възприемане на съдържанието на изречението, напротив – спъва ненужно читателя.

И още нещо, което според мен е важно: точно такива никому ненужни подправила не ентусиазират хората да влагат време и сили в изучаването и спазването на правилата изобщо. Добре, отказвам се от деликатния изказ и формулирам призива си направо:

Колеги, прецизирайте пунктуационните правила и доколкото е възможно, ги окрупнете.

Защото хората вече масово поставят или си спестяват запетаи по английски образец и горедискутираната запетая между обаче и ако в момента е най-малкият ни пунктуационен проблем.

А за препинателните знаци ще продължим да пишем в рубриката „Порция език“, защото умението да се борави с тях е неделима част от езиковата култура на съвременния човек и не бива да се оставя на владеенето на няколко правила и голяма доза интуиция.

1 Ницолова, Р. Съвременна българска пунктуация. София: Народна просвета, 1989, с. 5–6.

2 В българския език има много сложни съюзи, пред които в общия случай се поставя запетая. Подобни по значение на при положение че са при условие че и в случай че. Някои от по-често употребяваните сложни съюзи са: въпреки че, макар че, макар да, тъй като, за да, без да, вместо да, преди да, дори да, освен ако.

Езикът може да е вкусен и извън блюдото – онзи, българският език, на който говорим от малки и на който около 24 май се кълнем в обич. А той в същността си е средство за общуване и за да ни служи добре, непрекъснато се променя. Да го погледнем в неговата динамика и да се опитаме да разберем какво става и защо, кои са движещите механизми и как те са свързани с обществените процеси. И тъй като задачата не е лека, ще го правим постепенно – на порции.

Amazon MSK Express brokers now support Intelligent Rebalancing for 180 times faster operation performance

Post Syndicated from Swapna Bandla original https://aws.amazon.com/blogs/big-data/amazon-msk-express-brokers-now-support-intelligent-rebalancing-for-180-times-faster-operation-performance/

Effective today, all new Amazon Managed Streaming for Apache Kafka (Amazon MSK) Provisioned clusters with Express brokers will support Intelligent Rebalancing at no additional cost. With this new capability you can perform automatic partition balancing operations when scaling Apache Kafka clusters up or down. Intelligent Rebalancing maximizes the capacity utilization of Amazon MSK clusters with Express brokers by optimally rebalancing Kafka resources on them for better performance, eliminating the need to manage partitions independently or by using third-party tools. Intelligent Rebalancing on Amazon MSK Express brokers performs these operations up to 180 times faster compared to Standard brokers.

We launched Amazon MSK Express brokers in November 2024 to reimagine Apache Kafka for ease of use, best-in-class price performance, and predictable availability. Amazon MSK Express brokers are designed to deliver up to three times more throughput per-broker, scale up to 20 times faster, and reduce recovery time by 90 percent as compared to Standard brokers running Apache Kafka. Since launch, we have expanded Amazon MSK Express brokers to additional AWS Regions, instance types, and most recently increased support to 5x more partitions per Express broker, improving price-performance by up to 50% for partition-bound workloads.

With Intelligent Rebalancing, Amazon MSK Express broker clusters are continuously monitored for resource imbalance or overload based on intelligent Amazon MSK defaults to maximize cluster performance. When required, brokers are efficiently scaled, without affecting cluster availability for clients to produce and consume data. Customers can now take full advantage of the scaling and performance benefits of Amazon MSK Provisioned clusters for Express brokers while simplifying cluster management operations.

In this post we’ll introduce the Intelligent Rebalancing feature and show an example of how it works to improve operation performance.

When to use Intelligent Rebalancing

With Intelligent Rebalancing, Amazon MSK Express brokers now offer a fully automated solution for managing and scaling Kafka clusters, requiring no additional tools or configuration. Intelligent Rebalancing is enabled by default on all new Amazon MSK Express brokers clusters, so we recommend always keeping it on. Intelligent Rebalancing uses Amazon MSK best practices to trigger automatic rebalancing during the following situations:

  • Scaling in and out clusters: When customers add or remove brokers from their Amazon MSK Express brokers clusters, Intelligent Rebalancing automatically redistributes partitions to balance resource utilization across the brokers. This ensures that the cluster continues to operate at peak performance, making scaling in and out possible with a single update operation.
  • Steady-state rebalancing: Even during normal operations, Intelligent Rebalancing continuously monitors the Amazon MSK Express brokers cluster and triggers rebalancing when it detects resource imbalances or hotspots. For example, if certain brokers become overloaded due to uneven distribution of partitions or skewed traffic patterns, Intelligent Rebalancing will automatically move partitions to less utilized brokers to restore balance.

How to use Intelligent Rebalancing

To demonstrate the power of Intelligent Rebalancing, let’s run a few tests on an Amazon MSK Express brokers cluster:

Scaling test: We’ll start by creating an Amazon MSK Express brokers cluster with 3 brokers. We’ll then rapidly scale the cluster up to 6 brokers and back down to 3 brokers, simulating a sudden spike in workload. With Intelligent Rebalancing enabled, you’ll see that the rebalancing of partitions is completed within 5-10 minutes, so that the cluster can sustain the increased throughput without any drop in performance.


You can track the current and historical rebalancing operations using the metric RebalanceInProgress. In the picture below, you can also see that the clients on the producer side are not impacted during this rebalancing.

Next, we’ll create an imbalance in the cluster by directing a large portion of the traffic to a single broker. You’ll see that Intelligent Rebalancing detects this imbalance within minutes and automatically redistributes the partitions, restoring the cluster to an optimal state.

The intelligent rebalancing feature detects hotspots and automatically redistributes affected partitions across other brokers to optimize resource utilization. Without Intelligent Rebalancing, the resource imbalance would persist, potentially leading to performance issues or the need for manual intervention by the customer.

These tests showcase how Intelligent Rebalancing with Amazon MSK Express brokers enables scaling Kafka clusters seamlessly while maintaining consistently high performance, even under varying workload conditions.

Conclusion

Intelligent Rebalancing for Amazon MSK Provisioned clusters with Express brokers are currently being rolled out over the next few weeks in all AWS Regions where Amazon MSK Express brokers are supported. This feature is automatically enabled for all new Amazon MSK Provisioned clusters with Express brokers at no additional cost.

To get started, visit the Amazon MSK console. For more information, see the Amazon MSK Developer Guide.


About the authors

Swapna Bandla

Swapna Bandla

Swapna is a Senior Streaming Solutions Architect at AWS. With a deep understanding of real-time data processing and analytics, she partners with customers to architect scalable, cloud-native solutions that align with AWS Well-Architected best practices. Swapna is passionate about helping organizations unlock the full potential of their data to drive business value. Beyond her professional pursuits, she cherishes quality time with her family.

Masudur Rahaman Sayem

Masudur Rahaman Sayem

Masudur is a Streaming Data Architect at AWS with over 25 years of experience in the IT industry. He collaborates with AWS customers worldwide to architect and implement sophisticated data streaming solutions that address complex business challenges. He has a keen interest and passion for distributed architecture, which he applies to designing enterprise-grade solutions at internet scale.

Shakhi Hali

Shakhi Hali

Shakhi is a Principal Product Manager for Amazon Managed Streaming for Apache Kafka (Amazon MSK) at AWS. She is passionate about helping customers generate business value from real-time data. Before joining MSK, Shakhi was a PM with Amazon S3. In her free time, Shakhi enjoys traveling, cooking, and spending time with family.

Analyzing Amazon EC2 Spot instance interruptions by using event-driven architecture

Post Syndicated from Shekhar Shrinivasan original https://aws.amazon.com/blogs/big-data/analyzing-amazon-ec2-spot-instance-interruptions-by-using-event-driven-architecture/

Amazon Elastic Compute Cloud (Amazon EC2) Spot Instances offer significant cost savings of up to 90% compared to On-Demand pricing, making them attractive for cost-conscious workloads. However, when using Spot Instances within AWS Auto Scaling Groups (ASGs), their unpredictable interruptions create operational challenges. Without proper visibility into interruption patterns, teams struggle to optimize capacity planning, implement effective fallback mechanisms, and make informed decisions about workload placement across availability zones and instance types.

This challenge can be addressed through a custom event-driven monitoring and analytics dashboard that provides near real-time visibility into Spot Instance interruptions specifically for ASG-managed instances. For the remainder of this document, we’ll refer to this custom solution as “Spot Interruption Insights” for Auto Scaling Groups.

In this post, you’ll learn how to build this comprehensive monitoring solution step-by-step. You’ll gain practical experience designing an event-driven pipeline, implementing data processing workflows, and creating insightful dashboards that help you track interruption trends, optimize ASG configurations, and improve the resilience of your Spot Instance workloads.

Solution overview

The architecture uses an event-driven approach utilizing AWS native services for robust spot instance interruption monitoring.

The solution uses Amazon EventBridge to capture interruption events, Amazon Simple Queue Service (Amazon SQS) for reliable message queuing, AWS Lambda for data processing, and Amazon OpenSearch Service for storage and visualization of interruption patterns.

  1. EC2 Spot interruption notices are captured via an Amazon EventBridge rule.
  2. The notices are routed to an SQS queue for reliable message handling.
  3. A Lambda function processes the events, fetching EC2 instance metadata and AWS Auto Scaling Group (ASG) details by making optimized batch calls to the EC2 and Auto Scaling APIs. This design minimizes throttling risks on the control plane APIs, ensuring scalability. The Lambda function is configured with batching and concurrency limits to prevent overwhelming the API endpoints and the OpenSearch Service bulk indexing process.
  4. After processing, events are bulk-indexed into Amazon OpenSearch Service, enabling near real-time visibility and analytics.

A Dead Letter Queue (DLQ) ensures no data is lost in case of failures, while AWS Identity and Access Management (IAM) roles enforce least-privilege access between all components.

The OpenSearch Service domain is deployed within the private subnets of an Amazon VPC, ensuring it is not publicly accessible.

  1. Access to OpenSearch Dashboards is routed through an Application Load Balancer (ALB) configured with an HTTPS listener,
  2. ALB forwards traffic to an NGINX proxy running on EC2 instances in an Auto Scaling group. This setup provides secure and scalable access.
  3. Authentication and authorization are enforced using OpenSearch Service’s internal user database, ensuring that only authorized users can access the dashboards.

OpenSearch Dashboards visualize interruption metrics, delivering actionable insights to support effective capacity planning and workload placement.

Extensibility and alternative analytics tools

While this solution uses Amazon OpenSearch Service for storing and visualizing Spot Interruption data, the architecture is flexible and can be extended to support other analytics and observability platforms. You can modify the Lambda function to forward data to tools such as Amazon Quick Sight, Amazon Timestream, Amazon Redshift, or external services depending on your analytics and compliance needs. This enables teams to use their preferred tooling for building visualizations, setting alerts, or integrating with existing dashboards.

What you’ll build

By the end of this post, you’ll have a complete Spot Interruption monitoring system as seen in the following screenshot that automatically captures EC2 Spot Instance interruption events from your Auto Scaling Groups and presents them through interactive dashboards. Your solution will include real-time visualizations showing interruption patterns by availability zone, instance types, and time periods, along with ASG-specific metrics that help you identify optimization opportunities.

The sections of this post walk you through the step-by-step implementation of this solution, from deployment to setting up the event-driven architecture to configuring the analytics dashboards. Remember that you can deploy and customize this solution for your environment.

Prerequisites

You must have access to an AWS account with enough privileges to create and manage the AWS resources discussed in this blog post.You must also have the following software/components installed on your device:

Note: This application utilizes multiple AWS services, and there are associated costs beyond the Free Tier usage. Refer to the AWS Pricing page for specific details. You are accountable for any incurred AWS costs. This example solution does not imply any warranty.

Deployment instructions

Create a new directory, navigate to that directory in a terminal and clone the GitHub repository:

git clone https://github.com/aws-samples/sample-spot-interruption-insights

Change directory to the solution directory:

cd sample-spot-interruption-insights

Checklist for deployment

This section lists the setup and configurations that are required before you deploy the solution stack by using AWS SAM.

If you don’t have a VPC, Subnets, NAT Gateway already created and configured you can follow the steps mentioned in the Amazon VPC documentation to create the necessary resources.

  1. VPC Created – Ensure a VPC exists with DNS hostnames and DNS resolution enabled. You will need the VPC ID during deployment
  2. Public Subnets (2 or more) – Configure two or more public subnet IDs from different Availability Zones.
  3. Private Subnets (2 or more) – Configure two or more private subnet IDs from different Availability Zones.
  4. Outbound Internet Access for Private Subnets – Ensure NAT Gateway access as nginx proxy will be installed on EC2 instance in private subnet. Refer to Example: VPC with servers in private subnets and NAT for more information on setting up NAT for instances in private subnets.
  5. ALB Access – CIDR IP range allowed to access ALB (such as, `1.2.3.4/32`). This is for accessing the dashboard.
  6. Certificate ARN for ALB HTTPS Listener – To configure HTTPS listener. Certificate (can be self-signed) for HTTPS port of the load balancer. Refer to Prerequisites for importing ACM certificates for more information on importing self-signed certificate into AWS Certificate Manager (ACM)
  7. OpenSearch Service-Linked Role – Before deploying this template, ensure the AWS OpenSearch service-linked role exists in your account by running:
    aws iam create-service-linked-role --aws-service-name es.amazonaws.com

    Note:

    • This command only needs to be run once per AWS account.
    • If the role already exists, you’ll see an error message that can be safely ignored.
    • This role allows Amazon OpenSearch Service to manage network interfaces in your VPC.
    • Without this role, deployments that place OpenSearch Service domains in a VPC will fail with the error: “Before you can proceed, you must enable a service-linked role to give Amazon OpenSearch Service permissions to access your VPC.”
    • The service-linked role is named "AWSServiceRoleForAmazonOpenSearchService" and is managed by AWS.
  8. AMIId – Valid EC2 AMI ID for the region. Note:- This solution is designed to work exclusively with AMIs that use the DNF package manager. Use the latest Amazon Linux 2023 AMI for optimal compatibility and security.

    The following AMIs are confirmed compatible with this solution:

    • Amazon Linux 2023
    • Fedora (35 and newer)
    • RHEL 8 and newer
    • CentOS Stream 8 and newer
    • Oracle Linux 8 and newer

Build and deploy the solution – From the command line, use AWS SAM to build and deploy the AWS resources as specified in the template.yml file.

sam build
sam deploy --guided

During the prompts: Fill-out the following parameters:

  • Stack Name: {Enter your preferred stack name}
  • AWS Region: {Enter your preferred region code}
  • Parameter DomainName: {Enter the name for your new OpenSearch Service domain where the index will be created and data will be pushed for analytics. This will create a new OpenSearch domain with the name you specify – Preferably keep short domain name}
  • MasterUsername: {Admin username to login to the OpenSearch dashboard}
  • MasterUserPassword: { Must contain lowercase, uppercase, numbers, and special characters (!@#$%^&*). Minimum 12 characters recommended. Avoid common passwords (Password123!, Admin@2024 and more) as these may cause deployment failures due to security validation checks.}
  • IndexName: {OpenSearch Index name where Spot interrupted instance related data will be pushed}
  • EventRuleName: {Amazon EventBridge rule name to capture EC2 Spot interruption notices}
  • CustomEventRuleName: {Amazon EventBridge custom rule name to capture EC2 Spot interruption notices. This will be used for verifying the solution}
  • TargetQueueName: {EventBridge Rule target SQS name}
  • SQSDLQQueueName: {Target SQS Dead Letter Queue name}
  • LambdaDLQQueueName: {Lambda Dead Letter Queue name}
  • VPCId: {Enter the VPCId where the resources will be deployed}
  • PublicSubnetIds: {Enter 2 or more Public SubnetIDs separated by comma}
  • PrivateSubnetIds: {Enter 2 or more Private SubnetIDs separated by comma}
  • RestrictedIPCidr: {IP address/CIDR for restricting ALB access in CIDR format (such as 10.2.3.4/32)}
  • CertificateArn: {Certificate ARN for configuring ALB HTTPS Listener}
  • AMIId: {Valid EC2 AMI ID for the region}
  • Confirm changes before deploy: Y
  • Allow SAM CLI IAM role creation: Y
  • Disable rollback: N
  • Save arguments to configuration file: Y
  • SAM configuration file: {Press enter to use default name}
  • SAM configuration environment: {Press enter to use default name}

Note: The complete solution may take approximately 15-20 minutes to deploy. After the deployment is complete, there are a few manual steps that need to be performed to ensure the solution functions as expected.

Post deployment instructions

The following steps need to be performed in OpenSearch Dashboards after logging in. Get the DNS Name of the Application Load Balancer endpoint from the deployment output section of the CloudFormation stack or the ALB console. Access the OpenSearch dashboards using the ALB DNS name as follows –

https://[ALB-DNS-NAME]/_dashboards

You will be redirected to the OpenSearch Dashboards login page. Log in using the MasterUsername and MasterUserPassword you specified during deployment.

If this is the first time you are logging in then you may see a Welcome screen.

  1. Choose ‘Explore on my own’ on the Welcome screen.
  2. Choose ‘Dismiss’ on the next screen.
  3. If the ‘Select your tenant’ dialog appears with ‘Global’ preselected, Choose ‘Confirm’. Otherwise, select ‘Global’ first and then and choose ‘Confirm’.

Create index and attribute mapping

This section lists the required steps to create the index and attribute mapping.

  1. On the Home screen select the Hamburger Menu icon () on the top left
  2. Select ‘Dev Tools’ at the bottom of the menu.
  3. On the dev tools console, paste the following PUT command and execute the request by choosing ‘Click to send request’.

    Note The index name should match what you entered during the deployment. Change the index name accordingly before creating the index.

    PUT /<YOUR-INDEX-NAME-SPECIFIED-DURING-DEPLOYMENT>
            {
                "mappings": {
                    "properties": {
                    "instance_id": {
                        "type": "keyword"
                    },
                    "instance_name": {
                        "type": "keyword"
                    },
                    "instance_type": {
                        "type": "keyword"
                    },
                    "asg_name": {
                        "type": "keyword"
                    },
                    "timestamp": {
                        "type": "date"
                    },
                    "region": {
                        "type": "keyword"
                    },
                    "availability_zone": {
                        "type": "keyword"
                    },
                    "private_ip": {
                        "type": "ip"
                    },
                    "public_ip": {
                        "type": "ip"
                    }
                    }
                }
            }

    The following is a screenshot of this command in Dev Tools.

  4. Confirm that the index was created successfully.

Create index pattern

This section lists the required steps to create the index pattern

  1. Access the Hamburger Menu icon on the top left.
  2. Select ‘Dashboard Management’ from the bottom of the menu.
  3. Choose ‘Index Patterns’
  4. Choose “Create Index Pattern”
  5. Enter the Index pattern name and choose “Next step”.
    The index pattern name should be the index name you entered during the deployment followed by an asterisk. See the following screenshot for reference.

  6. Select ‘timestamp’ in primary Time field and choose ‘Create index pattern’
  7. Choose the star icon to make the index pattern default

Configure Lambda with required access for new index

In this section you will create a role in OpenSearch Service dashboards and will map Lambda execution role to the same to perform operations on the new index.

  1. Navigate to the Lambda console
  2. Search for the function beginning with your OpenSearch Service domain name.
  3. In the function details, go to Configuration > Permissions
  4. Choose the Role Name in the Execution Role section.
  5. Copy the Lambda execution role ARN from this function which handles Spot interruption events.
  6. Access the Hamburger Menu icon on the top left and select ‘Security’ from the bottom of the menu.
  7. Now select the ‘Roles’ menu option under ‘Security’ menu and then select ‘Create Role’
    • Enter a role name and set Cluster Permissions to “cluster_composite_ops_ro“.
    • For Index Permissions, select the index pattern name created during deployment.

    See the following screenshot for reference.

  8. Set the Tenant Permissions to “global_tenant” as seen in the image and Choose “Create”.

  9. After the role is created, on the same screen, select the ‘Mapped Users’ tab and choose ‘Manage Mapping’

  10. Choose ‘Manage Mapping’
  11. In the ‘Backend roles’ add the Lambda execution role ARN copied earlier and Choose ‘Map’

You can create more users in the internal database and grant appropriate access to the visualisations and dashboards. The following steps show how to create a read only role and to create an internal user and grant read only access.

Manage users and roles

In this section you will create a new user and a role with read-only access, then assign the role to the user to grant them read-only access to the Spot Interruption dashboard and visualizations.

  1. Access the Hamburger Menu icon on the top left
  2. Select ‘Security’ from the bottom of the menu
  3. Select ‘Internal Users’ and then select ‘Create Internal user’
  4. Enter username and set a Password, then choose “Create”.

  5. Now select the ‘Roles’ menu option under ‘Security’ menu and then select ‘Create Role’
    • Enter the role name and set Cluster Permissions to “cluster_composite_ops_ro“.
    • For Index Permissions, select the index pattern name created during deployment.

    See the following screenshot for reference.

  6. Set the Tenant Permissions to “global_tenant” as seen in the image and Choose “Create”.

  7. After the role is created, on the same screen, select the ‘Mapped Users’ tab and choose ‘Manage Mapping’

  8. Select the user created above in ‘Users’ and choose ‘Map’

Configure and deploy sample visualisations and dashboard

Sample visualizations and a starter dashboard are provided under the data folder of the git repo you cloned earlier. Look for the file named spot-interruption-dashboard-visualisations.ndjson.To import the visualizations:

  1. Navigate to Saved Objects under Dashboard Management in OpenSearch Dashboards.
  2. Import the spot-interruption-dashboard-visualisations.ndjson file.
  3. During the import, you may encounter index pattern conflicts. Select the index pattern you created from the dropdown and choose “Confirm all changes”.

Once imported, the sample visualizations and dashboard linked to your index pattern will be available under Dashboards in the left-side hamburger menu. You can view the Spot Interruption Dashboard, which includes visualizations based on Availability Zones, Regions, Instance Types, Auto Scaling Groups (ASGs), and Interruptions over time. You can further customize by creating your own visualizations using the attributes available in the index or by editing/creating new dashboards. The dashboard will display empty views until Spot interruption data is available to visualize.

Test the solution

A temporary event rule was created during deployment to simulate matching Amazon EC2 Spot interruption notices. The rule name is the name you specified during deployment for the CustomEventRuleName parameter.

To verify the solution, you can send sample events from the EventBridge console as depicted below. In the AWS console,

  • Open the Amazon EventBridge console
  • In the left menu under ‘Buses’ section choose ‘Event buses’
  • Choose the ‘default’ event bus
  • Choose the ‘Send events’ button
  • In the Send events page enter the following details:
    • Event bus: default
    • Event source: custom.spot.interruption.simulator
    • Detail type: EC2 Spot Instance Interruption Warning
    • Event detail: {"instance-id": "<instance-id>", "Instance-action": "terminate"}

    Replace the instance-id with an actual instance id that is associated with an Amazon EC2 Auto Scaling group. Refer to the following screenshot.

After the event is sent successfully, you can log in to OpenSearch Dashboards and view the Spot Interruption Dashboard, which has been prebuilt with the indexed event data. This dashboard provides insights across key dimensions such as Availability Zones, Regions, instance types, Auto Scaling groups, and interruption trends over time. Use the dashboard as a starting point to understand the kinds of insights possible and customize or create new visualizations based on your needs and the fields available in the index.

Alternatively, you can navigate to the Discover section in the menu to view the raw event details. Ensure that you select the index pattern you created earlier in this demonstration, and adjust the time range if necessary (such as the last 15 minutes) to view the latest data.

Security and cost optimizations

This solution is designed to be secure and cost-efficient by default, but there are some more optimizations you can apply to further reduce cost and enhance security:

Security best practices

  1. Amazon Cognito Authentication : Integrate Amazon Cognito with OpenSearch Dashboards to manage user authentication, enable Multi Factor Authentication, and avoid hardcoding admin credentials. More information Configuring Amazon Cognito authentication for OpenSearch Dashboards
  2. Lambda Layer Versioning: Ensure pinned versions of Lambda Layers are used to avoid unexpected changes. More information Managing Lambda dependencies with layers
  3. Logging and Threat Detection: Enable AWS CloudTrail and Amazon GuardDuty to monitor for unauthorized activity or anomalies. More information Monitoring Amazon OpenSearch Service API calls with AWS CloudTrail

Cost optimizations

  1. Bulk Indexing with Throttling Controls: Lambda processes batches and respects throttling limits to avoid excessive OpenSearch usage.
  2. Short Retention for CloudWatch Logs: Tune log retention periods to avoid unnecessary storage costs.
  3. Optimize Visualizations: Design saved visualizations to avoid expensive queries (like wide time ranges and large aggregations). More information Optimizing query performance for Amazon OpenSearch Service data sources
  4. Index State Management (ISM) : Configure ISM policies in OpenSearch to delete or archive older interruption data. More information Index State Management in Amazon OpenSearch Service

Cleanup

Run the following command to delete the resources deployed earlier.

sam delete

After deleting the stack, make sure to also remove any post-deployment configurations you may have created within the OpenSearch Service dashboards console. While these configurations won’t incur additional costs, it’s considered a best practice to clean up your environment by deleting any resources that are no longer needed. Take some time to review the OpenSearch Service dashboards and identify any custom settings, dashboards, or visualizations you set up during the deployment process. Then, delete these individual configurations to ensure your environment is fully cleaned up.

Conclusion

In this post, you learned how to build and deploy a comprehensive Spot Instance interruption monitoring solution for Auto Scaling groups by using EventBridge, Amazon SQS, Lambda, and OpenSearch Service. You implemented an event-driven pipeline to capture and process Amazon EC2 Spot Instance interruption events, created secure analytics dashboards, and established real-time visibility into interruption patterns across your Auto Scaling group–managed workloads.

This post’s solution empowers your teams with the visibility and agility needed to operate confidently with Amazon EC2 Spot Instances. By combining event-driven architecture with secure, scalable analytics, you can now proactively monitor interruption events, identify interruption trends, and optimize workload strategies for resilience and cost-efficiency.

With real-time data at your fingertips, you’re equipped to make smarter infrastructure decisions and maximize the benefits of Spot Instance capacity while minimizing disruption risks.


About the author

Shekhar Shrinivasan

Shekhar Shrinivasan

Shekhar is a Senior Technical consultant who specializes in cloud architecture design, migration strategies, and AWS workload optimization. He helps enterprise customers accelerate their digital transformation through best practices implementation, scalable infrastructure solutions, and strategic technical guidance to maximize their cloud return on investment.

Secure EKS clusters with the new support for Amazon EKS in AWS Backup

Post Syndicated from Veliswa Boya original https://aws.amazon.com/blogs/aws/secure-eks-clusters-with-the-new-support-for-amazon-eks-in-aws-backup/

Today, we’re announcing support for Amazon EKS in AWS Backup to provide the capability to secure Kubernetes applications using the same centralized platform you trust for your other Amazon Web Services (AWS) services. This integration eliminates the complexity of protecting containerized applications while providing enterprise-grade backup capabilities for both cluster configurations and application data. AWS Backup is a fully managed service to centralize and automate data protection across AWS and on-premises workloads. Amazon Elastic Kubernetes Service (Amazon EKS) is a fully managed Kubernetes service to manage availability and scalability of the Kubernetes clusters. With this new capability, you can centrally manage and automate data protection across your Amazon EKS environments alongside other AWS services.

Until now, for backups, customers relied on custom solutions or third-party tools to back up their EKS clusters, requiring complex scripting and maintenance for each cluster. The support for Amazon EKS in AWS Backup eliminates this overhead by providing a single, centralized, and policy-driven solution that protects both EKS clusters (Kubernetes deployments and resources) and stateful data (stored in Amazon Elastic Block Store (Amazon EBS), Amazon Elastic File System (Amazon EFS), and Amazon Simple Storage Service (Amazon S3) only) without the need to manage custom scripts across clusters. For restores, customers were previously required to restore their EKS backups to a target EKS cluster which was either the source EKS cluster, or a new EKS cluster, requiring that an EKS cluster infrastructure is provisioned ahead of time prior to the restore. With this new capability, during a restore of EKS cluster backups, customers also have the option to create a new EKS cluster based on previous EKS cluster configuration settings and restore to this new EKS cluster, with AWS Backup managing the provisioning of the EKS cluster on the customer’s behalf.

This support includes policy-based automation for protecting single or multiple EKS clusters. This single data protection policy provides a consistent experience across all services AWS Backup supports. It allows creation of immutable backups to prevent malicious or inadvertent changes, helping customers meet their regulatory compliance needs. In case there is a customer data loss or cluster downtime event, customers can easily recover their EKS cluster data from encrypted, immutable backups using an easy-to-use interface and maintain business continuity of running their EKS clusters at scale.

How it works
Here’s how I set up support for on-demand backup of my EKS cluster in AWS Backup. First, I’ll show a walkthrough of the backup process, then demonstrate a restore of the EKS cluster.

Backup
In the AWS Backup console, in the left navigation pane, I choose Settings and then Configure resources to opt in to enable protection of EKS clusters in AWS Backup.

Now that I’ve enabled Amazon EKS, in Protected resources I choose Create on-demand backup to create a backup for my already existing EKS cluster floral-electro-unicorn.

Enabling EKS in Settings ensures that it shows up as a Resource type when I create on-demand backup for the EKS cluster. I proceed to select the EKS resource type and the cluster.

I leave the rest of the information as default, then select Choose an IAM role to select a role (test-eks-backup) that I’ve created and customized with the necessary permissions for AWS Backup to assume when creating and managing backups on my behalf. I choose Create on-demand backup to finalize the process.


The job is initiated, and it will start running to back up both the EKS cluster state and the persistent volumes. If Amazon S3 buckets are attached to the backup, you’ll need to add the additional Amazon S3 backup permissions AWSBackupServiceRolePolicyForS3Backup to your role. This policy contains the permissions necessary for AWS Backup to back up any Amazon S3 bucket, including access to all objects in a bucket and any associated AWS KMS key.


The job is completed successfully and now EKS clusterfloral-electro-unicorn is backed up by AWS Backup.


Restore
Using the AWS Backup Console, I choose the EKS backup composite recovery point to start the process of restoring the EKS cluster backups, then choose Restore.


I choose Restore full EKS cluster to restore the full EKS backup. To restore to an existing cluster, I Choose an existing cluster then select the cluster from the drop-down list. I choose the Default order as the order in which individual Kubernetes resources will be restored.

I then configure the restore for the persistent storage resources, that will be restored alongside my EKS clusters.


Next, I Choose an IAM role to execute the restore action. The Protected resource tags checkbox is selected by default and I’ll leave it as is, then choose Next.

I review all the information before I finalize the process by choosing Restore, to start the job.


Selecting the drop-down arrow gives details of the restore status for both the EKS cluster state and persistent volumes attached. In this walkthrough, all the individual recovery points are restored successfully. If portions of the backup fail, it’s possible to restore the successfully backed up persistent stores (for example, Amazon EBS volumes) and cluster configuration settings individually. However, it’s not possible to restore full EKS backup. The successfully backed up resources will be available for restore, listed as nested recovery points under the EKS cluster recovery point. If there’s a partial failure, there will be a notification of the portion(s) that failed.


Benefits
Here are some of the benefits provided by the support for Amazon EKS in AWS Backup:

  • A fully managed multi-cluster backup experience, removing the overhead associated with managing custom scripts and third-party solutions.
  • Centralized, policy-based backup management that simplifies backup lifecycle management and makes it seamless to back up and recover your application data across AWS services, including EKS.
  • The ability to store and organize your backups with backup vaults. You assign policies to the backup vaults to grant access to users to create backup plans and on-demand backups but limit their ability to delete recovery points after they’re created.

Good to know
The following are some helpful facts to know:

  • Use either the AWS Backup Console, API, or AWS Command Line Interface (AWS CLI) to protect EKS clusters using AWS Backup. Alternatively, you can create an on-demand backup of the cluster after it has been created.
  • You can create secondary copies of your EKS backups across different accounts and AWS Regions to minimize risk of accidental deletion.
  • Restoration of EKS backups is available using the AWS Backup Console, API, or AWS CLI.
  • Restoring to an existing cluster will not override the Kubernetes versions, or any data as restores are non-destructive. Instead, there will be a restore of the delta between the backup and source resource.
  • Namespaces can only be restored to an existing cluster to ensure a successful restore as Kubernetes resources may be scoped at the cluster level.

Voice of the customer

Srikanth Rajan, Sr. Director of Engineering at Salesforce said “Losing a Kubernetes control plane because of software bugs or unintended cluster deletion can be catastrophic without a solid backup and restore plan. That’s why it’s exciting to see AWS rolling out the new EKS Backup and Restore feature, it’s a big step forward in closing a critical resiliency gap for Kubernetes platforms.”

Now available
Support for Amazon EKS in AWS Backup is available today in all AWS commercial Regions (except China) and in the AWS GovCloud (US) where AWS Backup and Amazon EKS are available. Check the full Region list for future updates.

To learn more, check out the AWS Backup product page and the AWS Backup pricing page.

Try out this capability for protecting your EKS clusters in AWS Backup and let us know what you think by sending feedback to AWS re:Post for AWS Backup or through your usual AWS Support contacts.

Veliswa.

The Minisforum MS-R1 12-core Arm 10GbE Mini Workstation is

Post Syndicated from Patrick Kennedy original https://www.servethehome.com/the-minisforum-ms-r1-12-core-arm-10gbe-mini-workstation-is/

We take a look at the new Minisform MS-R1, an Arm-based homelab focused 10Gbase-T system with expansion, and some teething challenges

The post The Minisforum MS-R1 12-core Arm 10GbE Mini Workstation is appeared first on ServeTheHome.

The collective thoughts of the interwebz