You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: content/blog/federating-spire-on-hpe-greenlake-for-private-cloud-enterprise.md
+17-17Lines changed: 17 additions & 17 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -11,17 +11,17 @@ tags:
11
11
- SPIFFE
12
12
- spiffe-and-spire-projects
13
13
---
14
-
SPIRE is designed to enable widespread deployment of mTLSbetween workloads in distributed systems. In the previous [blog](https://developer.hpe.com/blog/integrating-istio-and-spire/) we explain how to deploy a Kubernetes cluster on HPE GreenLake for Private Cloud Enterprise and integrate Istio and SPIRE to enable advanced analysis and visualization of the service mesh.
14
+
SPIRE is designed to enable widespread deployment of Mutual TLS (mTLS), a method for mutual authentication, between workloads in distributed systems. In our previous [blog](https://developer.hpe.com/blog/integrating-istio-and-spire/)post, we explained how you can deploy a Kubernetes cluster on HPE GreenLake for Private Cloud Enterprise and integrate Istio and SPIRE to enable advanced analysis and visualization of the service mesh.
15
15
16
-
In this blog post, we will install and federate SPIRE across two Kubernetes clusters deployed on HPE GreenLake for Private Cloud Enterprise: cluster 1 and cluster 2. We will deploy a sample application to verify the federation and visualize the communication across services through a graph.
16
+
In this blog post, we will install and federate SPIRE across two Kubernetes clusters deployed on HPE GreenLake for Private Cloud Enterprise: cluster 1 and cluster 2. We will then show you how to deploy a sample application to verify the federation and visualize the communication across services through a graph.
17
17
18
18

19
19
20
-
# Step 1. Installing SPIRE:
20
+
# Step 1. Installing SPIRE
21
21
22
-
Using the QuickStart files provided in this [link](https://github.com/cxteamtrials/caas-trials-content/tree/main/services/spire) we can get started on installing SPIRE on both clusters. Since we are working with two clusters, the trust domain configured for the first cluster is ***cluster1.demo***, and the other is ***cluster2.demo***.
22
+
Using the QuickStart files provided in this [link](https://github.com/cxteamtrials/caas-trials-content/tree/main/services/spire/federation), get started installing SPIRE on both Clusters. Since there are two clusters in our example, the trust domain configured for the first cluster is ***cluster 1.demo*** and the other is ***cluster2.demo***.
23
23
24
-
*Note: you may configure your own custom trust domains for the clusters by replacing these values across the configuration files.*
24
+
*Note: You may configure your own custom trust domains for the clusters by replacing these values across the configuration files.*
## 1.2 Apply the QuickStart file on each cluster using the following commands:
33
33
34
-
As we require the Kubectl command for installation and configuration the first [blog ](https://developer.hpe.com/blog/integrating-istio-and-spire/)explains how to obtain the Kubeconfig file to manage the K8s clusters using Kubectl.
34
+
As the Kubectl command is required for installation and configuration, please refer to our first [blog ](https://developer.hpe.com/blog/integrating-istio-and-spire/)post, which explains how to obtain the Kubeconfig file to manage the K8s clusters using Kubectl.
This step will install SPIRE into your Kubernetes clusters, along with two additional components: the SPIFFE CSI Driver and the SPIRE Kubernetes Controller manager which facilitates the registration of workloads and establishment of federated relationships.
43
+
This step will install SPIRE into your Kubernetes clusters, along with two additional components: the SPIFFE CSI Driver and the SPIRE Kubernetes Controller manager, which facilitates the registration of workloads and establishment of federated relationships.
44
44
45
-
Verify the installation by checking if all pods are running and containers within them are up.
45
+
Verify the installation by checking to see if all the pods are running and that the containers within them are up.
On each of your Kubernetes clusters, install Istio and patch Istio ingress gateway. Istio can detect the existence of a UNIX Domain Socket that implements the Envoy SDS API on a defined socket path, allowing Envoy to communicate and fetch identities directly from it. SPIRE can be configured for Istio workloads through an integration with Envoy’s SDS API.
68
68
69
-
## 2.1 Download the latest release:
69
+
## 2.1 Download the latest release
70
70
71
-
You can download the latest release using the official Istio repository or just copy the following command, which would do the same for you.
71
+
You can download the latest release using the official Istio repository or just copy the following command, which would do the same thing for you.
72
72
73
73
```shellsession
74
74
curl -L https://istio.io/downloadIstio | sh -
75
75
```
76
76
77
-
Change to the Istio directory (cd command), and set the path by command:
77
+
Change to the Istio directory (cd command), and set the path by using this command:
78
78
79
79
```shellsession
80
80
cd istio-1.17.1
81
81
export PATH=$PWD/bin:$PATH
82
82
```
83
83
84
-
## 2.2 Install Istio with custom patch:
84
+
## 2.2 Install Istio with custom patch
85
85
86
86
Install Istio with custom patches for the Ingress-gateway as well as for Istio-proxy.
Installing Istio with the custom patch will share the spiffe-csi-driver with the Ingress Gateway and the sidecars that are going to be injected on workload pods, granting them access to the SPIRE Agent’s UNIX Domain Socket.
98
98
99
-
## 2.3 Patch Istio Ingress Gateway:
99
+
## 2.3 Patch Istio Ingress Gateway
100
100
101
101
### 2.3.1 Apply SPIFFE ID
102
102
103
-
The first step is to getand apply one of SPIRE controller manager’s [CRD (Custom Resource Definition)](https://kubernetes.io/docs/concepts/extend-kubernetes/api-extension/custom-resources/) ClusterSPIFFEID. The CRD - ClusterSPIFFEID is a cluster-wide resource used to register workloads with SPIRE. The ClusterSPIFFEID can target all workloads in the cluster or can be optionally scoped to specific pods or namespaces via label selectors.
103
+
First, you must getand apply one of SPIRE controller manager’s [CRD (Custom Resource Definition)](https://kubernetes.io/docs/concepts/extend-kubernetes/api-extension/custom-resources/) ClusterSPIFFEID. The CRD - ClusterSPIFFEID is a cluster-wide resource used to register workloads with SPIRE. The ClusterSPIFFEID can target all workloads in the cluster or can be optionally scoped to specific pods or namespaces via label selectors.
104
104
105
-
Create a ClusterSPIFFEID CRD to generate registration entries in SPIRE server for all workloads with label***spiffe.io/spire-managed-identity: true.***
105
+
Create a ClusterSPIFFEID CRD to generate registration entries in SPIRE server for all workloads labeled***spiffe.io/spire-managed-identity: true.***
106
106
107
107
Get the ClusterSPIFFEID used for this demo using this [link](https://github.com/cxteamtrials/caas-trials-content/blob/main/services/spire/clusterspiffeid-example.yaml) and apply it to both clusters.
0 commit comments