Skip to content

Commit

Permalink
HDDS-11806. Add HttpFS and Recon in getting-started k8s example (#7485)
Browse files Browse the repository at this point in the history
  • Loading branch information
HalimKim authored Dec 3, 2024
1 parent 77ce962 commit 9b61937
Show file tree
Hide file tree
Showing 8 changed files with 242 additions and 0 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -19,13 +19,19 @@ kind: ConfigMap
metadata:
name: config
data:
HTTPFS-SITE.XML_httpfs.hadoop.config.dir: /opt/hadoop/etc/config
CORE-SITE.XML_fs.defaultFS: ofs://om/
CORE-SITE.XML_fs.trash.interval: "1"
HTTPFS-SITE.XML_httpfs.proxyuser.hadoop.hosts: "*"
HTTPFS-SITE.XML_httpfs.proxyuser.hadoop.groups: "*"
OZONE-SITE.XML_hdds.datanode.dir: /data/storage
OZONE-SITE.XML_ozone.scm.datanode.id.dir: /data/metadata
OZONE-SITE.XML_ozone.metadata.dirs: /data/metadata
OZONE-SITE.XML_ozone.scm.block.client.address: scm-0.scm
OZONE-SITE.XML_ozone.om.address: om-0.om
OZONE-SITE.XML_ozone.scm.client.address: scm-0.scm
OZONE-SITE.XML_ozone.scm.names: scm-0.scm
OZONE-SITE.XML_ozone.recon.address: recon-0.recon
OZONE-SITE.XML_hdds.scm.safemode.min.datanode: "3"
OZONE-SITE.XML_ozone.datanode.pipeline.limit: "1"
OZONE-SITE.XML_dfs.datanode.use.datanode.hostname: "true"
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
# Licensed to the Apache Software Foundation (ASF) under one
# or more contributor license agreements. See the NOTICE file
# distributed with this work for additional information
# regarding copyright ownership. The ASF licenses this file
# to you under the Apache License, Version 2.0 (the
# "License"); you may not use this file except in compliance
# with the License. You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# 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.

apiVersion: v1
kind: Service
metadata:
name: httpfs-public
spec:
ports:
- port: 14000
name: rest
selector:
app: ozone
component: httpfs
type: NodePort
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
# Licensed to the Apache Software Foundation (ASF) under one
# or more contributor license agreements. See the NOTICE file
# distributed with this work for additional information
# regarding copyright ownership. The ASF licenses this file
# to you under the Apache License, Version 2.0 (the
# "License"); you may not use this file except in compliance
# with the License. You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# 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.

apiVersion: v1
kind: Service
metadata:
name: httpfs
spec:
ports:
- port: 14000
name: rest
clusterIP: None
selector:
app: ozone
component: httpfs
Original file line number Diff line number Diff line change
@@ -0,0 +1,55 @@
# Licensed to the Apache Software Foundation (ASF) under one
# or more contributor license agreements. See the NOTICE file
# distributed with this work for additional information
# regarding copyright ownership. The ASF licenses this file
# to you under the Apache License, Version 2.0 (the
# "License"); you may not use this file except in compliance
# with the License. You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# 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.

apiVersion: apps/v1
kind: StatefulSet
metadata:
name: httpfs
labels:
app.kubernetes.io/component: ozone
spec:
selector:
matchLabels:
app: ozone
component: httpfs
serviceName: httpfs
replicas: 1
template:
metadata:
labels:
app: ozone
component: httpfs
spec:
containers:
- name: httpfs
image: '@docker.image@'
args:
- ozone
- httpfs
livenessProbe:
httpGet:
path: /webhdfs/v1/?op=LISTSTATUS&user.name=hadoop
port: 14000
initialDelaySeconds: 30
envFrom:
- configMapRef:
name: config
volumeMounts:
- name: data
mountPath: /data
volumes:
- name: data
emptyDir: {}
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,13 @@ resources:
- s3g-statefulset.yaml
- scm-service.yaml
- scm-statefulset.yaml
- httpfs-service.yaml
- httpfs-statefulset.yaml
- recon-service.yaml
- recon-statefulset.yaml
- datanode-public-service.yaml
- om-public-service.yaml
- s3g-public-service.yaml
- scm-public-service.yaml
- httpfs-public-service.yaml
- recon-public-service.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
# Licensed to the Apache Software Foundation (ASF) under one
# or more contributor license agreements. See the NOTICE file
# distributed with this work for additional information
# regarding copyright ownership. The ASF licenses this file
# to you under the Apache License, Version 2.0 (the
# "License"); you may not use this file except in compliance
# with the License. You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# 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.

apiVersion: v1
kind: Service
metadata:
name: recon-public
spec:
ports:
- port: 9888
name: ui
selector:
app: ozone
component: recon
type: NodePort
Original file line number Diff line number Diff line change
@@ -0,0 +1,28 @@
# Licensed to the Apache Software Foundation (ASF) under one
# or more contributor license agreements. See the NOTICE file
# distributed with this work for additional information
# regarding copyright ownership. The ASF licenses this file
# to you under the Apache License, Version 2.0 (the
# "License"); you may not use this file except in compliance
# with the License. You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# 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.

apiVersion: v1
kind: Service
metadata:
name: recon
spec:
ports:
- port: 9888
name: ui
clusterIP: None
selector:
app: ozone
component: recon
Original file line number Diff line number Diff line change
@@ -0,0 +1,63 @@
# Licensed to the Apache Software Foundation (ASF) under one
# or more contributor license agreements. See the NOTICE file
# distributed with this work for additional information
# regarding copyright ownership. The ASF licenses this file
# to you under the Apache License, Version 2.0 (the
# "License"); you may not use this file except in compliance
# with the License. You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# 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.

apiVersion: apps/v1
kind: StatefulSet
metadata:
name: recon
labels:
app.kubernetes.io/component: ozone
spec:
selector:
matchLabels:
app: ozone
component: recon
serviceName: recon
replicas: 1
template:
metadata:
labels:
app: ozone
component: recon
annotations:
prometheus.io/scrape: "true"
prometheus.io/port: "9888"
prometheus.io/path: /prom
spec:
securityContext:
fsGroup: 1000
containers:
- name: recon
image: '@docker.image@'
args:
- ozone
- recon
env:
- name: WAITFOR
value: scm-0.scm:9876
livenessProbe:
tcpSocket:
port: 9891
initialDelaySeconds: 30
envFrom:
- configMapRef:
name: config
volumeMounts:
- name: data
mountPath: /data
volumes:
- name: data
emptyDir: {}

0 comments on commit 9b61937

Please sign in to comment.