consul/website/pages/home/index.jsx

260 lines
9.8 KiB
React
Raw Normal View History

2020-04-24 18:52:30 +00:00
import CallToAction from '@hashicorp/react-call-to-action'
import UseCases from '@hashicorp/react-use-cases'
import BasicHero from '../../components/basic-hero'
import ConsulEnterpriseComparison from '../../components/consul-enterprise-comparison'
import LearnCallout from '../../components/learn-callout'
2020-04-24 21:46:02 +00:00
import CaseStudyCarousel from '../../components/case-study-carousel'
2020-05-01 20:35:26 +00:00
import ProductFeaturesList from '@hashicorp/react-product-features-list'
2020-04-24 18:52:30 +00:00
2020-04-06 20:27:35 +00:00
export default function HomePage() {
2020-04-24 18:52:30 +00:00
return (
<div className="p-home">
<BasicHero
brand="consul"
heading="Service Networking Across Any Cloud or Runtime"
2020-05-07 01:28:39 +00:00
content="Automate network configurations, discover services, and enable secure connectivity across any cloud or runtime."
2020-04-24 18:52:30 +00:00
links={[
{
2020-05-07 01:28:39 +00:00
text: 'Download',
url: '/downloads',
type: 'download',
2020-04-24 18:52:30 +00:00
},
{
2020-05-07 01:28:39 +00:00
text: 'Get Started',
url: 'https://learn.hashicorp.com/consul',
type: 'outbound',
2020-04-24 18:52:30 +00:00
},
]}
backgroundImage
/>
2020-05-01 20:35:26 +00:00
<ProductFeaturesList
2020-05-07 00:17:47 +00:00
heading="Why Consul?"
2020-05-01 20:35:26 +00:00
features={[
{
title: 'First Class Kubernetes Experience',
content:
'Consul provides a Helm chart for a Kubernetes first experience for Service Discovery and Service Mesh use cases.',
2020-05-07 00:17:47 +00:00
icon: require('./img/why-consul/kubernetes.svg'),
2020-05-01 20:35:26 +00:00
},
{
title: 'Service Mesh Across Runtime Platforms',
content:
2020-05-07 00:17:47 +00:00
'Establish a service mesh between Bare Metal, Virtual Machines, and Kubernetes clusters, across any cloud.',
icon: require('./img/why-consul/service-mesh-runtime.svg'),
2020-05-01 20:35:26 +00:00
},
{
2020-05-07 00:17:47 +00:00
title: 'Dynamic Load Balancing Configurations',
2020-05-01 20:35:26 +00:00
content:
2020-05-07 00:17:47 +00:00
'Use Consul to automate service updates to popular load balancers (F5, NGINX, HAProxy) and eliminate manual configuration.',
icon: require('./img/why-consul/dynamic-load-balancing.svg'),
2020-05-01 20:35:26 +00:00
},
{
2020-05-07 00:17:47 +00:00
title: 'Secure, Multi-Cloud Service Networking',
2020-05-01 20:35:26 +00:00
content:
'Secure any service running in any environment. Consul enables users to automate and secure service to service communication.',
2020-05-07 00:17:47 +00:00
icon: require('./img/why-consul/cloud.svg'),
2020-05-01 20:35:26 +00:00
},
{
2020-05-07 00:17:47 +00:00
title: 'Service Discovery with Health Checking',
2020-05-01 20:35:26 +00:00
content:
2020-05-07 00:17:47 +00:00
'Consul enables detecting the deployment of new services, changes to existing ones, and provides real time agent health to reduce downtime.',
icon: require('./img/why-consul/health.svg'),
2020-05-01 20:35:26 +00:00
},
{
2020-05-07 00:17:47 +00:00
title: 'Robust Ecosystem',
2020-05-01 20:35:26 +00:00
content:
2020-05-07 00:17:47 +00:00
'Consul offers support for and integrations with many popular DevOps and Networking tools.',
icon: require('./img/why-consul/world.svg'),
2020-05-01 20:35:26 +00:00
},
]}
/>
2020-04-24 21:46:02 +00:00
<CaseStudyCarousel
title="Trusted by startups and the worlds largest organizations"
caseStudies={[
{
quote:
'Kubernetes is the 800-pound gorilla of container orchestration, coming with a price tag. So we looked into alternatives - and fell in love with Nomad.',
caseStudyURL:
'https://endler.dev/2019/maybe-you-dont-need-kubernetes/',
person: {
firstName: 'Matthias',
lastName: 'Endler',
photo:
'https://www.datocms-assets.com/2885/1582163422-matthias-endler.png',
title: 'Backend Engineer',
},
company: {
name: 'Trivago',
logo:
'https://www.datocms-assets.com/2885/1582162145-trivago.svg',
},
},
{
quote:
'We have people who are first-time system administrators deploying applications. There is a guy on our team who worked in IT help desk for 8 years - just today he upgraded an entire cluster himself.',
caseStudyURL: 'https://www.hashicorp.com/case-studies/roblox/',
person: {
firstName: 'Rob',
lastName: 'Cameron',
photo:
'https://www.datocms-assets.com/2885/1582180216-rob-cameron.jpeg',
title: 'Technical Director of Infrastructure',
},
company: {
name: 'Roblox',
logo:
'https://www.datocms-assets.com/2885/1582180369-roblox-color.svg',
},
},
{
quote:
'Our customers jobs are changing constantly. Its challenging to dynamically predict demand, what types of jobs, and the resource requirements. We found that Nomad excelled in this area.',
caseStudyURL:
'https://www.hashicorp.com/resources/nomad-vault-circleci-security-scheduling',
person: {
firstName: 'Rob',
lastName: 'Zuber',
photo:
'https://www.datocms-assets.com/2885/1582180618-rob-zuber.jpeg',
title: 'CTO',
},
company: {
name: 'CircleCI',
logo:
'https://www.datocms-assets.com/2885/1582180745-circleci-logo.svg',
},
},
{
quote:
'Adopting Nomad did not require us to change our packaging format — we could continue to package Python in Docker and build binaries for the rest of our applications.',
caseStudyURL:
'https://medium.com/@copyconstruct/schedulers-kubernetes-and-nomad-b0f2e14a896',
person: {
firstName: 'Cindy',
lastName: 'Sridharan',
photo:
'https://www.datocms-assets.com/2885/1582181517-cindy-sridharan.png',
title: 'Engineer',
},
company: {
name: 'imgix',
logo: 'https://www.datocms-assets.com/2885/1582181250-imgix.svg',
},
},
]}
logoSection={{
grayBackground: true,
featuredLogos: [
{
companyName: 'Trivago',
url:
'https://www.datocms-assets.com/2885/1582162317-trivago-monochromatic.svg',
},
{
companyName: 'Roblox',
url:
'https://www.datocms-assets.com/2885/1582180373-roblox-monochrome.svg',
},
{
companyName: 'CircleCI',
url:
'https://www.datocms-assets.com/2885/1582180745-circleci-logo.svg',
},
],
}}
/>
2020-04-24 18:52:30 +00:00
<div className="use-cases g-grid-container">
2020-05-07 01:49:38 +00:00
<h2 className="g-type-display-2">Use Cases</h2>
2020-04-24 18:52:30 +00:00
<UseCases
items={[
{
2020-05-07 01:49:38 +00:00
title: 'Network Middleware Automation',
2020-04-24 18:52:30 +00:00
description:
2020-05-07 01:49:38 +00:00
'Reduce burden of manual, ticket-based networking tasks.',
2020-04-24 18:52:30 +00:00
image: {
2020-05-07 01:49:38 +00:00
url: require('./img/use-cases/network-middleware-automation.png?url'),
format: 'png',
2020-04-24 18:52:30 +00:00
},
link: {
title: 'Learn more',
2020-05-07 01:49:38 +00:00
url: '/use-cases/network-middleware-automation',
2020-04-24 18:52:30 +00:00
},
},
{
2020-05-07 01:49:38 +00:00
title: 'Multi-Platform Service Mesh',
2020-04-24 18:52:30 +00:00
description:
2020-05-07 01:49:38 +00:00
'Secure, modern application networking across any cloud or runtime.',
2020-04-24 18:52:30 +00:00
image: {
2020-05-07 01:49:38 +00:00
url: require('./img/use-cases/multi-platform-service-mesh.png?url'),
format: 'png',
2020-04-24 18:52:30 +00:00
},
link: {
title: 'Learn more',
2020-05-07 01:49:38 +00:00
url: '/use-cases/multi-platform-service-mesh',
2020-04-24 18:52:30 +00:00
},
},
{
2020-05-07 01:49:38 +00:00
title: 'Service Discovery & Health Checks',
2020-04-24 18:52:30 +00:00
description:
2020-05-07 01:49:38 +00:00
'Enable services to locate other services running in any environment and provide real-time health status.',
2020-04-24 18:52:30 +00:00
image: {
2020-05-07 01:49:38 +00:00
url: require('./img/use-cases/service-discovery-and-health-checks.png?url'),
format: 'png',
2020-04-24 18:52:30 +00:00
},
link: {
title: 'Learn more',
2020-05-07 01:49:38 +00:00
url: '/use-cases/service-discovery-and-health-checks',
2020-04-24 18:52:30 +00:00
},
},
]}
/>
</div>
2020-05-01 17:01:50 +00:00
2020-04-24 18:52:30 +00:00
<LearnCallout
headline="Learn the latest Consul skills"
brand="consul"
items={[
{
title: 'Getting Started',
category: 'Step-by-Step Guides',
time: '48 mins',
2020-04-24 18:52:30 +00:00
link:
'https://learn.hashicorp.com/consul?track=getting-started#getting-started',
image: require('./img/learn/getting-started.svg?url'),
2020-04-24 18:52:30 +00:00
},
{
title: 'Run Consul on Kubernetes',
2020-04-24 18:52:30 +00:00
category: 'Step-by-Step Guides',
time: '142 mins',
2020-04-24 18:52:30 +00:00
link:
'https://learn.hashicorp.com/consul?track=kubernetes#kubernetes',
image: require('./img/learn/getting-started.svg?url'),
2020-04-24 18:52:30 +00:00
},
]}
/>
<ConsulEnterpriseComparison />
2020-04-24 18:52:30 +00:00
<CallToAction
heading="Ready to get started?"
2020-05-07 01:30:26 +00:00
content="Consul open source addresses the technical complexity of managing production services by providing a way to discover, automate, secure and connect applications and networking configurations across distributed infrastructure and clouds."
2020-04-24 18:52:30 +00:00
brand="consul"
links={[
{
text: 'Explore HashiCorp Learn',
url: 'https://learn.hashicorp.com/consul',
type: 'outbound',
},
{
text: 'Explore Documentation',
url: '/docs',
type: 'inbound',
},
]}
variant="compact"
theme="light"
/>
</div>
)
2020-04-06 20:27:35 +00:00
}