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
5.[Example 2 : Directory Server as a Kubernetes Service](#5-example-2--directory-server-instancetypedirectory-as-a-kubernetes-service)
10
-
6.[Example 3 : Proxy Server as a Kubernetes Service](#6-example-3--proxy-server-instancetypeproxy-as-a-kubernetes-service)
11
-
7.[Example 4 : Replication Server (instanceType=Replication) as a Kubernetes Service](#7-example-4--replication-server-instancetypereplication-as-a-kubernetes-service)
1.[Example 2 Directory Server as a Kubernetes Service](#example-2-directory-server-instancetypedirectory-as-a-kubernetes-service)
10
+
1.[Example 3 Proxy Server as a Kubernetes Service](#example-3-proxy-server-instancetypeproxy-as-a-kubernetes-service)
11
+
1.[Example 4 Replication Server (instanceType=Replication) as a Kubernetes Service](#example-4-replication-server-instancetypereplication-as-a-kubernetes-service)
12
+
1.[Example 5 Directory Server/Service added to existing Replication Server/Service (instanceType=AddDS2RS)](#example-5-directory-serverservice-added-to-existing-replication-serverservice-instancetypeaddds2rs)
13
+
1.[Appendix Reference](#appendix-reference)
14
+
15
+
# Introduction
16
16
This project offers Sample YAML files and scripts to deploy Oracle Unified Directory Docker images based on 12cPS4 (12.2.1.4.0) release within a Kubernetes environment. Use these YAML files to facilitate installation, configuration, and environment setup for DevOps users.
17
17
18
18
The Docker Image refers to binaries for OUD Release 12.2.1.4.0 and it has the capability to create different types of OUD Instances (Directory Service, Proxy, Replication) on containers targeted for development and testing.
19
19
20
20
***Image***: oracle/oud:12.2.1.4.0
21
21
22
-
# 2. Hardware and Software Requirements
22
+
# Hardware and Software Requirements
23
23
Oracle Unified Directory Docker Image has been tested and is known to run on following hardware and software:
You should create a Kubernetes namespace to provide a scope for other objects such as pods and services that you create in the environment. To create your namespace you should refer to the samples/oudns.yaml file.
72
72
73
73
Update the samples/oudns.yaml file and replace %NAMESPACE% with the value of the namespace you would like to create. In the example below the value 'myoudns' is used.
@@ -86,7 +86,7 @@ Confirm that the namespace is created:
86
86
kube-system Active 4d
87
87
<strong>myoudns Active 53s</strong></pre>
88
88
89
-
## 3.5 Create Secrets for User IDs and Passwords
89
+
## Create Secrets for User IDs and Passwords
90
90
91
91
To protect sensitive information, namely user IDs and passwords, you should create Kubernetes Secrets for the key-value pairs with following keys. The Secret with key-value pairs will be used to pass values to containers created through OUD image:
92
92
@@ -101,7 +101,7 @@ To protect sensitive information, namely user IDs and passwords, you should crea
101
101
102
102
There are two ways by which Secret object can be created with required key-value pairs.
103
103
104
-
### 3.5.1 Using samples/secrets.yaml file
104
+
### Using samples/secrets.yaml file
105
105
106
106
To do this you should update the samples/secrets.yaml file with the value for %SECRET_NAME% and %NAMESPACE%, together with the Base64 value for each secret.
107
107
@@ -155,7 +155,7 @@ Verify that the secret has been created:
## 3.6 Prepare a host directory to be used for Filesystem based PersistentVolume
192
+
## Prepare a host directory to be used for Filesystem based PersistentVolume
193
193
194
194
It's required to prepare directory on Host filesystem to store OUD Instances and other configuration outside container filesystem. That directory from host filesystem would be associated with PersistentVolume.
195
195
**In case of multi-node Kubernetes cluster, directory to be associated with PersistentVolume should be accessible on all the nodes at the same path.**
@@ -210,7 +210,7 @@ All container operations are performed as **'oracle'** user.
210
210
211
211
**Note**: If a user already exist with **'-u 1000 -g 1000'** then use the same user. Or modify any existing user to have uid-gid as **'-u 1000 -g 1000'**
212
212
213
-
## 3.7 Create PersistentVolume (PV) and PersistentVolumeClaim (PVC) for your Namespace
213
+
## Create PersistentVolume (PV) and PersistentVolumeClaim (PVC) for your Namespace
214
214
A PV is storage resource, while PVC is a request for that resource. To provide storage for your namespace, update the samples/persistent-volume.yaml file.
215
215
216
216
Update the following to values specific to your environment:
@@ -272,7 +272,7 @@ Verify the PersistentVolumeClaim:
272
272
Events: <none>
273
273
Mounted By: <none>
274
274
275
-
# 4 Example 1 : Directory Server (instanceType=Directory)
275
+
# Example 1 Directory Server (instanceType=Directory)
276
276
277
277
In this example you create a POD (oudpod1) which holds a single container based on an Oracle Unified Directory 12c PS4 (12.2.1.4.0) image.
278
278
@@ -335,7 +335,7 @@ In the container, run ldapsearch to return entries from the directory server:
335
335
...
336
336
dn: uid=user.99,ou=People,dc=example1,dc=com
337
337
338
-
# 5 Example 2 : Directory Server (instanceType=Directory) as a Kubernetes Service
338
+
# Example 2 Directory Server (instanceType=Directory) as a Kubernetes Service
339
339
340
340
In this example you will create two pods and 2 associated containers, both running OUD 12s directory server instances. This demonstrates how you can expose OUD 12c as a network service. This provides a way of abstracting access to the backend service independent of the pod details.
341
341
@@ -421,7 +421,7 @@ From outside the cluster, you can invoke curl commands like following for access
421
421
'https://<HOSTNAME>:<Https NodePort mapped to 1081>/iam/directory/oud/scim/v1/Schemas/urn:ietf:params:scim:schemas:core:2.0:Schema' \
# 6 Example 3 : Proxy Server (instanceType=Proxy) as a Kubernetes Service
424
+
# Example 3 Proxy Server (instanceType=Proxy) as a Kubernetes Service
425
425
426
426
In this example you will create a service, pod and associated container, in which an OUD 12c Proxy Server instance is deployed. This acts as a proxy to the 2 services you created in the previous example.
427
427
@@ -497,7 +497,7 @@ From outside the cluster, you can invoke curl commands like following for access
497
497
'https://<HOSTNAME>:<Https NodePort mapped to 1081>/iam/directory/oud/scim/v1/Schemas/urn:ietf:params:scim:schemas:core:2.0:Schema' \
# 7 Example 4 : Replication Server (instanceType=Replication) as a Kubernetes Service
500
+
# Example 4 Replication Server (instanceType=Replication) as a Kubernetes Service
501
501
502
502
In this example you will create a service, pod and associated container, in which an OUD 12 Replication Server instance is deployed. This creates a single Replication Server which has 2 Directory Servers as its replication group.
503
503
@@ -594,7 +594,7 @@ From outside the cluster, you can invoke curl commands like following for access
594
594
'https://<HOSTNAME>:<Https NodePort mapped to 1081>/iam/directory/oud/scim/v1/Schemas/urn:ietf:params:scim:schemas:core:2.0:Schema' \
# 7 Example 5 : Directory Server/Service added to existing Replication Server/Service (instanceType=AddDS2RS)
597
+
# Example 5 Directory Server/Service added to existing Replication Server/Service (instanceType=AddDS2RS)
598
598
599
599
In this example you will create services, pods and containers, in which OUD 12 Replication Server instances are deployed. In this case, 2 Replication/Directory Server Services are added, in addition the Directory Server created in Example 2 (oud-dir-svc-2) is added to the replication group.
600
600
@@ -697,7 +697,7 @@ From outside the cluster, you can invoke curl commands like following for access
Before using these sample yaml files, following variables are requried to be updated
703
703
* %NAMESPACE% - with value for Kubernetes namespace of your choice
@@ -716,15 +716,15 @@ Before using these sample yaml files, following variables are requried to be upd
716
716
* %bindPassword2% - With Base64 encoded value for bindPassword2 parameter.
717
717
718
718
719
-
# samples/oudns.yaml
719
+
##samples/oudns.yaml
720
720
721
721
This is a sample file to create Kubernetes namespace.
722
722
723
-
# samples/persistent-volume.yaml
723
+
##samples/persistent-volume.yaml
724
724
725
725
This is a sample file to create Persistent volume and persistent volume claim
726
726
727
-
# samples/secrets.yaml
727
+
##samples/secrets.yaml
728
728
729
729
This is a sample file to create the secrets which can be used to create secrets for the pods.
730
730
@@ -746,23 +746,23 @@ TXlQYXNzd29yZA==
746
746
747
747
**Note**: Please make sure to use -n with echo command. Without that, Base64 values would be generated with new-line character included.
748
748
749
-
# samples/oud-dir-svc.yaml
749
+
##samples/oud-dir-svc.yaml
750
750
751
751
This is a sample file to create 2 set of PODs and Services for OUD Instances
752
752
753
-
# samples/oud-dir-pod.yaml
753
+
##samples/oud-dir-pod.yaml
754
754
755
755
This is a sample file to create POD (oudpod1) with container for OUD Directory Instance.
756
756
757
-
# samples/oud-ds_proxy-svc.yaml
757
+
##samples/oud-ds_proxy-svc.yaml
758
758
759
759
This is a sample file to create:
760
760
* POD (oudds1) with container for OUD Directory Instance (dc=example1,dc=com)
761
761
* POD (oudds2) with container for OUD Directory Instance (dc=example2,dc=com)
762
762
* POD (oudp1) with container for OUD Directory Proxy referring to OUD Directory Instances (oudds1 and oudds2) for dc=example1,dc=com and dc=example2,dc=com
763
763
* Service (oud-ds-proxy-svc) referring to POD with OUD Directory Proxy (oudp1)
764
764
765
-
# samples/oud-ds_rs_ds-svc.yaml
765
+
##samples/oud-ds_rs_ds-svc.yaml
766
766
767
767
This is a sample file to create:
768
768
* POD (oudpodrs1) with container for OUD Replication Server Instance connected to OUD Directory Instance (oudpodds1)
@@ -778,7 +778,7 @@ With execution of following kind of command in container, status can be checked
0 commit comments