Skip to content

Commit 7bc7f12

Browse files
OUD & OUDSM Documentation Fixes
1 parent 02a05a1 commit 7bc7f12

File tree

9 files changed

+77
-78
lines changed

9 files changed

+77
-78
lines changed

CODEOWNERS

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,6 @@
55
/OracleAccessManagement/ @pratdash-orcl
66
/OracleIdentityGovernance/ @rishiagarwal-oracle
77
/OracleSOASuite/ @sbattagi
8-
/OracleUnifiedDirectory/ @kuldeep.b.shah @surya902
9-
/OracleUnifiedDirectorySM/ @kuldeep.b.shah @surya902
8+
/OracleUnifiedDirectory/ @kuldeepbshah @surya902 @pratdash-orcl
9+
/OracleUnifiedDirectorySM/ @kuldeepbshah @surya902 @pratdash-orcl
1010
/OracleWebCenterSites/ @prshshuk

OracleUnifiedDirectory/kubernetes/README.md

Lines changed: 38 additions & 39 deletions
Original file line numberDiff line numberDiff line change
@@ -2,50 +2,50 @@ Oracle Unified Directory (OUD) on Kubernetes
22
============================================
33

44
## Contents
5-
1. [Introduction](#1-introduction)
6-
2. [Hardware and Software Requirements](#2-hardware-and-software-requirements)
7-
3. [Prerequisites](#3-prerequisites)
8-
4. [Example 1 : Directory Server](#4-example-1--directory-server-instancetypedirectory)
9-
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)
12-
8. [Example 5 : Directory Server/Service added to existing Replication Server/Service (instanceType=AddDS2RS)](#7-example-5--directory-serverservice-added-to-existing-replication-serverservice-instancetypeaddds2rs)
13-
9. [Appendix A : Reference](#8-appendix-a--reference)
14-
15-
# 1. Introduction
5+
1. [Introduction](#introduction)
6+
1. [Hardware and Software Requirements](#hardware-and-software-requirements)
7+
1. [Prerequisites](#prerequisites)
8+
1. [Example 1 Directory Server](#example-1-directory-server-instancetypedirectory)
9+
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
1616
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.
1717

1818
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.
1919

2020
***Image***: oracle/oud:12.2.1.4.0
2121

22-
# 2. Hardware and Software Requirements
22+
# Hardware and Software Requirements
2323
Oracle Unified Directory Docker Image has been tested and is known to run on following hardware and software:
2424

25-
## 2.1 Hardware Requirements
25+
## Hardware Requirements
2626

2727
| Hardware | Size |
2828
| :-------: | :---: |
2929
| RAM | 16GB |
3030
| Disk Space| 200GB+|
3131

32-
## 2.2 Software Requirements
32+
## Software Requirements
3333

3434
| | Version | Command to verify version |
3535
| :---: | :----------------------------: | :-----------------------: |
3636
| OS | Oracle Linux 7.3 or higher | more /etc/oracle-release |
3737
| Docker| Docker version 18.03 or higher | docker version |
3838
| K8s | Kubernetes version 1.16.0+ | kubectl version
3939

40-
# 3. Prerequisites
40+
# Prerequisites
4141

42-
## 3.1 Verify OS Version
42+
## Verify OS Version
4343
OS version should be Oracle Linux 7.3 or higher. To check this, issue the following command:
4444

4545
# more /etc/oracle-release
4646
Oracle Linux Server release 7.5
4747

48-
## 3.2 Verify Docker Version and OUD Image
48+
## Verify Docker Version and OUD Image
4949
Docker version should be 18.03 or higher. To check this, issue the following command:
5050

5151
# docker version
@@ -60,14 +60,14 @@ The Oracle Unified Directory Image for 12cPS4 (12.2.1.4.0) should be loaded into
6060
oracle/oud 12.2.1.4.0 1855f331f5ef 10 days ago 945MB
6161
...
6262

63-
## 3.3 Verify Kubernetes Version
63+
## Verify Kubernetes Version
6464
Kubernetes version should be 1.16.0 or higher. Verify by running the following:
6565

6666
# kubectl version
6767
Client Version: version.Info{Major:"1", Minor:"18", GitVersion:"v1.18.4", GitCommit:"c96aede7b5205121079932896c4ad89bb93260af", GitTreeState:"clean", BuildDate:"2020-06-17T11:41:22Z", GoVersion:"go1.13.9", Compiler:"gc", Platform:"linux/amd64"}
6868
Server Version: version.Info{Major:"1", Minor:"18", GitVersion:"v1.18.4", GitCommit:"c96aede7b5205121079932896c4ad89bb93260af", GitTreeState:"clean", BuildDate:"2020-06-17T11:33:59Z", GoVersion:"go1.13.9", Compiler:"gc", Platform:"linux/amd64"}
6969

70-
## 3.4 Create Kubernetes Namespace
70+
## Create Kubernetes Namespace
7171
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.
7272

7373
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:
8686
kube-system Active 4d
8787
<strong>myoudns Active 53s</strong></pre>
8888

89-
## 3.5 Create Secrets for User IDs and Passwords
89+
## Create Secrets for User IDs and Passwords
9090

9191
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:
9292

@@ -101,7 +101,7 @@ To protect sensitive information, namely user IDs and passwords, you should crea
101101

102102
There are two ways by which Secret object can be created with required key-value pairs.
103103

104-
### 3.5.1 Using samples/secrets.yaml file
104+
### Using samples/secrets.yaml file
105105

106106
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.
107107

@@ -155,7 +155,7 @@ Verify that the secret has been created:
155155
default-token-fztcb kubernetes.io/service-account-token 3 15m
156156
<strong>oudsecret Opaque 8 99s</strong></pre>
157157

158-
### 3.5.2 Using `kubectl create secret` command
158+
### Using `kubectl create secret` command
159159

160160
Kubernetes Secret can be created using following command:
161161

@@ -189,7 +189,7 @@ After executing `kubectl create secret ...` command, verify that the secret has
189189
default-token-fztcb kubernetes.io/service-account-token 3 15m
190190
<strong>oudsecret Opaque 8 99s</strong></pre>
191191

192-
## 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
193193

194194
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.
195195
**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.
210210

211211
**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'**
212212

213-
## 3.7 Create PersistentVolume (PV) and PersistentVolumeClaim (PVC) for your Namespace
213+
## Create PersistentVolume (PV) and PersistentVolumeClaim (PVC) for your Namespace
214214
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.
215215

216216
Update the following to values specific to your environment:
@@ -272,7 +272,7 @@ Verify the PersistentVolumeClaim:
272272
Events: <none>
273273
Mounted By: <none>
274274

275-
# 4 Example 1 : Directory Server (instanceType=Directory)
275+
# Example 1 Directory Server (instanceType=Directory)
276276

277277
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.
278278

@@ -335,7 +335,7 @@ In the container, run ldapsearch to return entries from the directory server:
335335
...
336336
dn: uid=user.99,ou=People,dc=example1,dc=com
337337

338-
# 5 Example 2 : Directory Server (instanceType=Directory) as a Kubernetes Service
338+
# Example 2 Directory Server (instanceType=Directory) as a Kubernetes Service
339339

340340
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.
341341

@@ -421,7 +421,7 @@ From outside the cluster, you can invoke curl commands like following for access
421421
'https://<HOSTNAME>:<Https NodePort mapped to 1081>/iam/directory/oud/scim/v1/Schemas/urn:ietf:params:scim:schemas:core:2.0:Schema' \
422422
--header 'Authorization: Basic Y249RGlyZWN0b3J5IE1hbmFnZXI6T3JhY2xlMTIz' | json_pp
423423

424-
# 6 Example 3 : Proxy Server (instanceType=Proxy) as a Kubernetes Service
424+
# Example 3 Proxy Server (instanceType=Proxy) as a Kubernetes Service
425425

426426
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.
427427

@@ -497,7 +497,7 @@ From outside the cluster, you can invoke curl commands like following for access
497497
'https://<HOSTNAME>:<Https NodePort mapped to 1081>/iam/directory/oud/scim/v1/Schemas/urn:ietf:params:scim:schemas:core:2.0:Schema' \
498498
--header 'Authorization: Basic Y249RGlyZWN0b3J5IE1hbmFnZXI6T3JhY2xlMTIz' | json_pp
499499

500-
# 7 Example 4 : Replication Server (instanceType=Replication) as a Kubernetes Service
500+
# Example 4 Replication Server (instanceType=Replication) as a Kubernetes Service
501501

502502
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.
503503

@@ -594,7 +594,7 @@ From outside the cluster, you can invoke curl commands like following for access
594594
'https://<HOSTNAME>:<Https NodePort mapped to 1081>/iam/directory/oud/scim/v1/Schemas/urn:ietf:params:scim:schemas:core:2.0:Schema' \
595595
--header 'Authorization: Basic Y249RGlyZWN0b3J5IE1hbmFnZXI6T3JhY2xlMTIz' | json_pp
596596

597-
# 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)
598598

599599
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.
600600

@@ -697,7 +697,7 @@ From outside the cluster, you can invoke curl commands like following for access
697697
--header 'Authorization: Basic Y249RGlyZWN0b3J5IE1hbmFnZXI6T3JhY2xlMTIz' | json_pp
698698

699699

700-
# 8 Appendix A : Reference
700+
# Appendix Reference
701701

702702
Before using these sample yaml files, following variables are requried to be updated
703703
* %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
716716
* %bindPassword2% - With Base64 encoded value for bindPassword2 parameter.
717717

718718

719-
# samples/oudns.yaml
719+
## samples/oudns.yaml
720720

721721
This is a sample file to create Kubernetes namespace.
722722

723-
# samples/persistent-volume.yaml
723+
## samples/persistent-volume.yaml
724724

725725
This is a sample file to create Persistent volume and persistent volume claim
726726

727-
# samples/secrets.yaml
727+
## samples/secrets.yaml
728728

729729
This is a sample file to create the secrets which can be used to create secrets for the pods.
730730

@@ -746,23 +746,23 @@ TXlQYXNzd29yZA==
746746

747747
**Note**: Please make sure to use -n with echo command. Without that, Base64 values would be generated with new-line character included.
748748

749-
# samples/oud-dir-svc.yaml
749+
## samples/oud-dir-svc.yaml
750750

751751
This is a sample file to create 2 set of PODs and Services for OUD Instances
752752

753-
# samples/oud-dir-pod.yaml
753+
## samples/oud-dir-pod.yaml
754754

755755
This is a sample file to create POD (oudpod1) with container for OUD Directory Instance.
756756

757-
# samples/oud-ds_proxy-svc.yaml
757+
## samples/oud-ds_proxy-svc.yaml
758758

759759
This is a sample file to create:
760760
* POD (oudds1) with container for OUD Directory Instance (dc=example1,dc=com)
761761
* POD (oudds2) with container for OUD Directory Instance (dc=example2,dc=com)
762762
* 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
763763
* Service (oud-ds-proxy-svc) referring to POD with OUD Directory Proxy (oudp1)
764764

765-
# samples/oud-ds_rs_ds-svc.yaml
765+
## samples/oud-ds_rs_ds-svc.yaml
766766

767767
This is a sample file to create:
768768
* 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
778778
--trustAll --hostname oudpodrs1.oud-ds-rs-ds-svc.myoudns.svc.cluster.local --port 1444 \
779779
--dataToDisplay compat-view
780780

781-
# samples/oud-ds-plus-rs-svc.yaml
781+
## samples/oud-ds-plus-rs-svc.yaml
782782

783783
This is a sample file to create 3 replicated DS+RS Instances:
784784
* POD (ouddsrs1) with container for OUD Directory Server (dc=example1,dc=com) and Replication Server
@@ -802,4 +802,3 @@ All scripts and files hosted in this project and GitHub [fmw-kubernetes/OracleUn
802802
## Copyright<br>
803803
Copyright (c) 2020, Oracle and/or its affiliates.<br>
804804
Licensed under the Universal Permissive License v 1.0 as shown at https://oss.oracle.com/licenses/upl<br><br>
805-

0 commit comments

Comments
 (0)