Post Syndicated from The Atlantic original https://www.youtube.com/watch?v=76zJ5-kOLLE
Имаме си президентка. Съвсем
Post Syndicated from Светла Енчева original https://www.toest.bg/imame-si-prezidentka-suvsem/

Вече действително си имаме президентка. Ако доскоро Илияна Йотова заемаше поста на държавния глава само защото Румен Радев го напусна, за да стане премиер, на 1 ноември 2026 г. тя стана първата жена в България, избрана за президент. Следва да отбележим: това се случи, преди „стъкленият таван“ в политиката да е строшен в държави като САЩ и Германия, да не говорим за Русия. Ниската избирателна активност не прави Йотова по-малко президент – такива са изборните правила и те са спазени.
Според данни от екзитполове за нея са гласували повече жени, отколкото мъже. Тези данни следва да се приемат с едно наум поради сериозното разминаване между резултатите от екзитполовете и от изборите, но с друга информация за профилите на гласувалите, за съжаление, не разполагаме. И все пак, тъй като профилите на гласоподавателите по пол и възраст са аналогични на тези от първия тур, може да предположим, че са по-скоро коректни.
Ала фактът, че жена е избрана за президент, добра новина ли е за жените в България?
Жени антифеминистки в българската политика
Наличието на жени в политиката само по себе си не означава феминизъм. Ето няколко от многото примери за антифеминистки позиции на жени в българската политика:
През 1997 г. се учредява Партията на българските жени (ПБЖ).
През 2001 г. партията, чиято председателка е Весела Драганова, става мандатоносител на политическия проект на бившия цар Симеон Сакскобургготски, през 2024 г. – на проекта на бившия главен прокурор Иван Гешев, а междувременно е участвала във всевъзможни коалиции. Ето едно от основните неща, с които ПБЖ намира за нужно да се представи (оригиналният правопис е запазен):
Въпреки наименованието: Партия на българските жени, идеите не са феминистки, а в традициите на християнството, защитавайки изконните български ценности – родина, дом, семейство, деца, духовни традиции – ценности, чиито най-голям радетел е била и е българската майка.
Настоящата председателка на парламента Михаела Доцова също държи да се знае, че не е феминистка.
Тя споделя това в началото на април 2026 г., когато още е кандидат-депутатка от „Прогресивна България“, в интервю на Мартин Богданов, по-известен с псевдонима Карбовски. Думите на Доцова предизвикаха реакции, след като тя застана начело на Народното събрание, заради един очевиден парадокс. Жена, заела един от най-високите постове в България в резултат на това, че жени преди нея са се преборили първо за правото си да избират, а след това и за правото да бъдат избирани, не се идентифицира с отстояването на равни права от страна на жените.
Но едва ли някоя жена е навредила през последните десетилетия повече на правата на жените в България от бившата председателка на БСП Корнелия Нинова.
Никоя от родните уонаби традсъпруги не може да стъпи на малкия ѝ пръст в това отношение. Борбата на Нинова срещу Конвенцията на Съвета на Европа за превенция и борба с насилието над жени и домашното насилие (Истанбулската конвенция) допринесе за връщането на еманципацията на жените в България с десетилетия назад. Не толкова заради омаловажаването на проблема с домашното насилие, от което потърпевши са най-вече жените, а основно заради отрицанието на социалната значимост на пола.
След успеха на кампанията срещу Истанбулската конвенция вече официално (бетонирано и от Конституционния съд) единствената социална роля на жената е в биологичното ѝ възпроизводство – тоест да бъде майка.
Илияна Йотова и феминизмът
За близо десетте си години в Президентството Илияна Йотова би могла да овластява жените в България, като бъде техният глас. Би могла например да популяризира трудовите и социалните права на майките, които не се познават добре. Или Директивата на ЕС за равно заплащане на мъжете и жените за равен труд. За тази директива, чиято цел е да се осигури прозрачност в заплащането, в България почти не се говореше, преди тя да бъде въведена на 7 юни 2026 г.
Йотова би могла и да възрази на оттеглянето на България от Истанбулската конвенция. Впрочем тя първоначално го направи – на форум за правата на жените разкритикува оттеглянето от Конвенцията. Но скоро след това зае „мултивекторна“ – казано с терминологията на „Прогресивна България“ – позиция по въпроса. Тоест си изми ръцете като Пилат Понтийски, обявявайки се за референдум за Конвенцията. После гласът ѝ по темата напълно заглъхна.
Но през десетте си години в Президентството Йотова не акцентира върху пола си.
С оглед на политическата ѝ кариера стратегията на тази линия на поведение е печеливша. За да стане първата жена, избрана за президент в държава, в която единствената социална роля на жената по конституция е да бъде майка, желателно е да не насочва общественото внимание върху факта, че е жена.
Впрочем единственият път по време на дебата между нея и Андрей Гюров, когато тя се идентифицира с пола си, беше в конституционно „правилния“ контекст – изтъкна, че е майка и баба.
В последно време се наблюдава промяна в единствената характеристика на Йотова, подчертаваща женствеността ѝ – буйната коса. Вече няколко пъти, например на дебата с Гюров и на пресконференцията след победата на втория тур, косата ѝ е частично прибрана назад, което разкрива лицето ѝ, но ѝ придава и по-строг вид.
И Камала Харис, която също се опита да се изкачи от вицепрезидентския до президентския пост, се стараеше да не акцентира върху пола и расата си; не че това ѝ помогна да победи Тръмп.
Между Харис и Йотова обаче има поне две ключови разлики.
Първо, Илияна Йотова се кандидатира за президентския пост скоро след като Румен Радев взе властта, така че можа да се възползва от инерцията от победата на „Прогресивна България“. А Камала Харис се кандидатира в период, когато неодобрението към Джо Байдън беше много високо.
Второ, въпреки че Харис беше в по-лоша изходна позиция от Йотова, правата на жените бяха сред основните теми в кампанията ѝ. Особено репродуктивните права, защото две години по-рано Върховният съд на САЩ прие решение, според което правото на аборт вече не е защитено от Конституцията. Илияна Йотова не само не се застъпва за правата на жените, а и
участва в своеобразно легитимиране на мизогинията.
Тя отказа да даде интервю на множество авторитетни медии, например CNN, но пък даде на Мартин Карбовски (в комбинация с Явор Дачков). Карбовски (както и Дачков), при когото се изредиха и много от политиците на „Прогресивна България“, от години е ретранслатор на пропутински опорни точки и се е превърнал в своеобразна трибуна на новата власт. Морализаторският му патос и позициите му в защита на „традиционните ценности“ обаче са в странен дисонанс с контракултурния му образ в миналото, чиято бунтарщина се изразява не на последно място в откровена мизогиния.
Есето на Карбовски Rape Party, публикувано в „Егоист“ в края на 90-те например, е посветено на „рейпването“ (изнасилването). В него авторът, който пише от свое име, а не от това на литературен герой, нормализира сексуалното насилие над жени:
Всеки мъж е опитвал да рейпва – най-малкото заради алкохол или поне защото Кърт Кобейн и Слави Трифонов пеят подобни песни. Аз съм се опитвал да насилвам жена два пъти.
Следват детайлни описания как точно е опитвал и защо не е успял, а за „утеха на феминистите и феминистките“ следва да послужи признанието, че „синините на сутринта по мене и по нея бяха равен брой“. Не става ясно дали според автора „феминистите и феминистките“ трябва да се чувстват спокойни и от това твърдение (оригиналният правопис е запазен):
… една жена трябва да бъде смляна от бой, съсипана психически или заплашена с пистолет, за да успее жалката мъжка технология на изнасилването. Жените са яки в бедрата, гъвкави са, умеят да се извиват и гърчат, юмруците и ноктите им не са за подценяване, ритниците им са страшно оръжие. А и основния проблем на мъжете е, че женските полови органи са вътре в тялото на жената и ако някой много мърда е трудно да уцелиш дупката.
Дори обаче да приемем, че това есе е просто литература, опитите на Карбовски да оневини мъж, изнасилил и убил жена, са реални. Става въпрос за убийството на Яна Кръстева в Борисовата градина през 2011 г. За него беше обвинен Николай Русинов – Чеци, впоследствие и осъден. Но междувременно Карбовски му даде трибуна, свидетелства в негова подкрепа в съда и тиражира версия, че клошарят Пламен Трифонов е убил младата жена. Поради това Трифонов, който за разлика от Чеци нямаше защитаващи го приятели, също беше обвиняем.
През 2020 г. пък дизайнерката Миглена Каканашева – Мегз обвини Карбовски, че я е изнудвал, за да прави секс с него, и публикува техни чатове за доказателство. Впоследствие той осъди ПИК за обиди по негов адрес по този повод, но твърденията му за клевета не бяха приети от съда.
При същия човек отива да дава интервю Илияна Йотова.
Вместо феминизъм – манипулативна мелодрама
Илияна Йотова не изтъква пола си, но по време на дебата с Андрей Гюров на три пъти произвежда мелодрама.
Епизод 1 – болното дете
В отговор на упрека на Андрей Гюров, че е помилвала наркотрафиканти, Йотова дава пример за помилван от нея баща на болно дете, „което не може да приеме храна от никой друг, освен от своя баща“. И задава реторичния въпрос: „Вие как бихте постъпили в тази ситуация?“.
Да допуснем, че е вярна информацията, че мъжът е отглеждал детето си сам, а то е с аутизъм и отсъствието на баща му поставя живота му под риск, и затова Йотова е постъпила правилно в този случай. Това обаче не е оправдание за помилването на хора като Огнян Атанасов – Петричкия Ескобар и Динко Господинов – Лудия. Нито рискът за това дете е по-голям от риска за всички деца в България, които разполагат с лесен достъп до наркотици.
Представете си шофьор, обвинен, че е причинил катастрофа, в която са пострадали хора, да се оправдава в съда със следния аргумент: „Но пък веднъж качих в колата си дете, което се прибираше самичко в бурята, и го закарах до вкъщи. Вие как бихте постъпили в тази ситуация – ще го оставите ли да загине?“. Същата стойност има и оправданието на Йотова.
Епизод 2 – убитият баща
На въпрос на водещата кой е най-близкият ѝ човек, Илияна Йотова отговаря, че това е майка ѝ. Водещата явно решава, че отговорът е даден, и се опитва да продължи с въпросите, но Йотова настоява да обясни защо точно майка ѝ е най-близкият ѝ човек:
Твърде рано убиха баща ми, иначе беше той.
Така зрителите, които досега не са знаели този факт, научават, че бащата на президентката е бил убит, когато тя е била млада. Тази информация предизвиква и съчувствие, и любопитство, изобщо допринася за възприемането на опонентката на Гюров като човешко същество.
На заден план остава проблемът с отношението към майката, който следва от тази реплика – излиза, че според Йотова тя е най-близкият ѝ човек не защото притежава някакви качества, а поради липсата на бащата.
Епизод 3 (всъщност цяла сапунена опера) – „не закачайте семейството ми“
В края на панела от дебата, в който кандидат-президентите задават въпроси един на друг, Йотова формулира следното питане към Гюров:
Оставих последния си въпрос към г-н Гюров от човешката страна. Искам да Ви попитам, така, както сме работили, познаваме се, както изкарахме сега една много трудна кампания, по начина, по който тя беше проведена – с демагогия, с лъжи, с лични нападки, с тежки квалификации, през тролове, през елфи, през каквото се сетите, с това, че накарахте медии да посегнат на съпруга ми… Вие лично […] Аз Ви питам като човек, Вас лично – Вие съгласен ли сте с такава кампания?
Видимо обърканият Андрей Гюров, който вероятно не разбира какво има предвид опонентката му, отговаря с общи фрази в смисъл, че той и екипът му са водили позитивна кампания и не са си позволявали лични нападки. По-късно обаче, в самия край на дебата, когато вече няма възможност опонентът ѝ да реагира, Йотова се връща към темата и заявява:
Господин Гюров, моля Ви, не закачайте семейството ми. Защото разбрах, че кампанията, която проведохте срещу мен, Ви харесва и я одобрявате.
Съпругът на Илияна Йотова е в процес на възстановяване след прекарано тежко заболяване и трудно се придвижва. С твърденията си Йотова внушава, че Гюров е лично отговорен за това медии, неясно как, да посягат на мъжа ѝ и/или на цялото ѝ семейство.
Действителната история е съвсем различна. Всъщност история дори няма.
Влогърът Николай Караколев задава въпроси на Илияна Йотова и я снима, докато тя отива да гласува с мъжа си, който се придвижва с бастун. Тя охотно му отговаря, но на моменти видимо се притеснява как ще мине съпругът ѝ, и моли да му се направи път. Караколев в нито един момент от записа не се обръща към него, не му „посяга“ и не го „закача“ по никакъв начин. Може би Йотова интерпретира като посегателство срещу семейството си факта, че мъжът ѝ изобщо е сниман, но тя не отказва на Караколев интервюто.
Николай Караколев пък няма нищо общо с Андрей Гюров и неговия щаб, нито дори със симпатизантите му. Той също толкова напористо преследва и Гюров, за да му задава въпроси, освен това разпространява компромати за кандидат-вицепрезидента му Георги Кандев.
Самият Караколев реагира с ироничен коментар: „Последно кой при кого ме е пратил???“, споделяйки видео, в което наред с призива на Йотова „не закачайте семейството ми“ се показва как той обвинява Гюров и Кандев в редица грехове.
Ще се еманципира ли Йотова от Радев?
Ако предизборната кампания разкри нещо за личността на Илияна Йотова, то е, че тя много добре знае в какви случаи как да се държи, но и че не се спира пред нищо, за да постигне целите си. Друг въпрос е, че за постигането на тези цели тя с лека ръка жертва истината, а и националните интереси.
В продължение на 10 години Йотова стои в сянката на Румен Радев, излъчва безличност и търпеливо чака да дойде нейният ред. Радев продължава да се държи, все едно ѝ е шеф. Пристигайки на пресконференцията след победата ѝ на втория тур, той вървеше няколко метра пред нея – ако човек не знаеше кой е спечелил изборите, щеше да помисли, че е Радев.
Постът на премиера обаче е по-проветрив от този на президента. Президентите в България се избират веднъж на пет години, премиерите – на четири (ако изобщо изкарат пълен мандат). Министър-председателите търпят повече критика и срещу управлението им се провеждат повече протести, като в резултат на някои от тях понякога падат правителства. В България обаче не само няма случай президент да бъде свален заради обществено недоволство, ами по правило държавният глава има най-висок рейтинг сред публичните личности.
С други думи, Йотова вече е над Радев, макар той да не дава вид, че осъзнава това.
Ако премиерът продължава да се държи с нея като с подчинена, тя може да реши да покаже къде му е мястото, и между тях да настъпи разкол. Такъв сценарий едва ли би променил възгледите на президентката за геополитическата ориентация, които вероятно са по-искрено проруски от тези на Радев – все пак тя идва от средите на БСП. Но евентуално напрежение между „Дондуков“ 2 и „Дондуков“ 1 може да отслаби властта на „Прогресивна България“.
Конфронтацията между президент и премиер, дори когато са от една политическа сила, има традиция. За това допринася и конституционната роля на президента, която го позиционира като независим от партиите, помогнали му да дойде на власт.
Началото беше положено от Жельо Желев, чиято пресконференция, останала в историята като „Боянските ливади“, доведе до падането от власт на правителството на Филип Димитров. Отношенията между Иван Костов и Петър Стоянов също се обтегнаха, а кулминация на напрежението между тях беше репликата на тогавашния президент „Иване, кажи си“.
Георги Първанов нееднократно критикуваше правителството на Сергей Станишев и политиката на БСП, а след като сдаде президентския пост, основа собствена партия. Като че най-неконфликтен президент – поради мекия си нрав и липсата на политически амбиции – беше Росен Плевнелиев. Но се е случвало и той демонстративно да се разграничава от Бойко Борисов, например от проруските му залитания.
Йотова не прилича на човек с мек нрав, така че разривът между нея и Радев вероятно е въпрос на време. Дали в резултат на евентуален такъв разрив президентката би се опитала да капитализира политически факта, че е жена, е друг въпрос. Ако може да извлече дивиденти от това, без да накриви шапката на Москва, защо не?
Независимо от личността, ценностите, делата и външнополитическата ориентация на Йотова
фактът, че в България за първи път е избрана президентка, сам по себе си е добра новина.
Това означава, че в бъдеще ще е възможно и други жени да заемат този пост. Някой ден на него може да застане жена, която я е грижа за правата на жените. Само дано днешните момичета, които един ден ще могат да се кандидатират за държавен глава, да имат опит какво е да живееш в свобода и да са наясно какво означават равни права.
Experience AI begins reaching classrooms across Latin America
Post Syndicated from Saul Maldonado original https://www.raspberrypi.org/blog/experience-ai-begins-reaching-classrooms-across-latin-america/
Earlier this year, we announced that we’re expanding Experience AI, our AI literacy programme, across Latin America to bring AI education to nine more countries through support from Google.org. Working with local partner organisations, we offer Experience AI training and resources that teachers can use to enable young people to learn a foundational understanding of AI technologies, their social and ethical implications, and the role that AI can play in their lives.

Over the past few months, Experience AI launch events have already taken place in Brazil, Chile, Argentina, and Mexico. At every event, we met educators, policymakers, universities, non-profit organisations, and technology leaders and explored how AI literacy can become part of classrooms across their country. Experience AI brought us all together around a shared goal: giving teachers the confidence and resources they need to help young people understand and engage with AI critically and responsibly.
Growing the Experience AI partner network in Latin America
Across Latin America, the local organisations we are partnering with to implement Experience AI bring deep expertise in teacher professional development and education. Partners include Fundación Sadosky in Argentina, Fundación Kodea in Chile, Sincroniza Educação in Brazil, and Educación para Compartir in Mexico.
Each partner is implementing the programme in a way that reflects its local education system and context. We work with them individually and also facilitate their collaboration around shared challenges.
A delivery model designed for lasting impact across Argentina
In Argentina, Experience AI was officially launched in June during a Google event in Buenos Aires.

Our Argentinian partner Fundación Sadosky is taking a distinctive approach to Experience AI teacher professional development by working through a network of public universities across the country, rather than relying on a central training team. Through this approach, Experience AI training will reach educators in diverse regions across the country as Fundación Sadosky builds on local expertise and existing educational networks.
Growing local capacity and developing regional trainers means Experience AI will make a lasting impact for teachers and learners, enabling high-quality AI education long after the programme’s first rollout.
The first cohort of participating universities is now working with teachers across several Argentinian provinces, before the programme expands nationwide. When fully established, Experience AI aims to support around 1,700 secondary school teachers and reach an estimated 153,000 students across Argentina.
Turning vision into action
It’s been very rewarding coming together with local partners, Google.org, universities, and education communities across Latin America around our shared vision of high-quality AI education for all young people.

After the launch events, the focus now turns to practical action: supporting teachers and bringing Experience AI into classrooms across the region.
As the programme grows, we also look forward to working with new partners across Latin America to bring AI literacy to even more educators and young people. By 2028, we and our Latin American partners aim to support 24,000 more educators and reach more than 1.25 million young people through Experience AI.
The post Experience AI begins reaching classrooms across Latin America appeared first on Raspberry Pi Foundation.
Susan Collins Didn’t Stand a Chance
Post Syndicated from The Atlantic original https://www.youtube.com/shorts/WS8_7Km9Hj4
The Unlikeliest Democratic Win of All
Post Syndicated from The Atlantic original https://www.youtube.com/shorts/aIGOlbvbBks
[$] LWN.net Weekly Edition for November 5, 2026
Post Syndicated from jzb original https://lwn.net/Articles/1103480/
Inside this week’s LWN.net Weekly Edition:
- Front: Kernel cells; Debian LLM reviews; glibc system-call wrappers; Binder in Rust; Kernel CVE flood; Fedora KDE and X11 removal; 7.4 merge window part two; Portable Python.
- Briefs: MTCP RCE; Bash security; XCPE botnet; Bazzite 45; Fedora 45; openSUSE Leap 16.1; Tor Browser 16.0; Quotes; …
- Announcements: Newsletters, conferences, security updates, patches, and more.
Amazon S3 Tables now offer managed migration of Apache Hive tables to Apache Iceberg
Post Syndicated from Channy Yun (윤석찬) original https://aws.amazon.com/blogs/aws/amazon-s3-tables-now-offer-managed-migration-of-apache-hive-tables-to-apache-iceberg/
Today, we’re announcing a simple, cost-effective path for data lake modernization. Amazon S3 Tables now support managed migration of your Apache Hive tables to Apache Iceberg. Migration works with Parquet tables in Amazon S3 that are registered in the AWS Glue Data Catalog and allows you to upgrade your data lake with no pipelines to build or compute to provision, while production workloads keep running.
Apache Iceberg has become the open standard for large analytics datasets. It lets you manage petabyte-scale tables with features like schema evolution, hidden partitioning, and time travel queries, while keeping your data open and queryable with any Iceberg-compatible engine. Amazon S3 Tables offer fully managed storage purpose-built to keep Iceberg tables performant and cost-effective as they grow, with features like automatic maintenance, optimization, replication, and S3 Intelligent-Tiering built-in.
What is new
Previously, migrating Apache Hive tables to Apache Iceberg could take weeks of engineering work to build and manage the required infrastructure. Converting data types and building rollback capabilities added operational complexity. Now, this is available as a managed, API-driven operation.
S3 Tables handle the entire migration workflow, including data validation, compatibility checks, type conversions, file recompression, and compaction. Before copying any data, S3 Tables identify every source object in scope and generate a compatibility report. You can sync as many times as you need without stopping writes to your source table, except for a few minutes during cutover. Once you are ready, you can complete the migration, minimizing time that tables are offline.
Compared to self-managed approaches, S3 Tables managed migrations are cost-effective because you pay only for the data copied, with no charge for the Hive-to-Iceberg conversion, and source objects in S3 Intelligent-Tiering stay in their current access tier.
A first look at the migration
To migrate an AWS Glue Hive table, choose your destination table bucket in the S3 console, then choose Create table from migration.

Create a namespace and table name for your destination Iceberg table. The destination table is created using recommended default settings tuned for query performance and storage efficiency.

When you start the migration, S3 Tables validate the source table, generate a compatibility report, and begin copying data. The destination table is read-only during the migration. Once you complete migration, the destination table is promoted to read-write.

You can begin working with your data right away using a direct integration with Amazon Athena and Amazon SageMaker Unified Studio in the AWS console, or use any tool compatible with the Apache Iceberg REST API to directly query the tables. To learn more, visit the S3 Tables migration documentation.
You can also use AWS Command Line Interface (AWS CLI), AWS SDKs, or the Agent Toolkit for AWS. For example, set up migration jobs and call the start-table-migration command.
cat > /tmp/start-migration.json <<'EOF'
{
"roleArn": "arn:aws:iam::123456789012:role/S3TablesMigrationRole",
"destinationTable": {
"tableBucketARN": "arn:aws:s3tables:us-east-1:123456789012:bucket/my-destination-bucket",
"namespace": "mynamespace",
"name": "my_destination_table",
"encryptionConfiguration": {
"sseAlgorithm": "aws:kms",
"kmsKeyArn": "arn:aws:kms:us-east-1:123456789012:key/1234abcd-12ab-34cd-56ef-1234567890ab"
},
"storageClassConfiguration": { "storageClass": "INTELLIGENT_TIERING" },
"tags": { "team": "s3tables", "purpose": "migration" },
"properties": {
"writeFormat": "parquet",
"icebergFormatVersion": 2,
"compressionCodec": "zstd",
"dictionaryEncoding": true
},
"schema": {
"type": "struct",
"schema-id": 0,
"identifier-field-ids": [1],
"fields": [
{ "id": 1, "name": "id", "type": "long", "required": true, "doc": "primary key" },
{ "id": 2, "name": "payload", "type": "string", "required": false }
]
},
"partitionSpec": {
"spec-id": 0,
"fields": [ { "source-id": 1, "transform": "identity", "name": "id", "field-id": 1000 } ]
}
},
"source": {
"sourceType": "glueTable",
"glueTable": {
"catalogId": "123456789012",
"databaseName": "my_glue_database",
"tableName": "my_source_table",
"lastModifiedTime": "2026-09-01T00:00:00.000Z"
}
},
"dataMigration": {
"maintenanceSettings": {
"icebergCompaction": {
"targetFileSizeMB": 512,
"strategy": "sort",
"icebergSortOrder": {
"order-id": 1,
"fields": [ { "source-id": 1, "transform": "identity", "direction": "asc", "null-order": "nulls-first" } ]
}
},
"icebergSnapshotManagement": { "minSnapshotsToKeep": 1, "maxSnapshotAgeHours": 168 }
},
"dataTypeTransforms": {
"conflictPolicy": "FAIL",
"typeConversion": { "int96": { "type": "timestamp", "sourceTimezone": "UTC" } }
}
},
"reviewMigrationPlan": false,
"completeWorkflowOnSuccess": false,
"output": {
"compatibilityReportConfiguration": {
"bucket": "arn:aws:s3:::my-report-bucket",
"prefix": "reports/compat/",
"scope": "AllSourceObjects"
},
"migrationReportConfiguration": {
"bucket": "arn:aws:s3:::my-report-bucket",
"prefix": "reports/migration/",
"scope": "FailedSourceObjects"
}
}
}
EOF
aws s3tables start-table-migration \
--cli-input-json file:///tmp/start-migration.json
To catch up the destination table with changes in the source, call sync-table-migration as many times as you need before you complete the migration. Each sync copies only what changed.
If you’re using coding agents like Kiro, the migrating-hive-tables-to-s3-tables skill in the Agent Toolkit for AWS provides step-by-step migration guidance with safety guardrails for agents. The skill can:
- Analyze existing IAM policies and recommend equivalent destination policies
- Validate the migration plan before getting started
- Execute the Start → Sync → Complete API calls
- Monitor job progress and guide validation and cutover
To learn more, visit the GitHub README page for the skill.
Now available
Amazon S3 Tables managed migration is available today in US East (N. Virginia, Ohio), US West (Oregon), Asia Pacific (Mumbai, Singapore, Sydney, Tokyo), and Europe (Frankfurt, Ireland, Stockholm) Regions. At launch, the capability supports AWS Glue-registered Hive tables stored in Parquet format within the same AWS account and AWS Region. If you want to call APIs, search documentation, find regional availability, or troubleshoot about this new feature, try using the AWS MCP Server and plugins with your preferred AI tool.
Try it in the Amazon S3 console today and send feedback to AWS re:Post for Amazon S3 or through your usual AWS Support contacts.
— Channy
Implementing PostgreSQL logical replication between Amazon RDS for PostgreSQL instances on separate AWS Outposts
Post Syndicated from Belma Canik original https://aws.amazon.com/blogs/compute/implementing-postgresql-logical-replication-between-amazon-rds-for-postgresql-instances-on-separate-aws-outposts/
Organizations in regulated industries such as healthcare, financial services, and government often face strict data residency mandates that require all data, including database backups, to remain within their on-premises environment. You can keep backups on-premises with Amazon Relational Database Service (Amazon RDS) local backups on AWS Outposts by setting the backup target to AWS Outposts (--backup-target outposts). Your AWS Outposts must have Amazon Simple Storage Service (Amazon S3) on Outposts capacity to store those backups locally. While Amazon RDS local backups on Outposts can keep backup data on-premises, organizations that need high availability across two separate Outposts racks, without any data traversing the AWS Region, lack a built-in, native replication mechanism between Outpost-hosted RDS instances.
In this post, we demonstrate how you can configure PostgreSQL logical replication between two Amazon RDS instances running on separate AWS Outposts racks, so that all data remains within your on-premises environment. By using Customer-owned IP addresses (CoIP) and Local Gateways (LGW), you can establish secure, low-latency replication between Outposts without exposing any data to the Region.
Architecture overview
Our solution uses two AWS Outpost racks, each with its own Local Gateway (LGW) configured in Customer-owned IP (CoIP) mode. In this architecture, all database traffic flows through your on-premises network infrastructure:
Figure 1: Replication architecture across two AWS Outposts racks using Customer-owned IP addresses and Local Gateways
Prerequisites
Before beginning the configuration, make sure you have:
- Two AWS Outpost racks with Local Gateways (LGW) configured in CoIP mode.
- CoIP pools configured and shared with your AWS account.
- LGW route table associations with your virtual private cloud (VPC) in place.
- On-premises network connectivity between the two Outpost Local Gateways.
- VPC with subnets spanning both Outposts.
- Security groups configured to allow PostgreSQL traffic (port 5432).
Step 1: Create Outpost subnets with CoIP configuration
Each Outpost needs a subnet with CoIP auto-assign enabled.
While Amazon Elastic Compute Cloud (Amazon EC2) instances can inherit CoIP assignment from subnet settings, RDS instances require explicit CoIP enablement (covered in Step 3).
Subnet on Outpost A
Subnet on Outpost B
Important: The MapCustomerOwnedIpOnLaunch setting works for EC2 instances but doesn’t automatically apply to RDS instances. RDS requires explicit CoIP enablement during instance creation.
Create DB subnet group
Create a DB subnet group spanning both Outposts:
Step 2: Configure route tables for cross-Outpost communication
This configuration step is often overlooked. Each subnet’s route table requires two Local Gateway routes:
- Cross-outpost route: To reach the other Outpost’s CoIP range.
- Same-outpost hairpin route: To reach its own CoIP range, which is required because RDS DNS resolves to CoIP. This affects any resource on the subnet that needs to reach the RDS instance by endpoint, including Amazon EC2 application servers on the same Outpost.
Why the hairpin route is important
When you enable CoIP on RDS, the DNS endpoint resolves to the CoIP address instead of the private IP. EC2 instances (and other RDS instances) on the same subnet need a route through the LGW to reach CoIP addresses, even for same-Outpost traffic. Without the hairpin route, traffic to the local CoIP range matches the default route (NAT gateway or internet gateway) and is lost.
Route configuration for Outpost A
Route configuration for Outpost B
Final route table summary
Outpost A Route Table:
| Destination | Target | Purpose |
| 10.0.0.0/16 | local | VPC internal traffic |
| 198.19.5.0/24 (Outpost B CoIP) | lgw-A | Cross-outpost |
| 198.19.9.0/24 (Outpost A CoIP) | lgw-A | Same-outpost hairpin |
| 0.0.0.0/0 | NAT GW | Internet access |
Outpost B Route Table:
| Destination | Target | Purpose |
| 10.0.0.0/16 | local | VPC internal traffic |
| 198.19.9.0/24 (Outpost A CoIP) | lgw-B | Cross-outpost |
| 198.19.5.0/24 (Outpost B CoIP) | lgw-B | Same-outpost hairpin |
| 0.0.0.0/0 | NAT GW | Internet access |
Step 3: Create RDS instances with CoIP enabled
In this step, you create the Amazon RDS for PostgreSQL instances on each Outpost using the aws rds create-db-instance CLI command. CoIP provides local or external connectivity to resources in your Outpost subnets through your on-premises network. It provides lower latency for connections to the DB instance from outside of its VPC on your local network. When you create an Amazon RDS instance on an Outpost, you can enable CoIP to make sure the instance is reachable over your on-premises network through the Local Gateway rather than the Region.
The --enable-customer-owned-ip flag must be explicitly set. RDS doesn’t inherit the subnet’s MapCustomerOwnedIpOnLaunch setting.
Keep in mind that this property isn’t supported in AWS CloudFormation. Use the AWS Command Line Interface (AWS CLI), Terraform (customer_owned_ip_enabled = true), or the console (select Customer-owned IP address (CoIP) under Access type).
Create the publisher instance (Outpost A)
Create the subscriber instance (Outpost B)
Verify CoIP assignment
After the instances become available, verify that CoIP addresses have been assigned:
You should see output similar to:
Step 4: Configure security groups
Security groups must allow PostgreSQL traffic (port 5432) from both CoIP ranges and private subnet ranges:
Make sure egress rules allow all outbound traffic (default) or at minimum port 5432 to the CoIP ranges.
Step 5: Configure PostgreSQL logical replication
Enable logical replication on the publisher
The publisher requires the rds.logical_replication parameter set to 1, which requires a database reboot:
This automatically sets wal_level = logical, so PostgreSQL can capture the necessary change data for replication.
Create replication user and publication on the publisher
Connect to the publisher instance and execute:
Keep in mind that the replication user must have SELECT permission on all published tables. Without it, the initial table synchronization (COPY phase) hangs indefinitely in state ‘d’ (data copy).
Create matching schema and subscription on the subscriber
Connect to the subscriber instance and execute:
PostgreSQL 15+ on RDS defaults to rds.force_ssl = 1, which means the database rejects any non-SSL connection. When CoIP is enabled, RDS on Outposts automatically uses the CoIP address for all connections from both inside and outside of the VPC. Traffic routes through the Local Gateway even for same-outpost communication. PostgreSQL’s pg_hba.conf treats these CoIP-routed connections as non-local, and with rds.force_ssl = 1, the server requires SSL. If the CREATE SUBSCRIPTION connection string omits sslmode=require, the subscriber’s connection attempt is rejected with a no pg_hba.conf entry for host error. To avoid this, always include sslmode=require in the subscription connection string:
The subscription will automatically:
- Create a replication slot on the publisher.
- Perform an initial table sync (COPY of existing data).
- Begin streaming ongoing changes in real-time.
Step 6: Monitor and verify replication
To monitor replication and verify that logical replication is functioning correctly between the publisher and subscriber instance, PostgreSQL provides several system catalog views and statistics views to monitor replication health. On the publisher instance, we query pg_stat_replication to confirm active write-ahead log (WAL) sender connections and track replication progress through sent and written log sequence number (LSN) positions. We also query pg_replication_slots to verify that the logical replication slot is active and its WAL retention status is healthy. On the subscriber instance, we query pg_subscription to confirm the subscription is enabled and connected to the correct upstream database. We query pg_subscription_rel to verify the synchronization state of each replicated table.
Check replication status on the publisher
Check subscription status on the subscriber
Expected output after successful initial sync:
Test data replication
Troubleshooting common issues
Issue 1: RDS endpoint not reachable through CoIP
Symptom: TCP connection to CoIP address times out.
Diagnosis:
Check:
- Route table has both cross-outpost and same-outpost hairpin routes.
- Security groups allow port 5432 from CoIP ranges.
- CoIP is enabled on the RDS instance (
CustomerOwnedIpEnabled: true).
Issue 2: CoIP not assigned to RDS instance
Symptom: CustomerOwnedIpEnabled: false when describing the RDS instance.
Cause: RDS doesn’t inherit the subnet’s MapCustomerOwnedIpOnLaunch setting. Must be explicitly enabled.
Fix:
Issue 3: Initial sync stuck in state ‘d’
Symptom: pg_subscription_rel shows srsubstate = 'd' indefinitely.
Causes:
- Replication user lacks
SELECTpermission on published tables. - Table schema mismatch between publisher and subscriber.
- Network connectivity issue during COPY phase.
Fix:
Issue 4: “no pg_hba.conf entry for host” error
Symptom: Connection refused with pg_hba error when connecting from CoIP address.
Cause: rds.force_ssl = 1 (default in PostgreSQL 15+) requires SSL for connections from non-VPC addresses.
Fix: Make sure sslmode=require is included in the connection string:
Issue 5: Subscription pointing to wrong publication
Symptom: Subscription connected but no data replicating.
Fix: Drop and recreate subscription with correct publication name:
Data residency considerations
This architecture provides complete data residency by the following means:
- No regional backups: Automated backups to Amazon S3 in the Region are disabled. All data remains on the Outposts.
- On-premises replication: All replication traffic flows through Local Gateways and your on-premises network, never traversing the Region backbone.
- Local recovery: If an Outpost fails, you can promote the subscriber to become the new primary, maintaining business continuity without regional dependencies.
- Selective replication: With logical replication, you can exclude sensitive columns, such as protected health information (PHI) and personally identifiable information (PII), from replication by creating publications for specific columns or tables.
For customers who can accept local backups, RDS on Outposts supports local backup to S3 on Outposts for MySQL and PostgreSQL (not supported for Multi-AZ deployments or read replicas). This requires S3 on Outposts capacity.
Best practices and key takeaways
Throughout this implementation, we encountered several configuration details that are important for a successful deployment. The following best practices and key takeaways will help you avoid common pitfalls when setting up PostgreSQL logical replication between RDS instances on separate Outposts.
- CoIP must be explicitly enabled on RDS: It isn’t inherited from subnet settings. Always include
--enable-customer-owned-ipwhen creating RDS instances. - Both cross-outpost and hairpin routes are required: Without hairpin routes, same-subnet access to CoIP addresses fails because DNS resolves to CoIP instead of the private IP.
- Replication user needs
SELECTpermission: Required for the initial COPY phase. Without it, the subscription hangs in state ‘d’. - Table schemas must be identical: The subscriber table must exactly match the publisher table structure, including column names, types, and constraints.
- SSL is enforced by default: PostgreSQL 15+ defaults to
rds.force_ssl = 1. Usesslmode=requirefor external connections. - Use Terraform or the CLI for deployment: AWS CloudFormation doesn’t support the
EnableCustomerOwnedIpproperty. Use Terraform (customer_owned_ip_enabled = true) or the AWS CLI. - Monitor replication lag: Use the
pg_stat_replicationandpg_replication_slotsviews to monitor replication health and lag. - Plan for failover: Document procedures for promoting the subscriber to primary if Outpost A fails, including application connection string updates.
Comparison with Multi-AZ deployments
Multi-AZ deployments remain the recommended approach for high availability on Amazon RDS on AWS Outposts. They provide automatic failover with synchronous replication between a primary DB instance on one Outpost and a standby on a different Outpost. However, Multi-AZ requires two Outposts anchored to different Availability Zones, and local backups aren’t supported for Multi-AZ deployments. As AWS documentation notes, customers whose workloads must abide by data residency regulations should consult with regulators to determine whether Multi-AZ meets their requirements, because only Single-AZ instances support storing all automated backups and logs directly on the Outposts rack. This post presents an alternative approach that uses PostgreSQL logical replication between Outposts for organizations that need an additional layer of data resilience while keeping all data on-premises. It applies specifically where data residency requirements prevent the use of Regional backups and where the Multi-AZ infrastructure prerequisites (two Outposts across two Availability Zones) are not available. The two options have different characteristics:
| Feature | Logical Replication | Multi-AZ on Outposts |
| Data Residency | Complete (no regional backups) | Automated backups to Region S3 |
| Failover | Manual promotion | Automatic (1-2 minutes) |
| Replication Granularity | Table-level or column-level | Entire database instance |
| Cross-Region DR | Supported | Requires additional setup |
| Network Path | CoIP through Local Gateway | VPC internal (Multi-AZ) |
| Use Case | Strict data residency, selective replication | High availability with regional integration |
For organizations that can accept automated backups to the Region, Multi-AZ deployments offer simpler management and automatic failover. For those with absolute data residency requirements, logical replication with CoIP provides complete control over data locality.
Clean up
When you’re done testing, remove the replication resources to avoid unnecessary costs and WAL accumulation.
On the target, drop the subscription first:
On the source, drop the publication:
Drop the test tables on both source and target:
If you created dedicated Amazon RDS instances for this walkthrough, delete them through the AWS Management Console or CLI to stop incurring charges. If you modified an existing parameter group, consider reverting rds.logical_replication to 0 if you no longer need logical replication, and reboot the instance.
Conclusion
In this post, we showed you how to configure PostgreSQL logical replication between Amazon RDS for PostgreSQL instances on separate AWS Outposts. This approach gives organizations with strict data residency requirements a way to keep all data on-premises. By using Customer-owned IP addresses and Local Gateways, you can establish secure, low-latency replication that keeps all data within your on-premises environment.
This architecture is particularly valuable for:
- Healthcare providers managing PHI under the Health Insurance Portability and Accountability Act (HIPAA).
- Financial institutions with data sovereignty requirements.
- Government agencies with classified or sensitive data.
- Organizations in regulated industries where data must remain on-premises.
The configuration requires careful attention to networking details, particularly the hairpin routes and explicit CoIP enablement. After it’s established, it provides a foundation for disaster recovery and high availability without compromising data residency.
For more information about Amazon RDS on AWS Outposts, visit the RDS on Outposts documentation and the AWS Outposts High Availability Design whitepaper.
About the authors
Qualcomm Dragonwing Nabs a Big SpaceX Starlink Mobile Nationwide US 5G Network Win
Post Syndicated from Vic A original https://www.servethehome.com/qualcomm-dragonwing-nabs-a-big-spacex-starlink-mobile-nationwide-us-5g-network-win/
Qualcomm Dragonwing just landed a new US customer as part of the SpaceX Starlink mobile nationwide build-out
The post Qualcomm Dragonwing Nabs a Big SpaceX Starlink Mobile Nationwide US 5G Network Win appeared first on ServeTheHome.
Comic for 2026.11.04 – Millennia
Post Syndicated from Explosm.net original https://explosm.net/comics/millennia
New Cyanide and Happiness Comic
The Races That Turned Texas Blue
Post Syndicated from The Atlantic original https://www.youtube.com/shorts/t_llww95z1A
What’s New in Home Assistant 2026.11
Post Syndicated from Home Assistant original https://www.youtube.com/watch?v=g8Rek5MrsjM
How the Trump Administration Could Hinder Potential Congressional Probes
Post Syndicated from The Atlantic original https://www.youtube.com/shorts/PTMbX-1vACU
Plan and measure EC2 flexibility with Amazon EC2 Capacity Manager
Post Syndicated from Yagya Vir Singh original https://aws.amazon.com/blogs/compute/plan-and-measure-ec2-flexibility-with-amazon-ec2-capacity-manager/
Global enterprises that run thousands of workloads across hundreds of accounts often configure them to use multiple instance types and Availability Zones. This flexibility gives Amazon Elastic Compute Cloud (Amazon EC2) more options to fulfill each request. At that scale, you need to decide which instance types and Availability Zones to include, and have visibility into how well those choices are working.
To gain these insights, Amazon EC2 Capacity Manager offers real-time supportability checks and capacity fulfillment metrics. Supportability checks help you find capacity when you plan a workload by scoring how well each instance type and Availability Zone can support a request. They do this without launching or reserving instances. Capacity fulfillment metrics show whether you configured your launch requests to use multiple instance types and Availability Zones, their fulfillment rate, and where that capacity came from. They measure your actual launches, not the accuracy of a check. Together, they cover both sides of a scale up: deciding where to run, and measuring what was delivered.
Both capabilities are included with AWS Unified Operations, the AWS Support plan for global enterprises that run workloads at large scale. You can query data from all commercial AWS Regions using the Region in which you enabled EC2 Capacity Manager.
Figure 1: Supportability checks score options before you scale up. Fulfillment metrics measure how your actual launches were fulfilled.
This post follows the platform team at AnyCompany, a global enterprise that supports several large scale ups each year. Before each one, the team wants to know which instance types and Availability Zones will best support a workload. In this post, a combination means one instance type in one Availability Zone, such as r5.16xlarge in use1-az5. Capacity Manager measures capacity in vCPUs, and each step shows the AWS Management Console path and the AWS Command Line Interface (AWS CLI) command.
Before you begin
- Turn on Capacity Manager at the organization level (from the management account or a delegated administrator) or for a single account. Both capabilities work at either level. See Enabling EC2 Capacity Manager.
- Confirm your support plan. Your account must be covered by AWS Unified Operations.
- (Optional) To see metrics by workload, activate a workload tag as a monitored tag key. Some tags, including aws:eks:cluster-name and aws:autoscaling:groupName, are always available and need no activation. This post uses aws:eks:cluster-name. For more information, see Managing monitored tag keys.
Step 1: See whether your workloads are getting the capacity they need
Capacity fulfillment metrics start at the request level. A request that can use several combinations is fulfilled if any one of them delivers, so a high request fulfillment rate means flexibility is working. Capacity Manager tracks four request-level metrics.
| Metric | Console label | What it tells you |
| CapacityTotalRequestedVcpu | Requested (vCPUs) | Capacity requested. Retries within five minutes for the same configuration count once. |
| CapacityTotalFulfilledVcpu | Fulfilled (vCPUs) | Capacity delivered. |
| CapacityRequestFulfillmentRate | Request fulfillment rate | Fulfilled divided by requested, vCPU-weighted. |
| AvgInstAzCountPerRequestedVcpu | Instance Type x AZ count (avg) | Combinations each request is configured to use. A value above 1 means the request is flexible. |
These metrics break down by account, Region, and tag. To review them on the console, complete the following steps.
- Open the Fulfillment tab.
- Choose a date range and a metric set (On-Demand or Spot).
- Filter by a dimension, such as Region, account, or tag, to see one row for each value.
- Sort by Requested (vCPUs) to see your largest workloads first, or by request fulfillment rate to find the ones with the most room to improve.
Figure 2: The Fulfillment tab for an example account, filtered by the aws:eks:cluster-name tag. Each row shows one workload’s request fulfillment rate and Instance Type x AZ count.
At AnyCompany, the search-index workload requested 51,712 vCPUs and received 45,632, an 88.2 percent request fulfillment rate. Its requests could use an average of 21 combinations. Compare batch-etl, which can use only one combination and fulfills 72.8 percent. Step 2 shows where the search-index capacity came from and where it fell short.
To get the same data with the AWS CLI, call get-capacity-manager-metric-data. Spot metrics use a Spot prefix, such as SpotCapacityRequestFulfillmentRate.
Step 2: See where your flexibility is paying off
The breakdown measures each combination on its own, so per-combination rates are usually lower than the request rate, which includes the benefit of diversification.
Figure 3: The search-index request is 88.2 percent fulfilled, while each combination is measured on its own.
In Figure 3, the three search-index combinations in use1-az5 deliver 68.6–82.8 percent of what is asked. Outside use1-az5, r5.16xlarge delivers 98.5–100 percent in use1-az4 and use1-az6, and r6a.16xlarge delivers 100 percent in use1-az4. Because the request can use any of these combinations, the other zones cover part of what use1-az5 can’t. So those zones are worth keeping, and use1-az5 is where to add options or reserve capacity.
On the console, choose View breakdown on any row of the Fulfillment tab. The breakdown lists each combination, and you can sort by fulfillment rate, fulfilled vCPUs, or usage. It adds instance type, instance family, and Availability Zone to the dimensions from Step 1.
Figure 4: The breakdown for the search-index workload, with a Check supportability link on each row.
In Figure 4, search-index fulfills 88.2 percent of requested capacity, while its 28 combinations average 46.6 percent on their own. The difference is what flexibility adds: when some combinations come up short, others deliver. The three use1-az5 combinations delivered 26,880 vCPUs, more than half of the 45,632 total, so that zone has the most room to improve. The Check supportability link on each row opens a check for that combination.
Through the API, query InstAzFulfillmentRate. The request must include the availability-zone-id dimension and either instance-type or instance-family.
Step 3: Find where capacity is strongest before you scale up
Before a large scale up or migration, the platform team runs a supportability check. They provide the market type (On-Demand or Spot), the capacity amount, the Availability Zones, and the instance types to consider. The check returns a High, Medium, or Low score for each combination, plus an aggregate score for the set. The following example checks a scale up for search-index: 100 instances across its three Availability Zones, with its three current instance types and two candidates, r6i.16xlarge and r7i.16xlarge.
Instead of a list, you can also pass --instance-requirements-with-metadata, with the vCPU and memory ranges inside an InstanceRequirements object. Capacity Manager scores each matching instance type. For Spot, set the market type to spot.
The Supportability tab on the console runs the same check. Enter the amount, type, Availability Zones, and instance types or attributes, then choose Check supportability. One check can include up to 10 Availability Zones, from more than one Region, and up to 100 combinations. Figure 5 shows the search-index check on the console. The aggregate score is High, so together the set can support 100 instances. r5.16xlarge scores High in all three zones, and r7a.16xlarge scores High in use1-az6. r6a.16xlarge scores Medium in all three zones, and the new candidate r7i.16xlarge scores Medium in use1-az4 and use1-az6. The other six combinations, including every r6i.16xlarge combination, score Low.
Figure 5: A check for 100 instances of five instance types across the three search-index Availability Zones, with High aggregate confidence.
High means a combination holds more than enough to serve your request. Medium means it can cover the request with little to spare, and Low means it holds less than you asked for. For details, see What the scores mean and What to do based on your score in the Amazon Elastic Compute Cloud User Guide.
Scores are guidance, not commitments. If you need assurance capacity will be there when you launch, use Capacity Reservations or future-dated Capacity Reservations.
Run the check when you plan a workload, not on every launch. You call it in the Region where Capacity Manager is turned on, so per-launch calls would add a cross-Region dependency and use up the hourly quota.
Step 4: Add the flexibility to your fleet
After a check shows which combinations can support a workload, add them to your Auto Scaling group, Amazon EC2 Fleet, or Karpenter configuration. You configure flexibility once, and every later launch benefits from it.
Add flexibility
For an Auto Scaling group, a mixed instances policy lists instance types in priority order. This example keeps r5.16xlarge, r6a.16xlarge, and r7a.16xlarge, which each delivered 98.5–100 percent outside use1-az5 in Figure 4. It adds r7i.16xlarge, which the check in Figure 5 scored Medium in two zones, and leaves out r6i.16xlarge, which scored Low.
For workloads defined by vCPU and memory, attribute-based instance type selection draws on every type that fits. Afterward, watch AvgInstAzCountPerRequestedVcpu (the Instance Type x AZ count (avg) column) to confirm the change.
Reserve where you need certainty
In use1-az5, r5.16xlarge delivered 82.8 percent in Figure 4, even though the check in Figure 5 scores it High right now. If the team needs that type in that zone, it can reserve its steady-state baseline with an On-Demand Capacity Reservation and let the rest stay flexible.
AWS bills you for Capacity Reservations whether or not you use them, so size them to your baseline. If you create one to try this example, cancel it when you no longer need it. Use the reservation ID from the create-capacity-reservation output.
Canceling an active reservation that has no commitment duration, like this one, has no charge. Any instances running in it keep running at On-Demand rates.
Conclusion
Real-time supportability checks and capacity fulfillment metrics in Amazon EC2 Capacity Manager make flexibility visible. You can find the best instance types and Availability Zones before you scale up, see where flexibility is paying off, and know where to add more.
To make this routine, review fulfillment rates each week and open the breakdown for any workload below target. Add a supportability check to change management, so capacity is validated before a change that adds or scales a workload goes live.
To get started, open the Fulfillment tab on the AWS console under Capacity Manager. To learn more, go to EC2 Capacity Manager on AWS Console.
About the authors
Broadway’s The Lost Boys | Talks at Google
Post Syndicated from Talks at Google original https://www.youtube.com/watch?v=iENFIS18ipQ
[$] Plasma X11 session removal surprises some Fedora users
Post Syndicated from jzb original https://lwn.net/Articles/1105130/
The KDE Project announced, in 2025, that Plasma 6.7 would
be the last version of the desktop environment that would support X11
sessions. Those who keep up with KDE’s announcements no doubt expected it when
Plasma 6.8
dropped X11 support as promised. What seems to have come as a surprise, at
least to a number of Fedora KDE Plasma
Desktop users, is that the Fedora 44 release—which shipped in
April with Plasma 6.6—received
an update to Plasma 6.8 that swept away the X11 session without much warning.
Despite the surprise, it is gone for good: the Fedora Engineering Steering
Committee (FESCo) has voted
against a request to revert the update for Fedora 44 and the just-released
Fedora 45.
Can Democrats Hold Trump Accountable? | The David Frum Show
Post Syndicated from The Atlantic original https://www.youtube.com/watch?v=uU9sPFHoPYE
Home Assistant 2026.11 Is Here — HACS Becomes Marketplace!
Post Syndicated from BeardedTinker original https://www.youtube.com/watch?v=VSs94oqUXOE
Bazzite 45 released
Post Syndicated from jzb original https://lwn.net/Articles/1105395/
Version
45 of Bazzite, the image-based gaming distribution based on
Fedora Linux, has been released. Notable changes in this release include a
rebase to Fedora 45, updated Open Gaming Collective (OGC)
kernels, support for Logitech TrueWheel devices, and more.
LWN covered Bazzite in
December 2025.
[$] Portable Python scripts with dependencies
Post Syndicated from jake original https://lwn.net/Articles/1104646/
A basic Python script is portable: it can be copied between machines with little concern about compatibility.
A script that depends on third-party packages requires quite a bit more
care and consideration, however.
In 2023, PEP
723 (“Inline script metadata”) introduced a standard for declaring a Python script’s
dependencies inside the script itself.
Several third-party tools can now automatically install and manage those dependencies, but there is still little official support for this standard within Python itself.
