Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

HDDS-11938. [Website v2] [Docs] [Quick Start] Try Ozone With Kubernetes #116

Open
wants to merge 11 commits into
base: HDDS-9225-website-v2
Choose a base branch
from

Conversation

Eric977
Copy link

@Eric977 Eric977 commented Dec 15, 2024

What changes were proposed in this pull request?

HDDS-11938. [Website v2] [Docs] [Quick Start] Try Ozone With Kubernetes

Please describe your PR in detail:
Migrate doc from https://ozone.apache.org/docs/edge/start/kubernetes.html to https://ozone-site-v2.staged.apache.org/docs/quick-start/installation/kubernetes

What is the link to the Apache Jira?

https://issues.apache.org/jira/browse/HDDS-11938

How was this patch tested?

Previewed locally.

image

@github-actions github-actions bot added the website-v2 Tasks for the new ozone website targeting the HDDS-9225-website-v2 branch label Dec 15, 2024
Copy link
Contributor

@adoroszlai adoroszlai left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks @Eric977 for working on this.

In the old docs, Kubernetes topic is split to two pages:

I think we should import both to this single page. The PR is now importing only the second item, but the text references the first one ("Minikube deployment"). As a reader, I wouldn't know what that is. Not sure what would be the best heading for current content. (Does "Hosted Cluster" make sense?)

I also think we need to improve the text in follow-up task(s). As a start, it's best to import it as-is. However, we should make some trivial fixes, like changing "the dockerhub" to "Docker Hub". This makes it unnecessary to define "dockerhub" as a word (it is not).

docs/02-quick-start/01-installation/02-kubernetes.md Outdated Show resolved Hide resolved
cspell.yaml Outdated Show resolved Hide resolved
docs/02-quick-start/01-installation/02-kubernetes.md Outdated Show resolved Hide resolved
@Eric977
Copy link
Author

Eric977 commented Dec 15, 2024

Thank you for your feedback! I've addressed the missing pages and added them to the migration.

Regarding the heading, I’ve applied the suggested change to 'Hosted Cluster.' Do you think 'Hosted Kubernetes Cluster' might be clearer?

@adoroszlai
Copy link
Contributor

Thanks for the updates.

Do you think 'Hosted Kubernetes Cluster' might be clearer?

Yes, that may be better.

@adoroszlai adoroszlai requested a review from errose28 December 15, 2024 18:03
@errose28 errose28 added the docs Changes updating documentation on the website label Dec 16, 2024
@errose28
Copy link
Contributor

I also think we need to improve the text in follow-up task(s). As a start, it's best to import it as-is.

I would like avoid importing unfinished content into the new website, it will be hard to track and we will just accumulate debt on an already new project. Remember we are going to have 200-300 pages worth of docs. As part of testing for this PR, please try out the steps locally to verify that they are clear and working.

@Eric977
Copy link
Author

Eric977 commented Dec 20, 2024

the command
kubectl apply -f .
result in the following error:
error: error validating "kustomization.yaml": error validating data: [apiVersion not set, kind not set]; if you choose to ignore these errors, turn validation off with --validate=false

To resolve this issue, replace the command with:
kubectl apply -k .

The issue and its solution are discussed in detail in this GitHub issue.

Currently, I am testing the documentation in my local environment (wsl on window) and have encountered some additional issues. It seems that the latest release (1.4.1) has no corresponding Docker image, which results in pod initialization failures.

After switching to version 1.4.0, I encounter the following error and am still investigating:

NAME         READY   STATUS       RESTARTS        AGE
datanode-0   0/1     Error        8 (2m8s ago)    13m
datanode-1   0/1     Pending      0               16m
om-0         1/1     Running      8 (5m44s ago)   17m
s3g-0        1/1     Running      0               17m
scm-0        0/1     Init:Error   8 (2m49s ago)   13m```

@adoroszlai
Copy link
Contributor

It seems that the latest release (1.4.1) has no corresponding Docker image

Thank you for spotting this. Recently we switched to Rocky Linux, and published new images for existing versions with tags like 1.4.0-rocky to avoid disruption for users of existing images. 1.4.1 was the first release to only have -rocky image. But the kubernetes examples were not updated, so they still point to 1.4.1. I think we should publish additional tag 1.4.1 for the 1.4.1-rocky image.

@adoroszlai
Copy link
Contributor

Docker Image apache/ozone:1.4.1 is now available.

@Eric977
Copy link
Author

Eric977 commented Dec 20, 2024

Docker Image apache/ozone:1.4.1 is now available.

Thanks for your help

After switching to version 1.4.0, I encounter the following error and am still investigating:

The issue was due to a misconfiguration in my Kubernetes storage. After fixing it, everything started running correctly.
So I believe the content of the document is valid.

@adoroszlai
Copy link
Contributor

Thanks @Eric977 for testing and updating the doc. @errose28 please take another look.

Copy link
Contributor

@errose28 errose28 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for adding this @Eric977

WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
-->

# Try Ozone With Kubernetes
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Let's add a quick summary here about the options for deploying Ozone with K8s and the info that will follow. This will also be automatically picked up in the doc card summary seen here

WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
-->
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'm not sure what our approach to license headers on markdown should be.

  • The ASF policy seems to imply it is only required if we are shipping these pages with a release, which we are not currently.
  • The ASF website itself does not have headers on their page source
  • The default skywalking eyes config which is set up for apache projects does not check markdown files and ours does not either.
  • Adding the header in this way will cause this issue in docusaurus. If we need it we would probably have to put it as comments in the yaml front matter.

None of the current markdown pages have headers so I'm thinking we keep going in that direction but I can't find conclusive evidence saying they aren't required.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think license is included in the original docs in apache/ozone since they are part of the official source release. But the website is not "released", so we can remove the license header.

docs/02-quick-start/01-installation/02-kubernetes.md Outdated Show resolved Hide resolved
**Requirements:**

* Working minikube setup
* kubectl
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Please use - for unordered lists since it is consistent with the existing pages in the new site. This was supposed to be enforced by markdownlint but I made a mistake in the config. I'll push a fix for the markdownlint config soon.

docs/02-quick-start/01-installation/02-kubernetes.md Outdated Show resolved Hide resolved
docs/02-quick-start/01-installation/02-kubernetes.md Outdated Show resolved Hide resolved
docs/02-quick-start/01-installation/02-kubernetes.md Outdated Show resolved Hide resolved
Opening kubernetes service default/s3g-public in default browser...
```

## Hosted Kubernetes Cluster
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The formatting suggestions above also apply to this section

``` bash
kubectl port-forward s3g-0 9878:9878
kubectl port-forward scm-0 9876:9876
```
Copy link
Contributor

@errose28 errose28 Dec 20, 2024

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

At some point here we should run ozone version in a pod as part of the test that things were set up correctly. More thorough testing will be done in the following "Reading and Writing Data" section.

Eric977 and others added 7 commits December 21, 2024 10:32
Co-authored-by: Ethan Rose <33912936+errose28@users.noreply.github.com>
Co-authored-by: Ethan Rose <33912936+errose28@users.noreply.github.com>
Co-authored-by: Ethan Rose <33912936+errose28@users.noreply.github.com>
Co-authored-by: Ethan Rose <33912936+errose28@users.noreply.github.com>
Co-authored-by: Ethan Rose <33912936+errose28@users.noreply.github.com>
@Eric977
Copy link
Author

Eric977 commented Dec 21, 2024

Hi @errose28

Thanks for the review, and sorry for the mistakes. I have fixed the comments above.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
docs Changes updating documentation on the website website-v2 Tasks for the new ozone website targeting the HDDS-9225-website-v2 branch
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants