From 82538e825e94cc29ba9811ca5721f2c3d1936017 Mon Sep 17 00:00:00 2001 From: Parul Singh Date: Fri, 11 Sep 2020 16:32:03 -0400 Subject: [PATCH 1/6] quantum on learn.openshift.com --- quantum-computing-pathway.json | 11 ++++ quantum-computing/qiskit/01-installation.md | 49 ++++++++++++++ .../qiskit/02-exploring-the-deploy.md | 13 ++++ .../qiskit/03-example-workload.md | 5 ++ .../04-intro-ocp-ibm-quantum-operator.md | 9 +++ .../05-installation-ocp-ibm-quantum-op.md | 49 ++++++++++++++ .../qiskit/06-exploring-the-deploy.md | 13 ++++ .../qiskit/assets/configure-scenario.sh | 10 +++ quantum-computing/qiskit/env-init.sh | 0 quantum-computing/qiskit/finish.md | 1 + quantum-computing/qiskit/index.json | 64 +++++++++++++++++++ quantum-computing/qiskit/intro.md | 11 ++++ quantum-computing/qiskit/set-env.sh | 9 +++ 13 files changed, 244 insertions(+) create mode 100644 quantum-computing-pathway.json create mode 100644 quantum-computing/qiskit/01-installation.md create mode 100644 quantum-computing/qiskit/02-exploring-the-deploy.md create mode 100644 quantum-computing/qiskit/03-example-workload.md create mode 100644 quantum-computing/qiskit/04-intro-ocp-ibm-quantum-operator.md create mode 100644 quantum-computing/qiskit/05-installation-ocp-ibm-quantum-op.md create mode 100644 quantum-computing/qiskit/06-exploring-the-deploy.md create mode 100755 quantum-computing/qiskit/assets/configure-scenario.sh create mode 100644 quantum-computing/qiskit/env-init.sh create mode 100644 quantum-computing/qiskit/finish.md create mode 100644 quantum-computing/qiskit/index.json create mode 100644 quantum-computing/qiskit/intro.md create mode 100644 quantum-computing/qiskit/set-env.sh diff --git a/quantum-computing-pathway.json b/quantum-computing-pathway.json new file mode 100644 index 000000000..c1ce9684d --- /dev/null +++ b/quantum-computing-pathway.json @@ -0,0 +1,11 @@ +{ + "title": "Quantum computing on OpenShift", + "icon": "fa-openshift", + "courses": [ + { + "external_link": "https://learn.openshift.com/quantum-computing/qiskit/", + "course_id": "qiskit", + "title": "Qiskit Quantum Computing on OpenShift" + } + ] +} diff --git a/quantum-computing/qiskit/01-installation.md b/quantum-computing/qiskit/01-installation.md new file mode 100644 index 000000000..efd08f78e --- /dev/null +++ b/quantum-computing/qiskit/01-installation.md @@ -0,0 +1,49 @@ +
+ +This installation method will use the latest version of the operator image that has been built and published to quay. + +``cd openshift-quantum-operators/operators-examples/openshift-qiskit-operator/operator``{{execute}} + +## Create a project +Create a new project +``oc new-project quantum-katacoda``{{execute}} + +## Custom Resource Definition +Deploy the custom resource definition (CRD) +``oc create -f deploy/crds/singhp11.io_qiskitplaygrounds_crd.yaml``{{execute}} + +## Deploy the RBAC configuration: +``oc apply -f deploy/role.yaml``{{execute}} +``oc apply -f deploy/service_account.yaml``{{execute}} +``oc apply -f deploy/role_binding.yaml``{{execute}} + +## Setting up authorization with IBMQ Account token + +Insert the value of the account token into the secret.cfg file. + +``vi deploy/secret.cfg``{{execute}} + +NOTE: Use the token provided to you at https://quantum-computing.ibm.com/account. + +``` +[AUTH TOKENS] +token = your_IBMQ_account_token +``` + +## Create the secret +``oc create secret generic qiskit-secret --from-file=qiskit-secret.cfg=deploy/secret.cfg``{{execute}} + + +## Deploy the operator itself: + +``oc apply -f deploy/operator.yaml``{{execute}} + +## Wait for the operator pod deployment to complete: + +``oc get pods -w``{{execute}} + +NOTE: When the pods are running enter Ctrl+c + + +## Deploy an instance of the custom resource: +``oc create -f deploy/crds/singhp11.io_v1_qiskitplayground_cr.yaml``{{execute}} \ No newline at end of file diff --git a/quantum-computing/qiskit/02-exploring-the-deploy.md b/quantum-computing/qiskit/02-exploring-the-deploy.md new file mode 100644 index 000000000..bd62e5bc2 --- /dev/null +++ b/quantum-computing/qiskit/02-exploring-the-deploy.md @@ -0,0 +1,13 @@ +
+ +## The notebook is found on the exposed route +``oc get routes -w``{{execute}} + +## Accessing the notebook + +1. Click on "Console" in the right hand top bar +2. Click on "Projects" and search for "quantum-katacoda" +3. Click on "quantum-katacoda" to land on the project dashboard +4. Click on "Networking -> Routes" on the left hand side panel +5. Click on the url for "example-qiskitplayground" under "Location" +6. Run the sample notebooks \ No newline at end of file diff --git a/quantum-computing/qiskit/03-example-workload.md b/quantum-computing/qiskit/03-example-workload.md new file mode 100644 index 000000000..c5a3d6ca7 --- /dev/null +++ b/quantum-computing/qiskit/03-example-workload.md @@ -0,0 +1,5 @@ +
+ +## Test the Jupyter Notebook + +Explore quantum circuits following https://qiskit.org/documentation/tutorials/circuits/1_getting_started_with_qiskit.html or run any of the sample notebook attached with the operator diff --git a/quantum-computing/qiskit/04-intro-ocp-ibm-quantum-operator.md b/quantum-computing/qiskit/04-intro-ocp-ibm-quantum-operator.md new file mode 100644 index 000000000..c7da89abd --- /dev/null +++ b/quantum-computing/qiskit/04-intro-ocp-ibm-quantum-operator.md @@ -0,0 +1,9 @@ +
+ +# Introduction + +## OpenShift IBM Quantum Operator + +OpenShift IBM quantum operator creates a flexible serving system for quantum circuits implemented in Qiskit. You can submit quantum workloads implemented in Qiskit which are executed on IBM Quantum Experience. Workloads are executed as pods, orchestrated and managed by Kube APIs. + +For getting started guides, installation, deployment and test OpenShift IBM quantum operator follow next steps. diff --git a/quantum-computing/qiskit/05-installation-ocp-ibm-quantum-op.md b/quantum-computing/qiskit/05-installation-ocp-ibm-quantum-op.md new file mode 100644 index 000000000..f2fe48b73 --- /dev/null +++ b/quantum-computing/qiskit/05-installation-ocp-ibm-quantum-op.md @@ -0,0 +1,49 @@ +
+ +This installation method will use the latest version of the operator image that has been built and published to quay. + +``cd openshift-quantum-operators/operators-examples/openshift-ibm-quantum-operator/operator/``{{execute}} + +## Use/Create a project +Create a new project +``oc new-project quantum-katacoda``{{execute}} + +## Custom Resource Definition +Deploy the custom resource definition (CRD) +``oc create -f deploy/crds/singhp11.io_ibmqes_crd.yaml``{{execute}} + +## Deploy the RBAC configuration: +``oc apply -f deploy/role.yaml``{{execute}} +``oc apply -f deploy/service_account.yaml``{{execute}} +``oc apply -f deploy/role_binding.yaml``{{execute}} + +## Setting up authorization with IBMQ Account token + +Insert the value of the account token into the secret.cfg file. + +``vi deploy/secret.cfg``{{execute}} + +NOTE: Use the token provided to you at https://quantum-computing.ibm.com/account. + +``` +[AUTH TOKENS] +token = your_IBMQ_account_token +``` + +## Create the secret +``oc create secret generic qiskit-secret --from-file=qiskit-secret.cfg=deploy/secret.cfg``{{execute}} + + +## Deploy the operator itself: + +``oc apply -f deploy/operator.yaml``{{execute}} + +## Wait for the operator pod deployment to complete: + +``oc get pods -w``{{execute}} + +NOTE: When the pods are running enter Ctrl+c + + +## Deploy an instance of the custom resource: +``oc apply -f deploy/crds/singhp11.io_v1_ibmqe_cr.yaml``{{execute}} \ No newline at end of file diff --git a/quantum-computing/qiskit/06-exploring-the-deploy.md b/quantum-computing/qiskit/06-exploring-the-deploy.md new file mode 100644 index 000000000..6427dcdcb --- /dev/null +++ b/quantum-computing/qiskit/06-exploring-the-deploy.md @@ -0,0 +1,13 @@ +
+ +## Accessing the serving system +OpenShift IBM Quantum circuit serving system can be accessed using the exposed route +``oc get routes -w``{{execute}} + +## Accessing the notebook + +1. Click on "Console" in the right hand top bar +2. Click on "Projects" and search for "quantum-katacoda" +3. Click on "quantum-katacoda" to land on the project dashboard +4. Click on "Networking -> Routes" on the left hand side panel +5. The url for "ibmqe" is under "Location" diff --git a/quantum-computing/qiskit/assets/configure-scenario.sh b/quantum-computing/qiskit/assets/configure-scenario.sh new file mode 100755 index 000000000..5e6e349f1 --- /dev/null +++ b/quantum-computing/qiskit/assets/configure-scenario.sh @@ -0,0 +1,10 @@ +#!/bin/bash +echo "Cloning git repository" + +git clone https://github.com/qiskit-community/openshift-quantum-operators.git openshift-quantum-operators &> /dev/null +cd openshift-quantum-operators/ &> /dev/null + +echo "Git clone complete and OpenShift Ready ...." + +export PS1="$ " +stty echo diff --git a/quantum-computing/qiskit/env-init.sh b/quantum-computing/qiskit/env-init.sh new file mode 100644 index 000000000..e69de29bb diff --git a/quantum-computing/qiskit/finish.md b/quantum-computing/qiskit/finish.md new file mode 100644 index 000000000..acd36a435 --- /dev/null +++ b/quantum-computing/qiskit/finish.md @@ -0,0 +1 @@ +Thank you for trying the playground. For individual exercises on using OpenShift, see the home page of our [OpenShift interactive learning portal](https://learn.openshift.com) diff --git a/quantum-computing/qiskit/index.json b/quantum-computing/qiskit/index.json new file mode 100644 index 000000000..15469d922 --- /dev/null +++ b/quantum-computing/qiskit/index.json @@ -0,0 +1,64 @@ +{ + "icon": "fa-openshift", + "title": "Qiskit Quantum Computing on OpenShift (OpenShift 4.4)", + "description": "", + "pathwayTitle": "OpenShift", + "difficulty": "advanced", + "time": "60 minutes", + "backend": { + "imageid": "openshift-4-4" + }, + "environment": { + "showdashboard": true, + "dashboards": [ + { + "name": "Console", + "href": "https://console-openshift-console-[[HOST_SUBDOMAIN]]-443-[[KATACODA_HOST]].environments.katacoda.com" + } + ], + "uilayout": "terminal-iframe" + }, + "details": { + "steps": [ + { + "title": "Installation", + "text": "01-installation.md" + }, + { + "title": "Step 2 - Exploring the Deployment", + "text": "02-exploring-the-deploy.md" + }, + { + "title": "Step 3 - Example workload", + "text": "03-example-workload.md" + }, + { + "title": "Step 4 - Introduction to OpenShift IBM Quantum Operator", + "text": "04-intro-ocp-ibm-quantum-operator.md" + }, + { + "title": "Step 5 - Installing OpenShift IBM Quantum Operator", + "text": "05-installation-ocp-ibm-quantum-op.md" + }, + { + "title": "Step 6 - Testing IBM Quantum Operator", + "text": "06-exploring-the-deploy.md" + } + ], + "intro": { + "code": "set-env.sh", + "text": "intro.md" + }, + "finish": { + "text": "finish.md" + }, + "assets": { + "client": [ + { + "file": "configure-scenario.sh", + "target": "/var/tmp/" + } + ] + } + } +} \ No newline at end of file diff --git a/quantum-computing/qiskit/intro.md b/quantum-computing/qiskit/intro.md new file mode 100644 index 000000000..adf1d93bb --- /dev/null +++ b/quantum-computing/qiskit/intro.md @@ -0,0 +1,11 @@ +## Goal + +This lab will allow you to test how you can integrate quantum workloads in OpenShift. + +## Concepts + +* Jupyter Notebook +* Qiskit + +## Requirement +You will need to create an account at https://quantum-computing.ibm.com/ once the account has been created. Go to the account menu(https://quantum-computing.ibm.com/account) and copy the token as it will be used during installation. diff --git a/quantum-computing/qiskit/set-env.sh b/quantum-computing/qiskit/set-env.sh new file mode 100644 index 000000000..8a8f3f05e --- /dev/null +++ b/quantum-computing/qiskit/set-env.sh @@ -0,0 +1,9 @@ +#!/bin/bash + +echo "Initializing..." +stty -echo +clear +until $(ls /var/tmp/configure-scenario.sh &> /dev/null); do (echo -n .; sleep 2); done; +clear +stty echo +/bin/bash /var/tmp/configure-scenario.sh From d8d357df22934134f4ef4ace7bce026556ae82e0 Mon Sep 17 00:00:00 2001 From: Parul Singh Date: Tue, 13 Oct 2020 11:01:57 -0400 Subject: [PATCH 2/6] add description in index.json --- quantum-computing/qiskit/01-installation.md | 9 ++++++--- quantum-computing/qiskit/index.json | 15 +++++++++------ 2 files changed, 15 insertions(+), 9 deletions(-) diff --git a/quantum-computing/qiskit/01-installation.md b/quantum-computing/qiskit/01-installation.md index efd08f78e..d7516e333 100644 --- a/quantum-computing/qiskit/01-installation.md +++ b/quantum-computing/qiskit/01-installation.md @@ -18,8 +18,7 @@ Deploy the custom resource definition (CRD) ``oc apply -f deploy/role_binding.yaml``{{execute}} ## Setting up authorization with IBMQ Account token - -Insert the value of the account token into the secret.cfg file. +Navigate to secret.cfg in the katacoda built in editor and insert the value of the account token into the secret.cfg file. ``vi deploy/secret.cfg``{{execute}} @@ -46,4 +45,8 @@ NOTE: When the pods are running enter Ctrl+c ## Deploy an instance of the custom resource: -``oc create -f deploy/crds/singhp11.io_v1_qiskitplayground_cr.yaml``{{execute}} \ No newline at end of file +``oc create -f deploy/crds/singhp11.io_v1_qiskitplayground_cr.yaml``{{execute}} + +## The notebook is found on the exposed route +``oc get routes -w``{{execute}} + diff --git a/quantum-computing/qiskit/index.json b/quantum-computing/qiskit/index.json index 15469d922..dce6c7f7c 100644 --- a/quantum-computing/qiskit/index.json +++ b/quantum-computing/qiskit/index.json @@ -1,22 +1,25 @@ { "icon": "fa-openshift", - "title": "Qiskit Quantum Computing on OpenShift (OpenShift 4.4)", - "description": "", + "title": "Quantum Computing on OpenShift using Qiskit(OpenShift 4.5)", + "description": "Implement quantum circuits using Qiskit SDK on OpenShift", "pathwayTitle": "OpenShift", - "difficulty": "advanced", + "difficulty": "intermediate", "time": "60 minutes", "backend": { - "imageid": "openshift-4-4" + "imageid": "openshift-4-5" }, "environment": { + "uilayout": "editor-terminal", + "uisettings": "javascript", + "uieditorpath": "/root/openshift-quantum-operators/operators-examples/openshift-qiskit-operator/", "showdashboard": true, + "hideintro": false, "dashboards": [ { "name": "Console", "href": "https://console-openshift-console-[[HOST_SUBDOMAIN]]-443-[[KATACODA_HOST]].environments.katacoda.com" } - ], - "uilayout": "terminal-iframe" + ] }, "details": { "steps": [ From 284fb6c6c8dfadc47084d055ac03f8a110d7564c Mon Sep 17 00:00:00 2001 From: Parul Singh Date: Tue, 13 Oct 2020 11:21:45 -0400 Subject: [PATCH 3/6] intro.md --- quantum-computing/qiskit/01-installation.md | 18 ++++++------ quantum-computing/qiskit/intro.md | 32 +++++++++++++++++++-- 2 files changed, 39 insertions(+), 11 deletions(-) diff --git a/quantum-computing/qiskit/01-installation.md b/quantum-computing/qiskit/01-installation.md index d7516e333..8c693878a 100644 --- a/quantum-computing/qiskit/01-installation.md +++ b/quantum-computing/qiskit/01-installation.md @@ -1,26 +1,28 @@ -
+# Overview This installation method will use the latest version of the operator image that has been built and published to quay. ``cd openshift-quantum-operators/operators-examples/openshift-qiskit-operator/operator``{{execute}} ## Create a project + Create a new project ``oc new-project quantum-katacoda``{{execute}} ## Custom Resource Definition + Deploy the custom resource definition (CRD) ``oc create -f deploy/crds/singhp11.io_qiskitplaygrounds_crd.yaml``{{execute}} ## Deploy the RBAC configuration: + ``oc apply -f deploy/role.yaml``{{execute}} ``oc apply -f deploy/service_account.yaml``{{execute}} ``oc apply -f deploy/role_binding.yaml``{{execute}} ## Setting up authorization with IBMQ Account token -Navigate to secret.cfg in the katacoda built in editor and insert the value of the account token into the secret.cfg file. -``vi deploy/secret.cfg``{{execute}} +Navigate to secret.cfg in the katacoda built in editor and insert the value of the account token into the secret.cfg file. NOTE: Use the token provided to you at https://quantum-computing.ibm.com/account. @@ -30,23 +32,23 @@ token = your_IBMQ_account_token ``` ## Create the secret -``oc create secret generic qiskit-secret --from-file=qiskit-secret.cfg=deploy/secret.cfg``{{execute}} +``oc create secret generic qiskit-secret --from-file=qiskit-secret.cfg=deploy/secret.cfg``{{execute}} -## Deploy the operator itself: +## Deploy the operator itself ``oc apply -f deploy/operator.yaml``{{execute}} -## Wait for the operator pod deployment to complete: +## Wait for the operator pod deployment to complete ``oc get pods -w``{{execute}} NOTE: When the pods are running enter Ctrl+c +## Deploy an instance of the custom resource -## Deploy an instance of the custom resource: ``oc create -f deploy/crds/singhp11.io_v1_qiskitplayground_cr.yaml``{{execute}} ## The notebook is found on the exposed route -``oc get routes -w``{{execute}} +``oc get routes -w``{{execute}} diff --git a/quantum-computing/qiskit/intro.md b/quantum-computing/qiskit/intro.md index adf1d93bb..77a8f9897 100644 --- a/quantum-computing/qiskit/intro.md +++ b/quantum-computing/qiskit/intro.md @@ -1,11 +1,37 @@ -## Goal +# What will you learn -This lab will allow you to test how you can integrate quantum workloads in OpenShift. +This lab will allow you to test how you can integrate quantum workloads in OpenShift. It provides a development environment to implement quantum algorithms and runs them on IBM quantum computers or simulators. The scenarios will introduce two operators namely, OpenShift Qiskit operator and OpenShift IBM quantum operator. + +## Qiskit + +Qiskit [quiss-kit] is an open source SDK for working with quantum computers at the level of pulses, circuits and algorithms. + +## IBM Quantum Experience + +IBM Quantum Experience is quantum on the cloud. With IBM Quantum Experience you can: + - put quantum to work + - run experiments on IBM Q systems and simulators available to the public and IBM Q Network + - develop and deploy + - explore quantum applications in areas such as chemistry, optimization, finance, and AI + - stay informed and contribute to the future of quantum. Be part of the largest quantum community + +## OpenShift Qiskit Operator + +Operator sets up QiskitPlayground for implementing quantum circuits. + +QiskitPlayground is a [Jupyter Notebook](https://jupyter.org/) with the qiskit libraries enabled for implementing quantum circuits. It comes with pre installed python packages for visualising results. QiskitPlayground can run the quantum circuits on simulator or on real quantum machines using [IBMQ Account](https://quantum-computing.ibm.com/). + +To run on real quantum backend, QiskitPlayground reads the IBM Q account API token from a secret file mounted on the QiskitPlayground pod. + +## OpenShift IBM Quantum Operator + +OpenShift IBM quantum operator creates a flexible serving system for quantum circuits implemented in Qiskit. You can submit quantum workloads implemented in Qiskit which are executed on IBM Quantum Experience. Workloads are executed as pods, orchestrated and managed by Kube APIs. ## Concepts * Jupyter Notebook -* Qiskit +* Qiskit ## Requirement + You will need to create an account at https://quantum-computing.ibm.com/ once the account has been created. Go to the account menu(https://quantum-computing.ibm.com/account) and copy the token as it will be used during installation. From 60eaea19d291540855c0e49ba3f853b9fea4bf5e Mon Sep 17 00:00:00 2001 From: Parul Singh Date: Tue, 13 Oct 2020 11:41:54 -0400 Subject: [PATCH 4/6] steps for qiskit operator --- quantum-computing-pathway.json | 4 ++-- .../qiskit/02-example-workload.md | 3 +++ .../qiskit/02-exploring-the-deploy.md | 13 ------------ .../qiskit/03-example-workload.md | 5 ----- .../04-intro-ocp-ibm-quantum-operator.md | 2 -- quantum-computing/qiskit/finish.md | 20 +++++++++++++++++++ quantum-computing/qiskit/index.json | 8 ++------ 7 files changed, 27 insertions(+), 28 deletions(-) create mode 100644 quantum-computing/qiskit/02-example-workload.md delete mode 100644 quantum-computing/qiskit/02-exploring-the-deploy.md delete mode 100644 quantum-computing/qiskit/03-example-workload.md diff --git a/quantum-computing-pathway.json b/quantum-computing-pathway.json index c1ce9684d..14a2ee84f 100644 --- a/quantum-computing-pathway.json +++ b/quantum-computing-pathway.json @@ -5,7 +5,7 @@ { "external_link": "https://learn.openshift.com/quantum-computing/qiskit/", "course_id": "qiskit", - "title": "Qiskit Quantum Computing on OpenShift" + "title": "Quantum Computing on OpenShift using Qiskit" } ] -} +} \ No newline at end of file diff --git a/quantum-computing/qiskit/02-example-workload.md b/quantum-computing/qiskit/02-example-workload.md new file mode 100644 index 000000000..1cd957404 --- /dev/null +++ b/quantum-computing/qiskit/02-example-workload.md @@ -0,0 +1,3 @@ +# Test the Jupyter Notebook + +Explore quantum circuits [following](https://qiskit.org/documentation/tutorials/circuits/1_getting_started_with_qiskit.html) or run any of the sample notebook attached with the operator. diff --git a/quantum-computing/qiskit/02-exploring-the-deploy.md b/quantum-computing/qiskit/02-exploring-the-deploy.md deleted file mode 100644 index bd62e5bc2..000000000 --- a/quantum-computing/qiskit/02-exploring-the-deploy.md +++ /dev/null @@ -1,13 +0,0 @@ -
- -## The notebook is found on the exposed route -``oc get routes -w``{{execute}} - -## Accessing the notebook - -1. Click on "Console" in the right hand top bar -2. Click on "Projects" and search for "quantum-katacoda" -3. Click on "quantum-katacoda" to land on the project dashboard -4. Click on "Networking -> Routes" on the left hand side panel -5. Click on the url for "example-qiskitplayground" under "Location" -6. Run the sample notebooks \ No newline at end of file diff --git a/quantum-computing/qiskit/03-example-workload.md b/quantum-computing/qiskit/03-example-workload.md deleted file mode 100644 index c5a3d6ca7..000000000 --- a/quantum-computing/qiskit/03-example-workload.md +++ /dev/null @@ -1,5 +0,0 @@ -
- -## Test the Jupyter Notebook - -Explore quantum circuits following https://qiskit.org/documentation/tutorials/circuits/1_getting_started_with_qiskit.html or run any of the sample notebook attached with the operator diff --git a/quantum-computing/qiskit/04-intro-ocp-ibm-quantum-operator.md b/quantum-computing/qiskit/04-intro-ocp-ibm-quantum-operator.md index c7da89abd..a58b1a1cc 100644 --- a/quantum-computing/qiskit/04-intro-ocp-ibm-quantum-operator.md +++ b/quantum-computing/qiskit/04-intro-ocp-ibm-quantum-operator.md @@ -1,5 +1,3 @@ -
- # Introduction ## OpenShift IBM Quantum Operator diff --git a/quantum-computing/qiskit/finish.md b/quantum-computing/qiskit/finish.md index acd36a435..476806aee 100644 --- a/quantum-computing/qiskit/finish.md +++ b/quantum-computing/qiskit/finish.md @@ -1 +1,21 @@ +# Additional Resources + Thank you for trying the playground. For individual exercises on using OpenShift, see the home page of our [OpenShift interactive learning portal](https://learn.openshift.com) + +[Code repository](https://github.com/qiskit-community/openshift-quantum-operators) +[OpenShift Qiskit Operator](https://operatorhub.io/operator/openshift-qiskit-operator) +[OpenShift IBM Quantum Operator](https://operatorhub.io/operator/ibm-quantum-operator) + +## Documentaion + +[OpenShift Qiskit Operator](https://github.com/qiskit-community/openshift-quantum-operators/tree/master/operators-examples/openshift-qiskit-operator) + +[OpenShift IBM Quantum Operator](https://github.com/qiskit-community/openshift-quantum-operators/tree/master/operators-examples/openshift-ibm-quantum-operator) + +## Contributing + +You can contribute by + +* Raising any [issues](https://github.com/qiskit-community/openshift-quantum-operators/issues) you find using openshift-ibm-quantum-operator and openshift-qiskit-operator +* Fixing issues by opening [Pull Requests](https://github.com/qiskit-community/openshift-quantum-operators/pulls) +* Talking about the operators diff --git a/quantum-computing/qiskit/index.json b/quantum-computing/qiskit/index.json index dce6c7f7c..5097b9cf1 100644 --- a/quantum-computing/qiskit/index.json +++ b/quantum-computing/qiskit/index.json @@ -28,12 +28,8 @@ "text": "01-installation.md" }, { - "title": "Step 2 - Exploring the Deployment", - "text": "02-exploring-the-deploy.md" - }, - { - "title": "Step 3 - Example workload", - "text": "03-example-workload.md" + "title": "Step 2 - Example workload", + "text": "02-example-workload.md" }, { "title": "Step 4 - Introduction to OpenShift IBM Quantum Operator", From 121b5d2ce1863aeedb30f985c9632334794e6a15 Mon Sep 17 00:00:00 2001 From: Parul Singh Date: Tue, 13 Oct 2020 11:51:41 -0400 Subject: [PATCH 5/6] intro and finish --- quantum-computing/qiskit/finish.md | 16 ++++++++++------ quantum-computing/qiskit/intro.md | 15 +++++++-------- 2 files changed, 17 insertions(+), 14 deletions(-) diff --git a/quantum-computing/qiskit/finish.md b/quantum-computing/qiskit/finish.md index 476806aee..c2c561ca9 100644 --- a/quantum-computing/qiskit/finish.md +++ b/quantum-computing/qiskit/finish.md @@ -2,15 +2,19 @@ Thank you for trying the playground. For individual exercises on using OpenShift, see the home page of our [OpenShift interactive learning portal](https://learn.openshift.com) -[Code repository](https://github.com/qiskit-community/openshift-quantum-operators) -[OpenShift Qiskit Operator](https://operatorhub.io/operator/openshift-qiskit-operator) -[OpenShift IBM Quantum Operator](https://operatorhub.io/operator/ibm-quantum-operator) +## Code repository -## Documentaion +* [Code repository](https://github.com/qiskit-community/openshift-quantum-operators) + +## Find the operators on OperatorHub.io -[OpenShift Qiskit Operator](https://github.com/qiskit-community/openshift-quantum-operators/tree/master/operators-examples/openshift-qiskit-operator) +* [OpenShift Qiskit Operator](https://operatorhub.io/operator/openshift-qiskit-operator) +* [OpenShift IBM Quantum Operator](https://operatorhub.io/operator/ibm-quantum-operator) + +## Documentaion -[OpenShift IBM Quantum Operator](https://github.com/qiskit-community/openshift-quantum-operators/tree/master/operators-examples/openshift-ibm-quantum-operator) +* [OpenShift Qiskit Operator](https://github.com/qiskit-community/openshift-quantum-operators/tree/master/operators-examples/openshift-qiskit-operator) +* [OpenShift IBM Quantum Operator](https://github.com/qiskit-community/openshift-quantum-operators/tree/master/operators-examples/openshift-ibm-quantum-operator) ## Contributing diff --git a/quantum-computing/qiskit/intro.md b/quantum-computing/qiskit/intro.md index 77a8f9897..f41c6df63 100644 --- a/quantum-computing/qiskit/intro.md +++ b/quantum-computing/qiskit/intro.md @@ -8,16 +8,15 @@ Qiskit [quiss-kit] is an open source SDK for working with quantum computers at t ## IBM Quantum Experience -IBM Quantum Experience is quantum on the cloud. With IBM Quantum Experience you can: - - put quantum to work - - run experiments on IBM Q systems and simulators available to the public and IBM Q Network - - develop and deploy - - explore quantum applications in areas such as chemistry, optimization, finance, and AI - - stay informed and contribute to the future of quantum. Be part of the largest quantum community +IBM Quantum Experience is quantum on the cloud. With IBM Quantum Experience you can + +* put quantum to work by running experiments on IBM Q systems and simulators available to the public and IBM Q Network +* develop, deploy and explore quantum applications in areas such as chemistry, optimization, finance, and AI +* stay informed and contribute to the future of quantum. Be part of the largest quantum community ## OpenShift Qiskit Operator -Operator sets up QiskitPlayground for implementing quantum circuits. +Operator sets up QiskitPlayground for implementing quantum circuits. QiskitPlayground is a [Jupyter Notebook](https://jupyter.org/) with the qiskit libraries enabled for implementing quantum circuits. It comes with pre installed python packages for visualising results. QiskitPlayground can run the quantum circuits on simulator or on real quantum machines using [IBMQ Account](https://quantum-computing.ibm.com/). @@ -34,4 +33,4 @@ OpenShift IBM quantum operator creates a flexible serving system for quantum cir ## Requirement -You will need to create an account at https://quantum-computing.ibm.com/ once the account has been created. Go to the account menu(https://quantum-computing.ibm.com/account) and copy the token as it will be used during installation. +You will need to create an account [here](https://quantum-computing.ibm.com/) once the account has been created. Go to the [account menu](https://quantum-computing.ibm.com/account) and copy the token as it will be used during installation. From efb86a36615ae7e4a7cce075a0a4df991b644931 Mon Sep 17 00:00:00 2001 From: Parul Singh Date: Mon, 15 Feb 2021 11:32:25 -0500 Subject: [PATCH 6/6] ocp 4.5 --- quantum-computing/qiskit/01-installation.md | 8 +-- .../04-intro-ocp-ibm-quantum-operator.md | 7 --- .../05-installation-ocp-ibm-quantum-op.md | 49 ------------------- 3 files changed, 4 insertions(+), 60 deletions(-) delete mode 100644 quantum-computing/qiskit/04-intro-ocp-ibm-quantum-operator.md delete mode 100644 quantum-computing/qiskit/05-installation-ocp-ibm-quantum-op.md diff --git a/quantum-computing/qiskit/01-installation.md b/quantum-computing/qiskit/01-installation.md index 8c693878a..dcb27171d 100644 --- a/quantum-computing/qiskit/01-installation.md +++ b/quantum-computing/qiskit/01-installation.md @@ -1,15 +1,15 @@ -# Overview +# Getting started This installation method will use the latest version of the operator image that has been built and published to quay. -``cd openshift-quantum-operators/operators-examples/openshift-qiskit-operator/operator``{{execute}} + ## Create a project Create a new project ``oc new-project quantum-katacoda``{{execute}} -## Custom Resource Definition + ## Setting up authorization with IBMQ Account token diff --git a/quantum-computing/qiskit/04-intro-ocp-ibm-quantum-operator.md b/quantum-computing/qiskit/04-intro-ocp-ibm-quantum-operator.md deleted file mode 100644 index a58b1a1cc..000000000 --- a/quantum-computing/qiskit/04-intro-ocp-ibm-quantum-operator.md +++ /dev/null @@ -1,7 +0,0 @@ -# Introduction - -## OpenShift IBM Quantum Operator - -OpenShift IBM quantum operator creates a flexible serving system for quantum circuits implemented in Qiskit. You can submit quantum workloads implemented in Qiskit which are executed on IBM Quantum Experience. Workloads are executed as pods, orchestrated and managed by Kube APIs. - -For getting started guides, installation, deployment and test OpenShift IBM quantum operator follow next steps. diff --git a/quantum-computing/qiskit/05-installation-ocp-ibm-quantum-op.md b/quantum-computing/qiskit/05-installation-ocp-ibm-quantum-op.md deleted file mode 100644 index f2fe48b73..000000000 --- a/quantum-computing/qiskit/05-installation-ocp-ibm-quantum-op.md +++ /dev/null @@ -1,49 +0,0 @@ -
- -This installation method will use the latest version of the operator image that has been built and published to quay. - -``cd openshift-quantum-operators/operators-examples/openshift-ibm-quantum-operator/operator/``{{execute}} - -## Use/Create a project -Create a new project -``oc new-project quantum-katacoda``{{execute}} - -## Custom Resource Definition -Deploy the custom resource definition (CRD) -``oc create -f deploy/crds/singhp11.io_ibmqes_crd.yaml``{{execute}} - -## Deploy the RBAC configuration: -``oc apply -f deploy/role.yaml``{{execute}} -``oc apply -f deploy/service_account.yaml``{{execute}} -``oc apply -f deploy/role_binding.yaml``{{execute}} - -## Setting up authorization with IBMQ Account token - -Insert the value of the account token into the secret.cfg file. - -``vi deploy/secret.cfg``{{execute}} - -NOTE: Use the token provided to you at https://quantum-computing.ibm.com/account. - -``` -[AUTH TOKENS] -token = your_IBMQ_account_token -``` - -## Create the secret -``oc create secret generic qiskit-secret --from-file=qiskit-secret.cfg=deploy/secret.cfg``{{execute}} - - -## Deploy the operator itself: - -``oc apply -f deploy/operator.yaml``{{execute}} - -## Wait for the operator pod deployment to complete: - -``oc get pods -w``{{execute}} - -NOTE: When the pods are running enter Ctrl+c - - -## Deploy an instance of the custom resource: -``oc apply -f deploy/crds/singhp11.io_v1_ibmqe_cr.yaml``{{execute}} \ No newline at end of file