تخطي إلى المحتوى الرئيسي

إيلوم كور

تكوين مخطط Ilum Core helm.

TL. د

$ خوذة الريبو إضافة ilum https://charts.ilum.cloud 
$ helm تثبيت ilum-core ilum / ilum-core

تثبيت المخطط

لتثبيت المخطط باسم الإصدار إيلوم كور :

$ helm تثبيت ilum-core ilum / ilum-core 

يتم نشر الأمر إيلوم كور على مجموعة Kubernetes في التكوين الافتراضي. ال البارامترات يسرد المعلمات التي يمكن تكوينها أثناء التثبيت.

إلغاء تثبيت الرسم البياني

لإلغاء تثبيت/حذف إيلوم كور نشر:

$ helm حذف ilum الأساسية 

يزيل الأمر جميع مكونات Kubernetes المقترنة بالمخطط ويحذف الإصدار.

البارامترات

المعلمات الشائعة

اسم وصف قيمة
الاسم تجاوز سلسلة لتجاوز قالب ilum-core.fullname جزئيا (سيحتفظ باسم الإصدار) ""
replicaCount عدد النسخ المتماثلة الأساسية 1
fullnameOverride سلسلة لتجاوز قالب ilum-core.fullname بالكامل ""
nodeSelector قيد تحديد عقدة ILUM-Core
التسامح تحمل كبسولات ILUM الأساسية []
تقارب تقارب عقدة ILUM الأساسية

معلمات النشر الأساسية ل ILUM

اسم وصف قيمة
صورة صورة ILUM-core ilum / الأساسية: 6.2.0
pullPolicy سياسة سحب الصور الأساسية ل ILUM إذا: لا يوجد
imagePullSecrets أسرار سحب الصور الأساسية من ILUM []

معلمات الاتصال الأساسية ILUM

اسم وصف قيمة
الاتصالات.النوع نوع اتصال ILUM-core مع وظائف Spark ، الخيارات المتاحة: جي بي سي , كافكا جي بي سي

معلمات الخدمة الأساسية ل ILUM

اسم وصف قيمة
الخدمة.النوع نوع خدمة ILUM-core ClusterIP
منفذ الخدمة منفذ خدمة ILUM-Core 9888
service.nodePort منفذ عقدة خدمة ILUM-Core - مطلوب عندما نوع هل موازن التحميل أو NodePort ""
service.clusterIP عنوان IP لمجموعة الخدمات الأساسية ilum - مطلوب عندما نوع هل ClusterIP ""
service.loadBalancerIP ilum-core موازن تحميل الخدمة IP - مطلوب عندما نوع هل موازن التحميل ""
الخدمة.التعليقات التوضيحية التعليقات التوضيحية للخدمة الأساسية ILUM {}

معلمات دخول ILUM الأساسية

اسم وصف قيمة
ingress.enabled علامة تمكين دخول ILUM الأساسية خطأ
ingress.version إصدار ILUM-core Ingress الإصدار 1
ingress.className اسم فئة دخول ILUM الأساسية ""
ingress.host مضيف دخول ILUM الأساسي مضيف
ingress.tls تكوين TLS للدخول الأساسي ILUM []
ingress.tls[x].secretName الاسم السري لدخول ILUM الأساسي للتقدم بطلب للحصول على إدخال تكوين TLS واحد
ingress.tls[x].hosts قائمة مضيفي الدخول الأساسية ل ILUM للتقدم بطلب للحصول على إدخال تكوين TLS واحد
ingress.annotations التعليقات التوضيحية لدخول ILUM الأساسية بتنسيق YAML nginx.ingress.kubernetes.io/rewrite-target: / 1 دولار
nginx.ingress.kubernetes.io/proxy-body-size: "600 م"
nginx.org/client-max-body-size: "600 م"
ingress.path مسار دخول ILUM الأساسي /(.*)
ingress.pathType مسار دخول ilum-core Type بادئه

حيوية ilum-core المعلمات المسبار/الجاهزية

اسم وصف قيمة
مسبار الاستعداد تكوين مسبار جاهزية ilum-core
الاستعدادمسبار: 
عتبة الفشل: 3
احصل على:
المسار: /api/dev/reactive/health
ميناء: HTTP
المخطط: HTTP
initialDelaySeconds: 60
فترةالثواني: 10
successThreshold: 1
مهلةالثواني: 1
livenessمسبار تكوين مسبار ilum-core liveness
مسبار الحيوية: 
عتبة الفشل: 3
احصل على:
المسار: /api/dev/reactive/health
ميناء: HTTP
المخطط: HTTP
initialDelaySeconds: 60
فترةالثواني: 10
successThreshold: 1
مهلةالثواني: 1

معلمات ILUM-Core Mongo

اسم وصف قيمة
mongo.instances مثيلات ILUM-Core Mongo للاتصال بها مونغو: 27017
mongo.replicaSetName اسم مجموعة النسخة المتماثلة من ilum-core mongo RS0
mongo.statusProbe.enanbled علامة ILUM-Core Mongo HealthCheck صحيح
mongo.statusProbe.image ilum-core mongo healthcheck صورة ILUM / Mongodb: 6.0.5

معلمات ILUM-core Kafka

اسم وصف قيمة
kafka.address عنوان ILUM-core Kafka للاتصال به كافكا: 9092
kafka.requestالحجم ILUM-core Kafka max.request.size المعلمة لوظائف ILUM منتجي كافكا 20000000
kafka.maxPollRecords معلمة ilum-core kafka max.poll.records لمستهلكين ILUM Jobs Kafka 500
kafka.maxPollInterval معلمة ILUM-Core Kafka max.poll.interval.ms لوظائف ILUM KAFKA المستهلكين 60000
kafka.statusProbe.enanbled علم ILUM-Core Kafka HealthCheck صحيح
kafka.statusProbe.image ilum-core kafka healthcheck صورة بيتنامي/كافكا:3.4.1

معلمات خدمة ILUM-Core GRPC

اسم وصف قيمة
grpc.service.type ILUM-Core نوع خدمة GRPC ClusterIP
grpc.service.port منفذ خدمة ILUM-Core GRPC 9999
grpc.service.nodePort منفذ عقدة خدمة ILUM-Core GRPC - مطلوب عندما نوع هل موازن التحميل أو NodePort ""
grpc.service.clusterIP عنوان IP لمجموعة خدمة grpc النواة ilum - مطلوب عندما نوع هل ClusterIP ""
grpc.service.loadBalancerIP موازن تحميل خدمة grpc ilum-core IP - مطلوب عندما نوع هل موازن التحميل ""
grpc.service.annotations التعليقات التوضيحية لخدمة ILUM-Core GRPC {}

معلمات ILUM-Core GRPC لوظيفة الشرارة

اسم وصف قيمة
grpc.job.host مضيف ILUM-Core GRPC لمهمة Spark للاتصال به ILUM-GRPC
grpc.job.port منفذ ILUM-Core GRPC لمهمة الشرارة للاتصال به 9999

معلمات مهيئ نظام المجموعة Ilum-Core Kubernetes

اسم وصف قيمة
kubernetes.initClusterOnStartup علامة تهيئة نظام مجموعة Kubernetes الافتراضي ل ILUM-Core صحيح
kubernetes.upgradeClusterOnStartup ترقية نظام مجموعة Ilum-Core الافتراضي Kubernetes من القيم الموجودة في علامة خريطة التكوين خطأ
kubernetes.api.url ilum-core الافتراضي Kubernetes cluster API URL https://kubernetes.default.svc
kubernetes.container.image صورة حاوية نظام مجموعة Kubernetes الافتراضية ل ILUM-Core ILUM / شرارة: 3.5.2-دلتا
kubernetes.sparkNamespace ILUM-Core مساحة اسم نظام مجموعة Kubernetes الافتراضية لتخزين موارد Spark {{ . Release.Namespace }}
kubernetes.storage.type نوع تخزين نظام المجموعة الافتراضي Kubernetes من ILUM-CORE، الخيارات المتاحة: ق3 , جي سي إس , الواب , HDFS ق3

معلمات تخزين S3 Kubernetes

اسم وصف قيمة
kubernetes.s3.host ilum-core افتراضي kubernetes cluster مضيف تخزين S3 لتخزين موارد spark ق3
kubernetes.s3.port منفذ تخزين مجموعة Kubernetes الافتراضي S3 لتخزين موارد Spark 7000
kubernetes.s3.sparkBucket مستودع تخزين مجموعة Kubernetes S3 الافتراضي ل ilum-core لتخزين موارد Spark ملفات ILUM
kubernetes.s3.dataBucket مستودع تخزين ilum-core الافتراضي Kubernetes cluster S3 لتخزين جداول ilum جداول ILUM
kubernetes.s3.accessKey مفتاح الوصول إلى تخزين ilum-core الافتراضي لمجموعة Kubernetes S3 لتخزين موارد Spark ""
kubernetes.s3.secretKey ilum-core الافتراضي kubernetes cluster S3 مفتاح السري للتخزين موارد Spark ""

معلمات تخزين GCS Kubernetes

اسم وصف قيمة
البريد الإلكتروني kubernetes.gcs.client ilum-core الافتراضي kubernetes cluster GCS تخزين البريد الإلكتروني لعميل ""
kubernetes.gcs.sparkBucket مستودع تخزين نظام مجموعة kubernetes الافتراضي ل ilum-core لتخزين موارد spark "ملفات ILUM"
kubernetes.gcs.dataBucket مستودع تخزين نظام مجموعة kubernetes الافتراضي ل ilum-core لتخزين جداول ilum "جداول ILUM"
kubernetes.gcs.privateKey ilum-core الافتراضي kubernetes cluster GCS تخزين المفتاح الخاص لتخزين موارد spark ""
kubernetes.gcs.privateKeyId ilum-core الافتراضي kubernetes cluster معرف المفتاح الخاص لتخزين GCS لتخزين موارد spark ""

معلمات تخزين WASBS Kubernetes

اسم وصف قيمة
kubernetes.wasbs.accountName ilum-core الافتراضي kubernetes cluster اسم حساب تخزين WASBS ""
kubernetes.wasbs.accessKey مفتاح الوصول إلى تخزين WASBS لمجموعة kubernetes الافتراضي ilum-core لتخزين موارد الشرارة ""
kubernetes.wasbs.sparkContainer ilum-core الافتراضي kubernetes cluster اسم حاوية تخزين WASBS لتخزين موارد الشرارة "ملفات ILUM"
kubernetes.wasbs.dataContainer ilum-core الافتراضي kubernetes مجموعة اسم حاوية تخزين WASBS لتخزين جداول ilum "جداول ILUM"

معلمات تخزين HDFS Kubernetes

اسم وصف قيمة
kubernetes.hdfs.hadoopاسم المستخدم ilum-core الافتراضي kubernetes cluster HDFS تخزين hadoop اسم مستخدم ""
kubernetes.hdfs.config ilum-core افتراضي kubernetes cluster HDFS تخزين dicture لملفات التكوين مع الاسم كمفتاح ومحتوى مشفر base64 كقيمة ""
kubernetes.hdfs.sparkكتالوج كتالوج تخزين HDFS لمجموعة kubernetes الافتراضي ilum-core لتخزين موارد الشرارة "ملفات ILUM"
kubernetes.hdfs.dataCatalog كتالوج تخزين HDFS لمجموعة kubernetes الافتراضي ilum-core لتخزين جداول ilum "جداول ILUM"
kubernetes.hdfs.keyTab ilum-core الافتراضي kubernetes cluster HDFS تخزين مفتاح تبويب ملف base64 المحتوى المشفر ""
kubernetes.hdfs.principal ilum-core الافتراضي kubernetes cluster الاسم الأساسي لتخزين HDFS ""
kubernetes.hdfs.krb5 ilum-core الافتراضي kubernetes cluster HDFS تخزين ملف krb5 قاعدة 64 محتوى مشفر ""
kubernetes.hdfs.trustStore ilum-core الافتراضي kubernetes cluster HDFS storage trustStore file base64 المحتوى المشفر ""
kubernetes.hdfs.logدليل ilum-core الافتراضي kubernetes cluster HDFS دليل الدليل لتخزين eventLog لخادم المحفوظات ""

مهم! تأكد من إنشاء حاويات S3 / GCS أو حاويات WASBS بالفعل ويمكن الوصول إليها! مهم! تأكد من أن HDFS logDirectory هو المسار المطلق ل sparkCatalog الذي تم تكوينه مع لاحقة /ilum/logs! على سبيل المثال hdfs://name-node/user/username/spark-catalog/ilum/logs

معلمات الأمان الأساسية ل ILUM

اسم وصف قيمة
الأمانية.type نوع مصادقة ILUM-CORE، الخيارات المتاحة: داخلي , LDAP , أووث2 داخلي
security.jwt.issuerUrl معرف الموارد المنتظم (URI) للواجهة الأمامية للنواة imlum المستخدم في المطالبة jwt ISS https://ilum.cloud
security.jwt.timeToLive وقت ILUM-Core JWT للعيش في وحدات زمنية محددة 8 ساعات
security.jwt.publicKey سلسلة مشفرة iLum-Core base64 تحتوي على السلسلة المفتاح العام X.509 RSA 2048 بت ""
security.jwt.privateKey سلسلة مشفرة iLum-Core base64 تحتوي على السلسلة مفتاح خاص PKCS8 RSA 2048 بت ""
الأمن.السلطات تكوين قواعد رسم خرائط السلطات الأساسية ل ILUM. يستخدم عندما يكون التفويض LDAP أو أووث2 . يسمح بترجمة مجموعات ونطاقات موفري المصادقة الخارجية إلى أدوار ilum
السلطات: 
ادوار:
البادئة: ROLE_
اسم المطالبة: المجموعات
نطاقات:
البادئة: SCOPE__
اسم المطالبة: SCP
security.authorities.roles.prefix بادئة دور المصادقة الأساسية ل ILUM دور_
security.authorities.roles.claimName معرف موفر المصادقة الخارجية ilum-core لمطالبة JWT التي تحتوي على قائمة بالأدوار/المجموعات المجموعات
security.authorities.roles.mappings تعريفات تعيين الأدوار الأساسية ل ILUM في شكل خريطة external_role: ilum_role {}
security.authorities.scopes.prefix بادئة نطاق مصادقة ILUM الأساسية نطاق_
security.authorities.scopes.claimName معرف موفر المصادقة الخارجية ilum-core لمطالبة JWT التي تحتوي على قائمة بالنطاقات اللجنه
security.authorities.scopes.mappings تعريفات تخطيط النطاق الأساسي ILUM في شكل خريطة external_scope: ilum_scope {}

معلمات المصادقة الداخلية المستندة إلى خريطة التكوين

اسم وصف قيمة
security.internal.users تكوين المستخدمين الداخليين ل ILUM-Core
المستعملون: 
- اسم المستخدم: "admin"
password: "admin"
ادوار:
- "المشرف"
security.internal.users[].username اسم مستخدم ILUM-core ""
security.internal.users[].password كلمة مرور عادية للمستخدم ILUM-Core ""
security.internal.users[].roles أدوار المستخدم الأساسية ل ILUM، الخيارات المتاحة: المشرف , مستخدم , المشاهد []

معلمات المصادقة المستندة إلى LDAP

اسم وصف قيمة
security.ldap.urls عناوين URL ل LDAP الأساسية للخادم []
security.ldap.base اللاحقة الأساسية LDAP الأساسية للنواة التي يجب أن تنشأ منها جميع العمليات ""
security.ldap.username ilum-core LDAP اسم مستخدم الخادم ""
security.ldap.password كلمة مرور تسجيل الدخول إلى ilum-core LDAP للخادم ""
security.ldap.passwordEncoder ilum-core LDAP رمز المرور. يصادق خادم LDAP على المستخدمين (عمليات الربط) إذا كانت فارغة، فإن الخيارات المتاحة:
التكيف - برنامج تشفير كلمة المرور الذي يفوض إلى برنامج تشفير آخر بناء على معرف البادئة
بكريبت
MD5
ش256
""
security.ldap.userSearch.base الاسم المميز الأساسي ل LDAP الأساسي ilum الذي يجب أن يتم من خلاله البحث عن مستخدم ""
security.ldap.userSearch.filter نمط LDAP الأساسي ilum لاستخدامه لبحث المستخدم. 0 هو اسم المستخدم uid = {0}
security.ldap.userSearch.passwordAttr معرف LDAP ilum-core للسمة التي تحتوي على كلمة مرور المستخدم كلمة مرور المستخدم
security.ldap.groupSearch.base الاسم المميز الأساسي ل LDAP الأساسي الذي يجب أن يتم من خلاله البحث عن عضوية المجموعة ""
security.ldap.groupSearch.filter نمط LDAP الأساسي ilum لاستخدامه في البحث الجماعي. 0 هو الاسم المميز للمستخدم (عضو = {0})
security.ldap.groupSearch.roleAttr معرف LDAP ilum-core للسمة التي تحتوي على اسم الدور لمجموعة سي إن

معلمات المصادقة المستندة إلى OAuth2

اسم وصف قيمة
security.oauth2.clientId ilum-core oauth2 معرف العميل ""
security.oauth2.clientSecret ilum-core oauth2 سر العميل ""
security.oauth2.issuerUri ilum-core oauth2 URI الذي يمكن أن يكون إما نقطة نهاية اكتشاف OpenID Connect أو نقطة نهاية بيانات تعريف خادم تفويض OAuth 2.0 المحددة بواسطة RFC 8414. ""

معلمات ترخيص ILUM-Core

اسم وصف قيمة
license.privateKey مفتاح ترخيص ILUM ""

معلمات إرسال الشرارة الخارجية ILUM-core

اسم وصف قيمة
externalSparkSubmit.enabled علامة ILUM-core الخارجية Spark-Send خطأ
externalSparkSubmit.image ilum-core الخارجية Spark-Send الصور الأساسية ILUM / شرارة قاذفة: SPARK-3.5.1
externalSparkSubmit.resources ilum-core خارجي Spark-Send Pod موارد Kubernetes <pre>الحدود:<br/> الذاكرة: "500Mi"الطلبات<br/>:<br/> الذاكرة: "300Mi"</pre>

معلمات خادم محفوظات Spark ILUM الأساسية

اسم وصف قيمة
historyServer.enabled علامة خادم محفوظات Spark ILUM-Core صحيح
historyServer.image صورة خادم محفوظات ILUM-Core Spark ILUM / شرارة قاذفة: SPARK-3.5.1
historyServer.address عنوان خادم محفوظات ILUM-Core Spark http://ilum-history-server:9666
historyServer.pullPolicy سياسة سحب صورة خادم محفوظات Spark ILUM الأساسية إذا: لا يوجد
historyServer.imagePullSecrets ilum-core Spark History Server أسرار سحب صورة الخادم []
historyServer.parameters معلمات الشرارة المخصصة لخادم Spark Server-Core
spark.history.fs.cleaner.enabled: صحيح 
spark.history.fs.cleaner.interval: 1d
spark.history.fs.cleaner.maxالعمر: 7d
historyServer.resources موارد جراب خادم سجل Spark ILUM-Core
حدود: 
الذاكرة: "500Mi"
الطلبات:
الذاكرة: "300Mi"
historyServer.service.type ILUM-Core Spark History نوع الخدمة ClusterIP
historyServer.service.port منفذ خدمة خادم محفوظات Spark الأساسي ILUM 9666
historyServer.service.nodePort ilum-core spark خادم خادم nodePort ""
historyServer.service.clusterIP ilum-core Spark Service Service clusterIP ""
historyServer.service.loadBalancerIP ilum-core Spark History خادم خدمة loadbalancerIP ""
historyServer.service.annotations التعليقات التوضيحية لخدمة خادم محفوظات ILUM الأساسية {}
historyServer.ingress.enabled علامة دخول خادم سجل الشرارة ILUM-core خطأ
historyServer.ingress.version إصدار ILUM-Core Spark History Server Ingress "v1"
historyServer.ingress.className ilum-core spark تاريخ الفئة دخول الخادم ""
historyServer.ingress.host مضيف دخول خادم سجل Spark الأساسي ILUM "المضيف"
historyServer.ingress.path مسار دخول خادم محفوظات الشرارة الأساسية "/(.*)"
historyServer.ingress.pathType ilum-core spark مسار دخول خادم نوع بادئه
historyServer.ingress.annotations التعليقات التوضيحية لخادم محفوظات ILUM-Core Spark nginx.ingress.kubernetes.io/rewrite-target: / 1 دولار
nginx.ingress.kubernetes.io/proxy-body-size: "600 م"
nginx.org/client-max-body-size: "600 م"
historyServer.statusProbe.enabled علامة ILUM-Core Spark History Server ilum-core HealthCheck صحيح
historyServer.statusProbe.image ilum-core Spark History Server ilum-Core HealthCheck صورة curlimages / حليقة: 8.5.0
historyServer.nodeSelectأو ilum-core spark ملقم المحفوظات nodeSelector
historyServer.tolerations ILUM-Core Spark History Servers Totolerance []
historyServer.affinity تقارب خادم سجل Spark الأساسي ILUM

معلمات وظيفة ILUM الأساسية

اسم وصف قيمة
الوظيفة.الاحتفاظ بساعات ILUM-Core Spark Jobs الحد الأقصى لساعات الاحتفاظ 168
job.prometheus.enabled وظائف ILUM-Core Spark تم تمكين Prometheus Flag صحيح
job.healthcheck.enabled ILUM-Core Spark Jobs HealthCheck تم تمكين العلامة صحيح
job.healthcheck.interval ILUM-Core Spark Jobs HealthCheck الفاصل الزمني في الثواني 300
job.healthcheck.tolerance وظائف ILUM-Core Spark Healthتحقق من تحمل وقت الاستجابة في الثواني 120
job.memorysettings.executors ILUM-Core Spark Jobs عدد المنفذ 2
job.memorysettings.executorMemory ILUM-Core Spark Jobs تخصيص الذاكرة المنفذة 1 جرام
job.memorysettings.driverMemory وظائف ILUM-Core Spark تخصيص ذاكرة برنامج التشغيل 1 جرام
job.memorysettings.executorCores ILUM-Core Spark Jobs العدد الأساسي للتنفيذ 1
job.memorysettings.driverCores وظائف ILUM-Core Spark العدد الأساسي للسائق 1
job.memorysettings.dynamicAllocationEnabled علامة تمكين التخصيص الديناميكي لوظائف ILUM-Core Spark خطأ
job.memorysettings.minExecutors وظائف ILUM-Core Spark الحد الأدنى لعدد المنفذين 0
job.memorysettings.initialExecutors وظائف ILUM-Core Spark العدد الأولي للمنفذين 0
job.memorysettings.maxExecutors وظائف ILUM-Core Spark الحد الأقصى لعدد المنفذين 20

معلمات المخزن التعريفي الافتراضية ILUM-core

اسم وصف قيمة
metastore.enabledعلامة تمكين Hive MetaStore الافتراضية ل ILUM-core خطأ
metastore.hive.addressعنوان Hive MetaStore الافتراضي ILUM-core thrift://ilum-hive-metastore:9083
metastore.hive.versionإصدار iLum-Core الافتراضي Hive MetaStore 3.1.3

إعدادات الإيقاف المؤقت التلقائي ل ILUM-Core

اسم وصف قيمة
job.autoPause.enabled علامة الإيقاف المؤقت التلقائي لمجموعة ILUM-Core صحيح
job.autoPause.idleTime إيقاف ILUM-Core التلقائي للإيقاف المؤقت للحد الأدنى من وقت خمول المجموعة بالثواني 3600
job.autoPause.period وقت ILUM-Core بين فحوصات الخمول الجماعي بالثواني 180

إنشاء مفتاح RSA الخاص والعام

لإنشاء مفاتيح RSA 2048 بت بتنسيق Base64 PEM PKCS#8 غير مشفر لتكوين المصادقة، تم إستخدام openssl.

إنشاء مفتاح خاص

openssl genpkey -algorithm RSA \ 
-pkeyopt rsa_keygen_bits:2048 \
-pkeyopt rsa_keygen_pubexp: 65537 | \
OpenSSL PKCS8 -TOK8 -NOCRYPT -outform PEM > المفتاح الخاص.p8

يجب أن تبدو محتويات المفتاح الخاص كما يلي:

-----ابدأ المفتاح الخاص----- 
MIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQCsRnE83rm6BJya
nTyzVqX0SG+D4zBjkyWsOmGG+CoDdgQ6Z8AaocmnjP1SbRykQsQSMf6SeW+fdpH+
ccmzuHe7pZIa2o2Mg8xbk/UszJDaPztwoQbUt/2gHi/rZP8cIVkquzhnN/yxrMls
...
----- المفتاح الخاص النهائي-----

من أجل استخدام المفتاح الخاص كإعداد security.jwt.privateKey ، وإزالة الرأس والتذييل من المفتاح.

استخراج المفتاح العام

openssl pkey -pubout -إعلام PEM -outform pem -in private-key.p8 -out public-key.spki 

يجب أن تبدو محتويات المفتاح العام كما يلي:

-----ابدأ المفتاح العام----- 
MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEArEZxPN65ugScmp08s1al
9Ehvg+MwY5MlrDphhvgqA3YEOmfAGqHJp4z9Um0cpELEEjH+knlvn3aR/nHJs7h3
u6WSGtqNjIPMW5P1LMyQ2j87cKEG1Lf9oB4v62T / HCFZKrs4Zzf8sazJbMN3E / mJ
...
-----المفتاح العام النهائي-----

من أجل استخدام المفتاح العام كإعداد security.jwt.publicKey ، وإزالة الرأس والتذييل من المفتاح.