Wedge 100: meer open en veelzijdig dan ooit-Facebook Engineering

bij Facebook leggen we de nadruk op het bouwen van onze datacenters met volledig open en gedesaggregeerde hardware die is ontworpen door onze engineers en open-source is via het Open Compute Project (OCP). Door onze stack uit te splitsen, kunnen we hardware of software vervangen zodra betere technologie beschikbaar komt. Deze aanpak heeft indrukwekkende prestatieverbeteringen mogelijk gemaakt in de lagen compute, storage en networking.

naarmate de vraag naar onze datacenters blijft toenemen, zoeken we voortdurend naar manieren om efficiënter en met steeds hogere snelheden om te gaan met data. Onze strategie is om 100G datacenters te bouwen, en Wedge 100, onze tweede generatie top-of-rack netwerk switch, is een van de belangrijkste componenten die ons helpen dat doel te bereiken.

vandaag zijn we verheugd om aan te kondigen dat Wedge 100 specificatie is geaccepteerd in OCP. De industrie heeft er al een robuust software-ecosysteem omheen gebouwd, en we hopen dat deze toevoeging aan de Gemeenschap het tempo van innovatie zal versnellen en anderen in staat zal stellen om ook 100G naar hun datacenters te brengen.

in deze blogpost schetsen we het huidige hardware-en software-ecosysteem en delen we enkele van onze ervaringen met behulp van Wedge 100 in productie.

Wedge 100 bij Facebook

bij Facebook gebruiken we Wedge 100 in onze productieomgevingen en blijven we deze op schaal inzetten in onze datacenters. Het is een onderdeel van onze 100g datacenter-netwerkstrategie, terwijl we ook achterwaartse compatibiliteit met bestaande 40G-apparaten kunnen behouden. Aan de software kant blijven we FBOSS en OpenBMC gebruiken, onze eigen networking stack en plint management implementaties, die ons de flexibiliteit geeft om snel te herhalen en nieuwe functies en innovaties in ons netwerk te introduceren.

Het creëren van Wedge 100 was een complexe onderneming, maar we waren in staat om met vertrouwen te herhalen op de hardware en software vanwege onze lessen uit het maken en implementeren van Wedge 40. We hebben veel van dezelfde hardwarecomponenten hergebruikt en belangrijke wijzigingen aangebracht om pijnpunten aan te pakken die we voelden met Wedge 40. Op Wedge 100 draaien we ook dezelfde fboss-software als Wedge 40, maar we hebben het uitgebreid om het nieuwe platform te ondersteunen met 100g ASIC-chips en optica.

Hardware updates

we bouwden Wedge 100 met een COM-Express type 6 module in de compacte vormfactor (95mm x 95mm) als de microserver; dit voorspelt goed voor 100g en hogere snelheid switch platforms. Wedge 100 ondersteunt ook COM-Express module form factor (95mm x 125mm), die zorgt voor een flexibel ontwerp in het geval dat meer geavanceerde CPU ‘ s nodig zijn voor speciale toepassingen.

Serviceability is een belangrijk aandachtspunt voor ons op Facebook. We hebben duizenden wig-switches geïmplementeerd en slechts een paar datacenter technici, wat betekent dat we een switch snel en moeiteloos moeten kunnen onderhouden en repareren, zonder tools. We hebben belangrijke verbeteringen aangebracht aan de bruikbaarheid van de schakelaar met wig 100. De bovenafdekking kan nu zonder gereedschap worden verwijderd, waardoor onze datacentertechnici gemakkelijk toegang hebben tot de interne schakelingen. De hot-pluggable ventilator trays kunnen nu worden verwijderd door te drukken op een clip versus door het verwijderen van een duimschroef. Bovendien kunnen de technici van het datacenter de status van de ventilatorlade eenvoudig bekijken via een statusledaar naast elke ventilatorlade. De combinatie van deze zorgt voor zeer snelle debug en in het veld vervanging indien nodig.

voor de uplinks van Wedge 100 in Facebook ‘ s datacenters gebruiken we optiek met een kleine temperatuurlimiet van 55 C, in tegenstelling tot het standaard 70 C commerciële temperatuurbereik. Wij zetten veel inspanning in het thermische ontwerp van het systeem, met inbegrip van de toevoeging van één meer ventilatorlade, luchtschotten om de luchtpaden tussen PSU en de hoofdschakelraad te scheiden, en het voorpaneel openingsontwerp om de luchtstroom te maximaliseren.

Het wig 100-chassis is ontworpen voor een 19″ – rack, zodat het gemakkelijk kan worden overgenomen door de netwerkgemeenschap. Onze datacenters gebruiken echter Open Racks en we willen ook wig 100 aandrijven met behulp van de zeer efficiënte, Titanium-gecertificeerde Open Rack V2-voedingseenheden via de 12V-Busbar aan de achterzijde van het rack. Dus we ontwierpen een 21 “Open Rack adapter tray die helpt monteren wig 100 in zo’ n rack. We ontwierpen ook een PSU-doorgangsmodule die de 12V-busbalk verbindt met de 12V-ingang van wig 100 Hoofdschakelbord. Het is in dezelfde vormfactor als de standaard AC / DC PSU, en bevat een 12V hot swap controller.

hier vindt u de ontwerpspecificaties voor Wedge 100.

Wedge100 Open Rack V2 Adapter

Software-updates

onze software stack voor Wedge100 is bijna identiek aan de stack voor Wedge 40. We draaien dezelfde fboss switching en routing daemons, en we gebruiken dezelfde set tools om de switches in productie te beheren. Er is altijd werk dat moet worden gedaan om een nieuw platform te ondersteunen, maar een van de leidende principes voor FBOSS is het bouwen van de minimale feature set die we nodig hebben voor onze omgeving. Dit stelt ons in staat om onze code lean te houden en eenvoudig aan te passen aan nieuwe omgevingen en platforms, in plaats van vanaf nul te beginnen of parallelle codebasissen te beheren. Het verkrijgen van de set van protocollen die we ondersteunen — NDP, DHCP, ARP, LLDP, ECMP, ICMP — en de functies die we nodig hebben om te werken — warm boot — werken aan Wedge100 was meer een iteratieve oefening omdat we ervaring hadden met Wedge 40 in productie. Dit stelde ons in staat om de grond te raken die op het Wedge100-project draait en het te gebruiken als een kans om onze fboss-softwarestack te verharden.

omdat we al bijna twee jaar wig 40 ‘ s in productie beheren en de infrastructuur hadden, zijn we bijna onmiddellijk begonnen met het testen van Wig100 in een productieomgeving. Draaiende schakelaars die het productieverkeer bedienen, geven ons het beste signaal voor veranderingen die we moeten aanbrengen. Het blijkt dat we onze grootste uitdaging vonden aan de operationele kant — met name de configuratie, provisioning en het beheren van Wedge 40 en Wedge 100 parallel in ons netwerk. Bij Facebook schrijft het fboss-team zowel de software die packet forwarding uitvoert als de tools die we gebruiken om de switches operationeel te beheren. Hierdoor hadden we een positieve feedback loop en, uiteindelijk, lessen geleerd in de productie geïnformeerd software — en zelfs hardware — beslissingen. Op deze manier konden we ons concentreren op de functies die we eigenlijk nodig hadden en kregen we wig 100-schakelaars die het productieverkeer zeer snel doorstuurden.

een andere uitdaging bij het bouwen van wig 100 was het flexibeler maken van ons softwareplatform. Toen we wig 40 implementeerden, profiteerden we van het feit dat de set configuraties die we nodig hadden om te ondersteunen vrij beperkt waren, en we konden ze gemakkelijk ondersteunen. Met wig 100 was dit niet het geval. We wilden een wig 100 laten vallen op elke locatie in ons netwerk die een wig 40 had. Downlink snelheden en kabeltypen kunnen variëren. Uplink snelheden kunnen variëren tussen oude en nieuwe clusters. De juiste configuratie is vooral belangrijk voor 100g-koppelingen omdat ze een veel kleinere optische vermogensmarge hebben en meer uitdagingen kunnen opleveren bij het instellen van de koppeling en het optimaliseren van de prestaties, waardoor een veel zorgvuldiger configuratie nodig is dan 40G deed. Het ondersteunen van deze nieuwe omgevingen vereiste veranderingen van de fysieke laag tot aan onze monitoring stack. We hebben onze ondersteuning van de SFF-spec uitgebreid om CWDM4-optica met verschillende snelheden te kunnen bedienen door de power class, CDR, rate-select, FEC, pre-emphasis en andere dynamisch te wijzigen om deze verschillende instellingen te ondersteunen. We hebben ook veel van onze configuratie-en provisioningworkflows herwerkt om al deze mogelijkheden te kunnen ondersteunen.

ten slotte maakt het bezit van onze eigen software stack het veel sneller repareren van bugs of het toevoegen van functionaliteit aan deze apparaten voor Facebook. We zagen bijvoorbeeld dat 100g optica hogere bedrijfstemperaturen bereiken, dus veranderden we de ventilatorbesturingslogica op onze bestuursmanagementcontroller, OpenBMC, om een beter thermisch profiel te bereiken wanneer deze modules aanwezig zijn. Andere keren kwamen we kernel panics tegen op de microserver. Omdat we een engineeringteam hebben dat onze eigen kernel releases beheert, kunnen we hun expertise gebruiken om de problemen te debuggen. Het bezitten van de hele stack stelt ons ook in staat om andere interessante dingen te doen, zoals het vereenvoudigen van de procedures voor het onderhoud van apparaten door de Betekenis van frontpaneel LED ‘ s op deze schakelaars te wijzigen, op basis van feedback die we krijgen van het datacenter operations team.

de fboss-code is allemaal open source en beschikbaar op GitHub. We hebben onze software vorig jaar opensourced en zijn sindsdien overgestapt op een continue release cyclus, waardoor interne diffs automatisch naar GitHub worden gepusht. Als u meer wilt weten over waar we aan werken, kijk dan op de code.

hardware-en software-ecosysteem

de wig 100-switch is nu beschikbaar als een commercieel product van Edgecore Networks en zijn channelpartners wereldwijd. De Wedge 100-32X van Edgecore voldoet volledig aan de Wedge 100 OCP-specificatie en wordt geproduceerd door het moederbedrijf van Edgecore, Accton Technology, dat ook de Wedge 100 produceert voor onze netwerkimplementatie. De wig 100-32X-hardwareschakelaar omvat een garantie van drie jaar en wordt geleverd met diagnostiek, OpenBMC-firmware en de open netwerkinstallatie milieu universele NOS-Lader.

we hebben ook grote interesse gezien van Leveranciers van transceivers om hun modules op het platform te kwalificeren. Om aan deze vraag te voldoen, werken we samen met het University of New Hampshire InterOperability Laboratory (UNH-IOL), zodat alle modules professioneel kunnen worden getest op hun faciliteiten. De UNH-IOL blijft een leider in het leveren van neutrale, breed gebaseerde testen en normen conformance diensten voor de netwerkindustrie.

aan de softwarezijde bouwen meerdere bedrijven hun oplossingen op het Wedge 100-platform. Op de laag van het besturingssysteem hebben we grote Schakelnetwerken en Canonical; en op de bovenste delen van de stack hebben we SnapRoute, FRINX en Apstra.

  • Big Switch Networks blijft Open Network Linux (ONL) aansturen, het eerste open-source netwerkbesturingssysteem dat de oorspronkelijke Wedge 40 ondersteunt, en nu Wedge 100; Facebook ‘ s FBOSS is nu ook beschikbaar op de top van ONL op Wedge 40 en binnenkort Wedge 100. ONL maakt deel uit van het Open Compute Project en ondersteunt 30+ verschillende OCP en niet-OCP open netwerk switches. Ze gebruiken ook intern ONL als basis voor hun commerciële producten Big Monitoring Fabric en Big Cloud Fabric.
  • Canonical brengt Ubuntu Core, hun nieuwe besturingssysteem voor cloud-en IoT-apparaten, naar het Wedge 100-platform. Ubuntu Core kan een aantal verschillende netwerkstacks zoals FBOSS of SnapRoute als snaps draaien en bare-metal provisioning inschakelen voor grote software zoals OpenStack, Hadoop en Kubernetes op de rekenlaag van het datacenter vanaf de top-of-rack-schakelaar.SnapRoute kondigde de beschikbaarheid aan van FlexSwitch-software bovenop het Wedge 100-platform. FlexSwitch is een open source L2 / L3 netwerk stack die kan worden uitgevoerd over meerdere hardware platforms. Het doel is om de economie van de werking van het netwerk te veranderen door het verstrekken van een volledig aanpasbaar en programmeerbaar besturingsvlak en het aanbieden van een uitgebreid kader voor lifecycle automatisering en netwerkanalyse te doen. Het is gebouwd rond de concepten van volledige modulariteit, het bevorderen van het idee van het uitvoeren van alleen de set van functionaliteit die het netwerk vereist, in tegenstelling tot de traditionele one size fits all aanpak.
  • FRINX is gericht op de integratie van OpenDaylight, een open source Sdn-platform, op wig 100. Ze werken aan de creatie van een ondersteunde out-of-the-box oplossing voor datacenterimplementaties, volledig gebaseerd op open source componenten.
  • Apstra werkt op een bovenste laag met het Apstra-besturingssysteem (aos), een leveranciersagnostisch gedistribueerd besturingssysteem dat gebruikersintenties kan vertalen naar een continu gevalideerde infrastructuur. Ze werken aan een oplossing die stacks kan beheren op basis van ONL en Snaproute en andere netwerkbesturingssystemen, beschikbaar in het begin van 2017.

we zijn blij met zo ‘ n complete en diverse set van technologieën in de open netwerk hardware ruimte, en we zullen blijven werken met andere bedrijven op wig 100. Begin volgend jaar zijn we van plan om deze netwerksoftware en hardwareoplossingen van de OCP-gemeenschap te presenteren, inclusief die op Wedge 100, en we zullen onze ervaringen blijven delen met gedesaggregeerde netwerken. Blijf kijken!

dank aan alle teams en mensen die aan dit project hebben bijgedragen.

You might also like

Geef een antwoord

Het e-mailadres wordt niet gepubliceerd.