github.com/uchennaokeke444/nomad@v0.11.8/website/pages/use-cases/simple-container-orchestration.jsx (about)

     1  import UseCasesLayout from '../../layouts/use-cases'
     2  import TextSplitWithCode from '@hashicorp/react-text-split-with-code'
     3  import TextSplitWithImage from '@hashicorp/react-text-split-with-image'
     4  import FeaturedSliderSection from '../../components/featured-slider-section'
     5  
     6  export default function SimpleContainerOrchestrationPage() {
     7    return (
     8      <UseCasesLayout
     9        title="Simple Container Orchestration"
    10        description="Nomad runs as a single binary with a small resource footprint. Developers use a declarative job specification to define how an application should be deployed.  Nomad handles deployment and automatically recovers applications from failures."
    11      >
    12        <TextSplitWithCode
    13          textSplit={{
    14            heading: 'Container Orchestration',
    15            textSide: 'right',
    16            content:
    17              'Deploy, manage, and scale your containers with the Docker, Podman, or Singularity task driver.',
    18            links: [
    19              {
    20                text: 'Read More',
    21                url: 'https://learn.hashicorp.com/nomad?track=managing-jobs#managing-jobs',
    22                type: 'outbound'
    23              }
    24            ]
    25          }}
    26          codeBlock={{
    27            code: `task "webservice" {
    28    driver = "docker"
    29  
    30    config {
    31      image = "redis:3.2"
    32      labels {
    33        group = "webservice-cache"
    34      }
    35    }
    36  }`,
    37            language: 'hcl'
    38          }}
    39        />
    40  
    41        <TextSplitWithImage
    42          textSplit={{
    43            heading: 'Run on-premise with ease',
    44            textSide: 'left',
    45            content:
    46              'Install and run Nomad easily on bare metal as a single binary and with the same ease as on cloud.'
    47          }}
    48          image={{
    49            url: require('./img/on-prem-with-ease.svg'),
    50            alt: ''
    51          }}
    52        />
    53  
    54        <TextSplitWithCode
    55          textSplit={{
    56            heading: 'Windows Support',
    57            textSide: 'right',
    58            content:
    59              'Deploy Windows containers and processes or run Nomad as a native Windows service with Service Control Manager and NSSM.',
    60            links: [
    61              {
    62                text: 'Watch Jet.com use case',
    63                url:
    64                  'https://www.hashicorp.com/resources/running-windows-microservices-on-nomad-at-jet-com',
    65                type: 'outbound'
    66              }
    67            ]
    68          }}
    69          codeBlock={{
    70            code: `sc.exe start "Nomad"
    71  
    72  SERVICE_NAME: Nomad
    73        TYPE               : 10  WIN32_OWN_PROCESS
    74        STATE              : 4  RUNNING
    75                                (STOPPABLE, NOT_PAUSABLE, ACCEPTS_SHUTDOWN)
    76        WIN32_EXIT_CODE    : 0  (0x0)
    77        SERVICE_EXIT_CODE  : 0  (0x0)
    78        CHECKPOINT         : 0x0
    79        WAIT_HINT          : 0x0
    80        PID                : 8008
    81        FLAGS              :`
    82          }}
    83        />
    84  
    85        <TextSplitWithCode
    86          textSplit={{
    87            heading: 'Multi-Region Federation',
    88            content:
    89              'Federate Nomad clusters across regions with a single CLI command to deploy applications globally.',
    90            textSide: 'left',
    91            links: [
    92              {
    93                text: 'Read more',
    94                url: 'https://learn.hashicorp.com/nomad/operating-nomad/federation',
    95                type: 'outbound'
    96              }
    97            ]
    98          }}
    99          codeBlock={{
   100            code: 'nomad server join 1.2.3.4:4648',
   101            prefix: 'dollar'
   102          }}
   103        />
   104  
   105        <div className="with-border">
   106          <TextSplitWithImage
   107            textSplit={{
   108              heading: 'Edge Deployment with Simple Topology',
   109              content:
   110                'Deploy Nomad with a simple cluster topology on hybrid infrastructure to place workloads to the cloud or at the edge.',
   111              textSide: 'right'
   112            }}
   113            image={{
   114              url: require('./img/edge-deployment.svg'),
   115              alt: ''
   116            }}
   117          />
   118        </div>
   119  
   120        <TextSplitWithImage
   121          textSplit={{
   122            heading: 'Zero Downtime Deployments',
   123            content:
   124              'Achieve zero downtime deployments for applications through rolling updates, blue/green, or canary deployment strategies.',
   125            textSide: 'left',
   126            links: [
   127              {
   128                text: 'Read more',
   129                url: 'https://learn.hashicorp.com/nomad/update-strategies',
   130                type: 'outbound'
   131              }
   132            ]
   133          }}
   134          image={{
   135            url: require('./img/zero-downtime-deployments.png'),
   136            alt: 'Zero Downtime Deployments'
   137          }}
   138        />
   139  
   140        <div className="with-border">
   141          <TextSplitWithImage
   142            textSplit={{
   143              heading: 'High Performance Batch Workloads',
   144              content:
   145                'Run batch jobs with proven scalability of thousands of deployments per second via the batch scheduler.',
   146              textSide: 'right',
   147              links: [
   148                {
   149                  text: 'Watch tech presentation from Citadel',
   150                  url:
   151                    'https://www.hashicorp.com/resources/end-to-end-production-nomad-citadel',
   152                  type: 'outbound'
   153                }
   154              ]
   155            }}
   156            image={{
   157              url: require('./img/high-performance-batch-workloads.png'),
   158              alt: ''
   159            }}
   160          />
   161        </div>
   162  
   163        <TextSplitWithImage
   164          textSplit={{
   165            heading: 'Run Specialized Hardware with Device Plugins',
   166            content:
   167              'Run GPU and other specialized workloads using Nomad’s device plugins.',
   168            textSide: 'left',
   169            links: [
   170              {
   171                text: 'Read more',
   172                url: '/docs/devices',
   173                type: 'inbound'
   174              }
   175            ]
   176          }}
   177          image={{
   178            url: require('./img/specialized-hardware.png'),
   179            alt: 'Specialized Hardware'
   180          }}
   181        />
   182  
   183        <TextSplitWithImage
   184          textSplit={{
   185            heading: 'Run stateful workloads',
   186            content:
   187              'Natively connect and run stateful services with storage volumes from third-party providers via the Container Storage Interface plugin system.',
   188            textSide: 'right'
   189          }}
   190          image={{
   191            url: require('./img/csi.svg'),
   192            alt: 'Stateful Workloads'
   193          }}
   194        />
   195  
   196        <FeaturedSliderSection
   197          heading="Case Studies"
   198          features={[
   199            {
   200              logo: {
   201                url:
   202                  'https://www.datocms-assets.com/2885/1582097215-roblox-white.svg',
   203                alt: 'Roblox'
   204              },
   205              image: {
   206                url:
   207                  'https://www.datocms-assets.com/2885/1582096961-roblox-case-study.jpg',
   208                alt: 'Roblox Nomad Case Study'
   209              },
   210              heading: 'Roblox',
   211              content:
   212                'Scale a global gaming platform easily and reliably with Nomad to serve 100 million monthly active users',
   213              link: {
   214                text: 'Read Case Study',
   215                url: 'https://www.hashicorp.com/case-studies/roblox',
   216                type: 'outbound'
   217              }
   218            },
   219            {
   220              logo: {
   221                url:
   222                  'https://www.datocms-assets.com/2885/1529339316-logocitadelwhite-knockout.svg',
   223                alt: 'Citadel'
   224              },
   225              image: {
   226                url:
   227                  'https://www.datocms-assets.com/2885/1509052483-hashiconf2017-end-to-end-production-nomad-at-citadel.jpg',
   228                alt: 'Citadel Presentation'
   229              },
   230              heading: 'Citadel',
   231              content:
   232                'Optimize the cost efficiency of batch processing at scale with a hybrid, multi-cloud deployment with Nomad',
   233              link: {
   234                text: 'Learn More',
   235                url:
   236                  'https://www.hashicorp.com/resources/end-to-end-production-nomad-citadel',
   237                type: 'outbound'
   238              }
   239            },
   240            {
   241              logo: {
   242                url:
   243                  'https://www.datocms-assets.com/2885/1522341147-jet-white.svg',
   244                alt: 'Jet'
   245              },
   246              image: {
   247                url:
   248                  'https://www.datocms-assets.com/2885/1523635589-mohitarora.jpg',
   249                alt: 'Jet Presentation'
   250              },
   251              heading: 'Jet.com',
   252              content: 'Running Windows Microservices on Nomad',
   253              link: {
   254                text: 'Learn More',
   255                url:
   256                  'https://www.hashicorp.com/resources/running-windows-microservices-on-nomad-at-jet-com',
   257                type: 'outbound'
   258              }
   259            }
   260          ]}
   261        />
   262      </UseCasesLayout>
   263    )
   264  }