SlideShare ist ein Scribd-Unternehmen logo
1 von 38
Downloaden Sie, um offline zu lesen
DANI TRAPHAGEN
DEPLOY LIKE A BOSS: USING
APACHE® IGNITETM AND
KUBERNETES®

AGENDA
• Setting up a Apache Ignite cluster
• Using the Kubernetes IP Finder and the Kubernetes Ignite Lookup
Service
• Sharing the Ignite Cluster Configuration
• Deploying your Ignite Pods
• Adjusting the Ignite Cluster Size when you need to Scale
• How to try it out with Azure!
SOYOU WANNA BE A BOSS?
FIRST - APACHE IGNITE’S PLATFORM
APACHE	IGNITE	PLATFORM	(VERSION	2.1+	DEPICTED)

KUBERNETES	WORKS	WITH	VERSIONS	1.9	AND	ABOVE	

Apache Ignite
Cluster
APIs to interact
with your data
Deployment
options
What it is:
APACHE IGNITE FEATURES
Ignite Persistence
ACID Compliance
Complete SQL Support
Key-Value Store/APIs
Collocated Processing
Scalability and Durability
SECOND – DEPLOYMENT WITH KUBERNETES (K8)
What it isn’t:
KUBERNETES IN A SIMPLE DEFINITION
“Kubernetes intends to radically
simplify the task of building,
deploying and maintaining
distributed systems.”
Kubernetes: Up and Running: Dive
into the Future of Infrastructure
By: Kelsey Hightower 
What it is:
K8 FEATURES
Automatic Binpacking
Horizontal Scaling
Automated Rollouts and Rollbacks
Storage Orchestration
Self-Healing
Service Discovery and Load Balancing
Secret and Configuration Management
Batch Execution
APACHE IGNITE + K8 CLUSTER ARCHITECTURE
Master…n
https://kubernetes.io/docs/admin/high-availability/
BENEFITS OF K8 (VERSION 1.7) 
Cost Efficiency
Use of containers by multiple developers ensures shared
resourcing rather than redundancy
High Availability and Performance
Self-healing: Deploying with K8 and setting rules for a set
number of nodes, will ensure your cluster can always handle the
transactions hitting it
No more pager duty
Get home to your pet chinchilla sooner 
kubernetes-sf
dani
yer old
nodes
SETTING UP AN APACHE IGNITE CLUSTER

Step 1:
What is your use case?
Seriously, what is your use case?
I’m not kidding. Use case, then set
up…
Cart before horse please.
SETTING UP AN APACHE IGNITE CLUSTER

1. Download Apache Ignite
2. Make sure to add the ignite-
kubernetes Maven Dependency to your
pom.xml
3.Try using examples from our docs.
SETTING UP K8 ON A LOCAL MACHINE
Install K8 where you intend
AWS
Google Cloud
Dev Machine
Set your $PATH w/K8
Install Kubectl
Follow K8 Docs
It’s not a toomah.
KUBERNETES DISCOVERY
Multicast = ☹
Use Static IP Finder & list Ignite IPs, K8 will
dynamically assign them for on premise
You can use other cloud Ignite IP finders
but you need K8 to running in the cloud
env.
What’s the point of the
TcpDiscoveryKubernetesIpFinder?
USINGTHE KUBERNETES IP FINDER ANDTHE KUBERNETES IGNITE LOOKUP
SERVICE

Apps & nodes running outside of K8 & Ignite will not be able to reach the cluster 
K8 service should be deployed before Ignite cluster boot
The Ignite Pods internal IPs will be maintained by the K8 service.
Service name must be equal to setServiceName(String)
This will be `ignite` as a default
https://ignite.apache.org/releases/latest/javadoc/org/
apache/ignite/spi/discovery/tcp/ipfinder/kubernetes/
TcpDiscoveryKubernetesIpFinder.html
USING DOCKER ON LOCAL MACHINE WITH MINIKUBE
SHARINGTHE IGNITE CLUSTER CONFIGURATION

SERVICE STARTUP & SHARING CONFIGS
Minikube - Two basic commands
minikube start
minikube dashboard
Kubectl
kubectl create -f ~/<path-to-project>/<project-name>/
config/ignite-service.yaml
NOW KUBERNETES IS RUNNING!
CONFIGURINGYOUR IGNITE PODS

2Things Needed!
1.Apache Ignite Configuration File with the Kubernetes
IP Finder
2.YAML Configurations for the Apache Ignite pods/nodes
Steps:
Create your ignite-service.yaml
kubectl create -f ignite-service.yaml
kubectl get svc ignite



SHARING IGNITE CLUSTER CONFIGS
Confirm the ignite service
was created
Make a path to the
persistence volume docker
will use to pass the
kubernetes config
‘example-kube.xml’
SUCCESS
Now, do this for the 
ignite-volume-claim.yaml
PERSISTENTVOLUME BOUND?
Make sure your
persistent volume is
bound to the claim
kubectl get pvc ignite-
volume-claim
kubectl get pv ignite
volume
use xhyve driver so you can access persistent volumes
minikube start --vm-driver=xhyve
& modify the directory path "/data/ignite" that is used in
the examples to "/Users/<username>/data/ignite"
DEPLOYINGYOUR IGNITE PODS

Now it’s time to launch
kubectl create -f ignite-deployment.yaml
kubectl get pods
Get the logs and examine for each cluster…
ex)
kubectl logs ignite-cluster-3454482164-d4m6g
Scale out:
kubectl scale --replicas=5 -f ignite-deployment.yaml

MANY DEPLOYMENT OPTIONS
On Premise
Cloud
Azure
EC2
Google Cloud
USING MINIKUBE FOR LOCAL DEV

A good place to start for exploration
When you want to get in the cloud - pick your poison
Post on setup w/Azure by Ignite PMC Denis Magda:
https://dzone.com/articles/deploying-apache-ignite-in-
kubernetes-on-microsoft
https://kubernetes.io/docs/setup/pick-right-solution/
#turnkey-cloud-solutions
DARE TO TRY?
1. DEPLOY CLOUD ENVIRONMENT
2. CONNECTTOYOUR CLOUD ENVIRONMENT FROMYOUR
LOCAL MACHINE, EX) AZURE
#connect to cluster, make sure your sshkeys are
setup

az acs kubernetes get-credentials --resource-
group=myResourceGroup --name=myK8sCluster 

#make sure you see the k8s-agents & master

kubectl get nodes

USING THE DASHBOARD
1.kubectl proxy
2.http://localhost:8001/ui
4. CREATETHE K8 LOOKUP SERVICE

#using above link, next to the number 4, create the file then
initiate the service

kubectl create -f ignite-service.yaml

#you will see that the ignite service is under the services
tab 
5. DEPLOYYOUR APACHE IGNITE CLUSTER

#create the ignite-deployment.yaml file following
instructions here

kubectl create -f ignite-deployment.yaml
#you will see that the ignite cluster is running in
kubernetes
ADJUSTINGTHE IGNITE CLUSTER SIZE WHENYOU NEEDTO SCALE



•When you want to elasticly scale out your cluster with K8:
• kubectl scale –replicas=<n> -f ignite-
deployment.yaml
• Run:	
• kubectl get pods
•Let’s say you want 5 nodes?
• kubectl scale --replicas=5 -f ~/
kubernetes_dev/azure/ignite-
deployment.yaml
•You will see your cluster scale out – in this case from 2 to 5
nodes!



OVERALL STEPS
Ignite Download:
https://ignite.apache.org/download.cgi
Run Kubernetes Locally:
https://kubernetes.io/docs/getting-started-guides/minikube/
Deploy Kubernetes & Ignite
https://apacheignite.readme.io/docs/kubernetes-deployment
RESOURCES
Denis Magda’s & Akmal Chaudhri’s blog’s on deploying Ignite
w/K8 and Azure or AWS:
https://dzone.com/articles/deploying-apache-ignite-in-kubernetes-on-
microsoft
https://www.gridgain.com/resources/blog/kubernetes-and-apacher-
ignitetm-deployment-aws
Tutorials
https://kubernetes.io/docs/tutorials/
K8 Book by Kelsey Hightower:
http://shop.oreilly.com/product/0636920043874.do
Ignite Book by Shahim & others:
https://leanpub.com/ignite
ANY QUESTIONS?

Reach me on Twitter @dtrapezoid
Use #apacheignite
Checkout http://ignite.apache.org
THANKS @DTRAPEZOID

Weitere ähnliche Inhalte

Was ist angesagt?

Building Clustered Applications with Kubernetes and Docker
Building Clustered Applications with Kubernetes and DockerBuilding Clustered Applications with Kubernetes and Docker
Building Clustered Applications with Kubernetes and DockerSteve Watt
 
Docker Meetup Tokyo #23 - Zenko Open Source Multi-Cloud Data Controller - Lau...
Docker Meetup Tokyo #23 - Zenko Open Source Multi-Cloud Data Controller - Lau...Docker Meetup Tokyo #23 - Zenko Open Source Multi-Cloud Data Controller - Lau...
Docker Meetup Tokyo #23 - Zenko Open Source Multi-Cloud Data Controller - Lau...Laure Vergeron
 
Self Heal Your OpenStack Control Plane!
Self Heal Your OpenStack Control Plane!Self Heal Your OpenStack Control Plane!
Self Heal Your OpenStack Control Plane!Shixiong Shang
 
Deploying OpenStack with Chef
Deploying OpenStack with ChefDeploying OpenStack with Chef
Deploying OpenStack with ChefMatt Ray
 
Automating hard things may 2015
Automating hard things   may 2015Automating hard things   may 2015
Automating hard things may 2015Mark Baker
 
Orchestrating VM & Container Deployments
Orchestrating VM & Container DeploymentsOrchestrating VM & Container Deployments
Orchestrating VM & Container DeploymentsLars Wander
 
DevOps with Azure, Kubernetes, and Helm Webinar
DevOps with Azure, Kubernetes, and Helm WebinarDevOps with Azure, Kubernetes, and Helm Webinar
DevOps with Azure, Kubernetes, and Helm WebinarCodefresh
 
Tectonic Summit 2016: The Origins of Kubernetes
Tectonic Summit 2016: The Origins of KubernetesTectonic Summit 2016: The Origins of Kubernetes
Tectonic Summit 2016: The Origins of KubernetesCoreOS
 
JupyterHub + kubernetes
JupyterHub + kubernetesJupyterHub + kubernetes
JupyterHub + kubernetesCarol Willing
 
Kubernetes on AWS gone wild
Kubernetes on AWS gone wildKubernetes on AWS gone wild
Kubernetes on AWS gone wildChristian Jantz
 
Spinnaker VLDB 2011
Spinnaker VLDB 2011Spinnaker VLDB 2011
Spinnaker VLDB 2011sandeep_tata
 
Kubernetes Operations (KOPS)
Kubernetes Operations (KOPS)Kubernetes Operations (KOPS)
Kubernetes Operations (KOPS)Jakir Patel
 
Spark with kubernates
Spark with kubernatesSpark with kubernates
Spark with kubernatesDavid Tung
 
Spinnaker - Bay Area AWS Meetup - 20160726
Spinnaker - Bay Area AWS Meetup - 20160726Spinnaker - Bay Area AWS Meetup - 20160726
Spinnaker - Bay Area AWS Meetup - 20160726Adam Jordens
 
Aws + kubernetes = ❤︎
Aws + kubernetes = ❤︎Aws + kubernetes = ❤︎
Aws + kubernetes = ❤︎Anthony Stanton
 
Heat - keep the clouds up
Heat - keep the clouds upHeat - keep the clouds up
Heat - keep the clouds upKiran Murari
 
Using Puppet To Manage Splunk
Using Puppet To Manage SplunkUsing Puppet To Manage Splunk
Using Puppet To Manage SplunkSplunk
 
Chef for OpenStack: OpenStack Spring Summit 2013
Chef for OpenStack: OpenStack Spring Summit 2013Chef for OpenStack: OpenStack Spring Summit 2013
Chef for OpenStack: OpenStack Spring Summit 2013Matt Ray
 

Was ist angesagt? (20)

Building Clustered Applications with Kubernetes and Docker
Building Clustered Applications with Kubernetes and DockerBuilding Clustered Applications with Kubernetes and Docker
Building Clustered Applications with Kubernetes and Docker
 
Docker Meetup Tokyo #23 - Zenko Open Source Multi-Cloud Data Controller - Lau...
Docker Meetup Tokyo #23 - Zenko Open Source Multi-Cloud Data Controller - Lau...Docker Meetup Tokyo #23 - Zenko Open Source Multi-Cloud Data Controller - Lau...
Docker Meetup Tokyo #23 - Zenko Open Source Multi-Cloud Data Controller - Lau...
 
Self Heal Your OpenStack Control Plane!
Self Heal Your OpenStack Control Plane!Self Heal Your OpenStack Control Plane!
Self Heal Your OpenStack Control Plane!
 
Deploying OpenStack with Chef
Deploying OpenStack with ChefDeploying OpenStack with Chef
Deploying OpenStack with Chef
 
OpenStack Heat
OpenStack HeatOpenStack Heat
OpenStack Heat
 
Automating hard things may 2015
Automating hard things   may 2015Automating hard things   may 2015
Automating hard things may 2015
 
Orchestrating VM & Container Deployments
Orchestrating VM & Container DeploymentsOrchestrating VM & Container Deployments
Orchestrating VM & Container Deployments
 
DevOps with Azure, Kubernetes, and Helm Webinar
DevOps with Azure, Kubernetes, and Helm WebinarDevOps with Azure, Kubernetes, and Helm Webinar
DevOps with Azure, Kubernetes, and Helm Webinar
 
Tectonic Summit 2016: The Origins of Kubernetes
Tectonic Summit 2016: The Origins of KubernetesTectonic Summit 2016: The Origins of Kubernetes
Tectonic Summit 2016: The Origins of Kubernetes
 
JupyterHub + kubernetes
JupyterHub + kubernetesJupyterHub + kubernetes
JupyterHub + kubernetes
 
Kubernetes on AWS gone wild
Kubernetes on AWS gone wildKubernetes on AWS gone wild
Kubernetes on AWS gone wild
 
Spinnaker VLDB 2011
Spinnaker VLDB 2011Spinnaker VLDB 2011
Spinnaker VLDB 2011
 
Kubernetes Operations (KOPS)
Kubernetes Operations (KOPS)Kubernetes Operations (KOPS)
Kubernetes Operations (KOPS)
 
Spark with kubernates
Spark with kubernatesSpark with kubernates
Spark with kubernates
 
TIAD : Automating the aplication lifecycle
TIAD : Automating the aplication lifecycleTIAD : Automating the aplication lifecycle
TIAD : Automating the aplication lifecycle
 
Spinnaker - Bay Area AWS Meetup - 20160726
Spinnaker - Bay Area AWS Meetup - 20160726Spinnaker - Bay Area AWS Meetup - 20160726
Spinnaker - Bay Area AWS Meetup - 20160726
 
Aws + kubernetes = ❤︎
Aws + kubernetes = ❤︎Aws + kubernetes = ❤︎
Aws + kubernetes = ❤︎
 
Heat - keep the clouds up
Heat - keep the clouds upHeat - keep the clouds up
Heat - keep the clouds up
 
Using Puppet To Manage Splunk
Using Puppet To Manage SplunkUsing Puppet To Manage Splunk
Using Puppet To Manage Splunk
 
Chef for OpenStack: OpenStack Spring Summit 2013
Chef for OpenStack: OpenStack Spring Summit 2013Chef for OpenStack: OpenStack Spring Summit 2013
Chef for OpenStack: OpenStack Spring Summit 2013
 

Ähnlich wie Sf k8-ignite-meetup

Effective Building your Platform with Kubernetes == Keep it Simple
Effective Building your Platform with Kubernetes == Keep it Simple Effective Building your Platform with Kubernetes == Keep it Simple
Effective Building your Platform with Kubernetes == Keep it Simple Wojciech Barczyński
 
Cluster Lifecycle Landscape
Cluster Lifecycle LandscapeCluster Lifecycle Landscape
Cluster Lifecycle LandscapeMike Danese
 
Scaling your Data Pipelines with Apache Spark on Kubernetes
Scaling your Data Pipelines with Apache Spark on KubernetesScaling your Data Pipelines with Apache Spark on Kubernetes
Scaling your Data Pipelines with Apache Spark on KubernetesDatabricks
 
Kubernetes and Hybrid Deployments
Kubernetes and Hybrid DeploymentsKubernetes and Hybrid Deployments
Kubernetes and Hybrid DeploymentsSandeep Parikh
 
Containerised ASP.NET Core apps with Kubernetes
Containerised ASP.NET Core apps with KubernetesContainerised ASP.NET Core apps with Kubernetes
Containerised ASP.NET Core apps with KubernetesCodemotion Tel Aviv
 
Run K8s on Local Environment
Run K8s on Local EnvironmentRun K8s on Local Environment
Run K8s on Local EnvironmentGanesh Pol
 
Get you Java application ready for Kubernetes !
Get you Java application ready for Kubernetes !Get you Java application ready for Kubernetes !
Get you Java application ready for Kubernetes !Anthony Dahanne
 
Kubernetes Introduction
Kubernetes IntroductionKubernetes Introduction
Kubernetes IntroductionEric Gustafson
 
From 0 to 60 with kubernetes and istio
From 0 to 60 with kubernetes and istioFrom 0 to 60 with kubernetes and istio
From 0 to 60 with kubernetes and istioJoonathan Mägi
 
5 Painless Demos to Get You Started with Kubernetes
5 Painless Demos to Get You Started with Kubernetes5 Painless Demos to Get You Started with Kubernetes
5 Painless Demos to Get You Started with KubernetesAmartus
 
1. CNCF kubernetes meetup - Ondrej Sika
1. CNCF kubernetes meetup - Ondrej Sika1. CNCF kubernetes meetup - Ondrej Sika
1. CNCF kubernetes meetup - Ondrej SikaJuraj Hantak
 
Aws container webinar day 1
Aws container webinar day 1Aws container webinar day 1
Aws container webinar day 1HoseokSeo7
 
Mete Atamel
Mete AtamelMete Atamel
Mete AtamelCodeFest
 
The path to a serverless-native era with Kubernetes
The path to a serverless-native era with KubernetesThe path to a serverless-native era with Kubernetes
The path to a serverless-native era with Kubernetessparkfabrik
 
How to integrate Kubernetes in OpenStack: You need to know these project
How to integrate Kubernetes in OpenStack: You need to know these projectHow to integrate Kubernetes in OpenStack: You need to know these project
How to integrate Kubernetes in OpenStack: You need to know these projectinwin stack
 
CI/CD with Kubernetes, Helm & Wercker (#madScalability)
CI/CD with Kubernetes, Helm & Wercker (#madScalability)CI/CD with Kubernetes, Helm & Wercker (#madScalability)
CI/CD with Kubernetes, Helm & Wercker (#madScalability)Diacode
 
TDC2017 | São Paulo - Trilha Cloud Computing How we figured out we had a SRE ...
TDC2017 | São Paulo - Trilha Cloud Computing How we figured out we had a SRE ...TDC2017 | São Paulo - Trilha Cloud Computing How we figured out we had a SRE ...
TDC2017 | São Paulo - Trilha Cloud Computing How we figured out we had a SRE ...tdc-globalcode
 
Nugwc k8s session-16-march-2021
Nugwc k8s session-16-march-2021Nugwc k8s session-16-march-2021
Nugwc k8s session-16-march-2021Avanti Patil
 

Ähnlich wie Sf k8-ignite-meetup (20)

Effective Building your Platform with Kubernetes == Keep it Simple
Effective Building your Platform with Kubernetes == Keep it Simple Effective Building your Platform with Kubernetes == Keep it Simple
Effective Building your Platform with Kubernetes == Keep it Simple
 
Cluster Lifecycle Landscape
Cluster Lifecycle LandscapeCluster Lifecycle Landscape
Cluster Lifecycle Landscape
 
Scaling your Data Pipelines with Apache Spark on Kubernetes
Scaling your Data Pipelines with Apache Spark on KubernetesScaling your Data Pipelines with Apache Spark on Kubernetes
Scaling your Data Pipelines with Apache Spark on Kubernetes
 
Kubernetes and Hybrid Deployments
Kubernetes and Hybrid DeploymentsKubernetes and Hybrid Deployments
Kubernetes and Hybrid Deployments
 
Containerised ASP.NET Core apps with Kubernetes
Containerised ASP.NET Core apps with KubernetesContainerised ASP.NET Core apps with Kubernetes
Containerised ASP.NET Core apps with Kubernetes
 
Run K8s on Local Environment
Run K8s on Local EnvironmentRun K8s on Local Environment
Run K8s on Local Environment
 
Get you Java application ready for Kubernetes !
Get you Java application ready for Kubernetes !Get you Java application ready for Kubernetes !
Get you Java application ready for Kubernetes !
 
Running kubernetes
Running kubernetesRunning kubernetes
Running kubernetes
 
Kubernetes Introduction
Kubernetes IntroductionKubernetes Introduction
Kubernetes Introduction
 
From 0 to 60 with kubernetes and istio
From 0 to 60 with kubernetes and istioFrom 0 to 60 with kubernetes and istio
From 0 to 60 with kubernetes and istio
 
5 Painless Demos to Get You Started with Kubernetes
5 Painless Demos to Get You Started with Kubernetes5 Painless Demos to Get You Started with Kubernetes
5 Painless Demos to Get You Started with Kubernetes
 
1. CNCF kubernetes meetup - Ondrej Sika
1. CNCF kubernetes meetup - Ondrej Sika1. CNCF kubernetes meetup - Ondrej Sika
1. CNCF kubernetes meetup - Ondrej Sika
 
Aws container webinar day 1
Aws container webinar day 1Aws container webinar day 1
Aws container webinar day 1
 
Mete Atamel
Mete AtamelMete Atamel
Mete Atamel
 
The path to a serverless-native era with Kubernetes
The path to a serverless-native era with KubernetesThe path to a serverless-native era with Kubernetes
The path to a serverless-native era with Kubernetes
 
Kubernetes
KubernetesKubernetes
Kubernetes
 
How to integrate Kubernetes in OpenStack: You need to know these project
How to integrate Kubernetes in OpenStack: You need to know these projectHow to integrate Kubernetes in OpenStack: You need to know these project
How to integrate Kubernetes in OpenStack: You need to know these project
 
CI/CD with Kubernetes, Helm & Wercker (#madScalability)
CI/CD with Kubernetes, Helm & Wercker (#madScalability)CI/CD with Kubernetes, Helm & Wercker (#madScalability)
CI/CD with Kubernetes, Helm & Wercker (#madScalability)
 
TDC2017 | São Paulo - Trilha Cloud Computing How we figured out we had a SRE ...
TDC2017 | São Paulo - Trilha Cloud Computing How we figured out we had a SRE ...TDC2017 | São Paulo - Trilha Cloud Computing How we figured out we had a SRE ...
TDC2017 | São Paulo - Trilha Cloud Computing How we figured out we had a SRE ...
 
Nugwc k8s session-16-march-2021
Nugwc k8s session-16-march-2021Nugwc k8s session-16-march-2021
Nugwc k8s session-16-march-2021
 

Mehr von Dani Traphagen

Kafka + Kubernetes + why you maybe should
Kafka + Kubernetes + why you maybe shouldKafka + Kubernetes + why you maybe should
Kafka + Kubernetes + why you maybe shouldDani Traphagen
 
To Ksql Or Live the KStream
To Ksql Or Live the KStreamTo Ksql Or Live the KStream
To Ksql Or Live the KStreamDani Traphagen
 
Nike tech-talk-intro-to-apache-ignite
Nike tech-talk-intro-to-apache-igniteNike tech-talk-intro-to-apache-ignite
Nike tech-talk-intro-to-apache-igniteDani Traphagen
 
The next-phase-of-distributed-systems-with-apache-ignite
The next-phase-of-distributed-systems-with-apache-igniteThe next-phase-of-distributed-systems-with-apache-ignite
The next-phase-of-distributed-systems-with-apache-igniteDani Traphagen
 
Data Modeling with Cassandra and Time Series Data
Data Modeling with Cassandra and Time Series DataData Modeling with Cassandra and Time Series Data
Data Modeling with Cassandra and Time Series DataDani Traphagen
 
Diving into DSE Graph
Diving into DSE Graph Diving into DSE Graph
Diving into DSE Graph Dani Traphagen
 
OSCON TALK: Becoming Friends with Cassandra and Spark
OSCON TALK: Becoming Friends with Cassandra and SparkOSCON TALK: Becoming Friends with Cassandra and Spark
OSCON TALK: Becoming Friends with Cassandra and SparkDani Traphagen
 

Mehr von Dani Traphagen (7)

Kafka + Kubernetes + why you maybe should
Kafka + Kubernetes + why you maybe shouldKafka + Kubernetes + why you maybe should
Kafka + Kubernetes + why you maybe should
 
To Ksql Or Live the KStream
To Ksql Or Live the KStreamTo Ksql Or Live the KStream
To Ksql Or Live the KStream
 
Nike tech-talk-intro-to-apache-ignite
Nike tech-talk-intro-to-apache-igniteNike tech-talk-intro-to-apache-ignite
Nike tech-talk-intro-to-apache-ignite
 
The next-phase-of-distributed-systems-with-apache-ignite
The next-phase-of-distributed-systems-with-apache-igniteThe next-phase-of-distributed-systems-with-apache-ignite
The next-phase-of-distributed-systems-with-apache-ignite
 
Data Modeling with Cassandra and Time Series Data
Data Modeling with Cassandra and Time Series DataData Modeling with Cassandra and Time Series Data
Data Modeling with Cassandra and Time Series Data
 
Diving into DSE Graph
Diving into DSE Graph Diving into DSE Graph
Diving into DSE Graph
 
OSCON TALK: Becoming Friends with Cassandra and Spark
OSCON TALK: Becoming Friends with Cassandra and SparkOSCON TALK: Becoming Friends with Cassandra and Spark
OSCON TALK: Becoming Friends with Cassandra and Spark
 

Kürzlich hochgeladen

Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxKatpro Technologies
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)Gabriella Davis
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slidevu2urc
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfsudhanshuwaghmare1
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024Results
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Drew Madelung
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slidespraypatel2
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)wesley chun
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonetsnaman860154
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Scriptwesley chun
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CVKhem
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountPuma Security, LLC
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...Neo4j
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationSafe Software
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptxHampshireHUG
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxMalak Abu Hammad
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024The Digital Insurer
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsEnterprise Knowledge
 
Advantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessAdvantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessPixlogix Infotech
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...apidays
 

Kürzlich hochgeladen (20)

Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slides
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CV
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path Mount
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptx
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 
Advantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessAdvantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your Business
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 

Sf k8-ignite-meetup

  • 1. DANI TRAPHAGEN DEPLOY LIKE A BOSS: USING APACHE® IGNITETM AND KUBERNETES®

  • 2. AGENDA • Setting up a Apache Ignite cluster • Using the Kubernetes IP Finder and the Kubernetes Ignite Lookup Service • Sharing the Ignite Cluster Configuration • Deploying your Ignite Pods • Adjusting the Ignite Cluster Size when you need to Scale • How to try it out with Azure!
  • 3. SOYOU WANNA BE A BOSS?
  • 4. FIRST - APACHE IGNITE’S PLATFORM
  • 6. APACHE IGNITE FEATURES Ignite Persistence ACID Compliance Complete SQL Support Key-Value Store/APIs Collocated Processing Scalability and Durability
  • 7. SECOND – DEPLOYMENT WITH KUBERNETES (K8) What it isn’t:
  • 8. KUBERNETES IN A SIMPLE DEFINITION “Kubernetes intends to radically simplify the task of building, deploying and maintaining distributed systems.” Kubernetes: Up and Running: Dive into the Future of Infrastructure By: Kelsey Hightower  What it is:
  • 9. K8 FEATURES Automatic Binpacking Horizontal Scaling Automated Rollouts and Rollbacks Storage Orchestration Self-Healing Service Discovery and Load Balancing Secret and Configuration Management Batch Execution
  • 10. APACHE IGNITE + K8 CLUSTER ARCHITECTURE Master…n https://kubernetes.io/docs/admin/high-availability/
  • 11. BENEFITS OF K8 (VERSION 1.7)  Cost Efficiency Use of containers by multiple developers ensures shared resourcing rather than redundancy High Availability and Performance Self-healing: Deploying with K8 and setting rules for a set number of nodes, will ensure your cluster can always handle the transactions hitting it No more pager duty Get home to your pet chinchilla sooner  kubernetes-sf dani yer old nodes
  • 12. SETTING UP AN APACHE IGNITE CLUSTER
 Step 1: What is your use case? Seriously, what is your use case? I’m not kidding. Use case, then set up… Cart before horse please.
  • 13. SETTING UP AN APACHE IGNITE CLUSTER
 1. Download Apache Ignite 2. Make sure to add the ignite- kubernetes Maven Dependency to your pom.xml 3.Try using examples from our docs.
  • 14. SETTING UP K8 ON A LOCAL MACHINE Install K8 where you intend AWS Google Cloud Dev Machine Set your $PATH w/K8 Install Kubectl Follow K8 Docs It’s not a toomah.
  • 15. KUBERNETES DISCOVERY Multicast = ☹ Use Static IP Finder & list Ignite IPs, K8 will dynamically assign them for on premise You can use other cloud Ignite IP finders but you need K8 to running in the cloud env. What’s the point of the TcpDiscoveryKubernetesIpFinder?
  • 16. USINGTHE KUBERNETES IP FINDER ANDTHE KUBERNETES IGNITE LOOKUP SERVICE
 Apps & nodes running outside of K8 & Ignite will not be able to reach the cluster  K8 service should be deployed before Ignite cluster boot The Ignite Pods internal IPs will be maintained by the K8 service. Service name must be equal to setServiceName(String) This will be `ignite` as a default https://ignite.apache.org/releases/latest/javadoc/org/ apache/ignite/spi/discovery/tcp/ipfinder/kubernetes/ TcpDiscoveryKubernetesIpFinder.html
  • 17. USING DOCKER ON LOCAL MACHINE WITH MINIKUBE
  • 18. SHARINGTHE IGNITE CLUSTER CONFIGURATION

  • 19. SERVICE STARTUP & SHARING CONFIGS Minikube - Two basic commands minikube start minikube dashboard Kubectl kubectl create -f ~/<path-to-project>/<project-name>/ config/ignite-service.yaml
  • 20. NOW KUBERNETES IS RUNNING!
  • 21. CONFIGURINGYOUR IGNITE PODS
 2Things Needed! 1.Apache Ignite Configuration File with the Kubernetes IP Finder 2.YAML Configurations for the Apache Ignite pods/nodes Steps: Create your ignite-service.yaml kubectl create -f ignite-service.yaml kubectl get svc ignite
 

  • 22. SHARING IGNITE CLUSTER CONFIGS Confirm the ignite service was created Make a path to the persistence volume docker will use to pass the kubernetes config ‘example-kube.xml’
  • 23. SUCCESS Now, do this for the  ignite-volume-claim.yaml
  • 24. PERSISTENTVOLUME BOUND? Make sure your persistent volume is bound to the claim kubectl get pvc ignite- volume-claim kubectl get pv ignite volume use xhyve driver so you can access persistent volumes minikube start --vm-driver=xhyve & modify the directory path "/data/ignite" that is used in the examples to "/Users/<username>/data/ignite"
  • 25. DEPLOYINGYOUR IGNITE PODS
 Now it’s time to launch kubectl create -f ignite-deployment.yaml kubectl get pods Get the logs and examine for each cluster… ex) kubectl logs ignite-cluster-3454482164-d4m6g Scale out: kubectl scale --replicas=5 -f ignite-deployment.yaml

  • 26. MANY DEPLOYMENT OPTIONS On Premise Cloud Azure EC2 Google Cloud
  • 27. USING MINIKUBE FOR LOCAL DEV
 A good place to start for exploration When you want to get in the cloud - pick your poison Post on setup w/Azure by Ignite PMC Denis Magda: https://dzone.com/articles/deploying-apache-ignite-in- kubernetes-on-microsoft https://kubernetes.io/docs/setup/pick-right-solution/ #turnkey-cloud-solutions
  • 29. 1. DEPLOY CLOUD ENVIRONMENT
  • 30. 2. CONNECTTOYOUR CLOUD ENVIRONMENT FROMYOUR LOCAL MACHINE, EX) AZURE #connect to cluster, make sure your sshkeys are setup
 az acs kubernetes get-credentials --resource- group=myResourceGroup --name=myK8sCluster 
 #make sure you see the k8s-agents & master
 kubectl get nodes

  • 31. USING THE DASHBOARD 1.kubectl proxy 2.http://localhost:8001/ui
  • 32. 4. CREATETHE K8 LOOKUP SERVICE
 #using above link, next to the number 4, create the file then initiate the service
 kubectl create -f ignite-service.yaml
 #you will see that the ignite service is under the services tab 
  • 33. 5. DEPLOYYOUR APACHE IGNITE CLUSTER
 #create the ignite-deployment.yaml file following instructions here
 kubectl create -f ignite-deployment.yaml #you will see that the ignite cluster is running in kubernetes
  • 34. ADJUSTINGTHE IGNITE CLUSTER SIZE WHENYOU NEEDTO SCALE
 
 •When you want to elasticly scale out your cluster with K8: • kubectl scale –replicas=<n> -f ignite- deployment.yaml • Run: • kubectl get pods •Let’s say you want 5 nodes? • kubectl scale --replicas=5 -f ~/ kubernetes_dev/azure/ignite- deployment.yaml •You will see your cluster scale out – in this case from 2 to 5 nodes!
 

  • 35. OVERALL STEPS Ignite Download: https://ignite.apache.org/download.cgi Run Kubernetes Locally: https://kubernetes.io/docs/getting-started-guides/minikube/ Deploy Kubernetes & Ignite https://apacheignite.readme.io/docs/kubernetes-deployment
  • 36. RESOURCES Denis Magda’s & Akmal Chaudhri’s blog’s on deploying Ignite w/K8 and Azure or AWS: https://dzone.com/articles/deploying-apache-ignite-in-kubernetes-on- microsoft https://www.gridgain.com/resources/blog/kubernetes-and-apacher- ignitetm-deployment-aws Tutorials https://kubernetes.io/docs/tutorials/ K8 Book by Kelsey Hightower: http://shop.oreilly.com/product/0636920043874.do Ignite Book by Shahim & others: https://leanpub.com/ignite
  • 37. ANY QUESTIONS?
 Reach me on Twitter @dtrapezoid Use #apacheignite Checkout http://ignite.apache.org