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 world’ s 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. It’ s 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' ,
2020-05-07 01:56:54 +00:00
time : '48 mins' ,
2020-04-24 18:52:30 +00:00
link :
2020-05-07 01:56:54 +00:00
'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
} ,
{
2020-05-07 01:56:54 +00:00
title : 'Run Consul on Kubernetes' ,
2020-04-24 18:52:30 +00:00
category : 'Step-by-Step Guides' ,
2020-05-07 01:56:54 +00:00
time : '142 mins' ,
2020-04-24 18:52:30 +00:00
link :
2020-05-07 01:56:54 +00:00
'https://learn.hashicorp.com/consul?track=kubernetes#kubernetes' ,
image : require ( './img/learn/getting-started.svg?url' ) ,
2020-04-24 18:52:30 +00:00
} ,
] }
/ >
2020-05-07 00:50:26 +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
}