mirror of
https://github.com/xcat2/xcat-core.git
synced 2025-06-02 19:40:10 +00:00
Preparing files to be merged from xcat_doctest to xcat-docs
This commit is contained in:
commit
c252393f4a
192
Makefile
Normal file
192
Makefile
Normal file
@ -0,0 +1,192 @@
|
||||
# Makefile for Sphinx documentation
|
||||
#
|
||||
|
||||
# You can set these variables from the command line.
|
||||
SPHINXOPTS =
|
||||
SPHINXBUILD = sphinx-build
|
||||
PAPER =
|
||||
BUILDDIR = build
|
||||
|
||||
# User-friendly check for sphinx-build
|
||||
ifeq ($(shell which $(SPHINXBUILD) >/dev/null 2>&1; echo $$?), 1)
|
||||
$(error The '$(SPHINXBUILD)' command was not found. Make sure you have Sphinx installed, then set the SPHINXBUILD environment variable to point to the full path of the '$(SPHINXBUILD)' executable. Alternatively you can add the directory with the executable to your PATH. If you don't have Sphinx installed, grab it from http://sphinx-doc.org/)
|
||||
endif
|
||||
|
||||
# Internal variables.
|
||||
PAPEROPT_a4 = -D latex_paper_size=a4
|
||||
PAPEROPT_letter = -D latex_paper_size=letter
|
||||
ALLSPHINXOPTS = -d $(BUILDDIR)/doctrees $(PAPEROPT_$(PAPER)) $(SPHINXOPTS) source
|
||||
# the i18n builder cannot share the environment and doctrees with the others
|
||||
I18NSPHINXOPTS = $(PAPEROPT_$(PAPER)) $(SPHINXOPTS) source
|
||||
|
||||
.PHONY: help clean html dirhtml singlehtml pickle json htmlhelp qthelp devhelp epub latex latexpdf text man changes linkcheck doctest coverage gettext
|
||||
|
||||
help:
|
||||
@echo "Please use \`make <target>' where <target> is one of"
|
||||
@echo " html to make standalone HTML files"
|
||||
@echo " dirhtml to make HTML files named index.html in directories"
|
||||
@echo " singlehtml to make a single large HTML file"
|
||||
@echo " pickle to make pickle files"
|
||||
@echo " json to make JSON files"
|
||||
@echo " htmlhelp to make HTML files and a HTML help project"
|
||||
@echo " qthelp to make HTML files and a qthelp project"
|
||||
@echo " applehelp to make an Apple Help Book"
|
||||
@echo " devhelp to make HTML files and a Devhelp project"
|
||||
@echo " epub to make an epub"
|
||||
@echo " latex to make LaTeX files, you can set PAPER=a4 or PAPER=letter"
|
||||
@echo " latexpdf to make LaTeX files and run them through pdflatex"
|
||||
@echo " latexpdfja to make LaTeX files and run them through platex/dvipdfmx"
|
||||
@echo " text to make text files"
|
||||
@echo " man to make manual pages"
|
||||
@echo " texinfo to make Texinfo files"
|
||||
@echo " info to make Texinfo files and run them through makeinfo"
|
||||
@echo " gettext to make PO message catalogs"
|
||||
@echo " changes to make an overview of all changed/added/deprecated items"
|
||||
@echo " xml to make Docutils-native XML files"
|
||||
@echo " pseudoxml to make pseudoxml-XML files for display purposes"
|
||||
@echo " linkcheck to check all external links for integrity"
|
||||
@echo " doctest to run all doctests embedded in the documentation (if enabled)"
|
||||
@echo " coverage to run coverage check of the documentation (if enabled)"
|
||||
|
||||
clean:
|
||||
rm -rf $(BUILDDIR)/*
|
||||
|
||||
html:
|
||||
$(SPHINXBUILD) -b html $(ALLSPHINXOPTS) $(BUILDDIR)/html
|
||||
@echo
|
||||
@echo "Build finished. The HTML pages are in $(BUILDDIR)/html."
|
||||
|
||||
dirhtml:
|
||||
$(SPHINXBUILD) -b dirhtml $(ALLSPHINXOPTS) $(BUILDDIR)/dirhtml
|
||||
@echo
|
||||
@echo "Build finished. The HTML pages are in $(BUILDDIR)/dirhtml."
|
||||
|
||||
singlehtml:
|
||||
$(SPHINXBUILD) -b singlehtml $(ALLSPHINXOPTS) $(BUILDDIR)/singlehtml
|
||||
@echo
|
||||
@echo "Build finished. The HTML page is in $(BUILDDIR)/singlehtml."
|
||||
|
||||
pickle:
|
||||
$(SPHINXBUILD) -b pickle $(ALLSPHINXOPTS) $(BUILDDIR)/pickle
|
||||
@echo
|
||||
@echo "Build finished; now you can process the pickle files."
|
||||
|
||||
json:
|
||||
$(SPHINXBUILD) -b json $(ALLSPHINXOPTS) $(BUILDDIR)/json
|
||||
@echo
|
||||
@echo "Build finished; now you can process the JSON files."
|
||||
|
||||
htmlhelp:
|
||||
$(SPHINXBUILD) -b htmlhelp $(ALLSPHINXOPTS) $(BUILDDIR)/htmlhelp
|
||||
@echo
|
||||
@echo "Build finished; now you can run HTML Help Workshop with the" \
|
||||
".hhp project file in $(BUILDDIR)/htmlhelp."
|
||||
|
||||
qthelp:
|
||||
$(SPHINXBUILD) -b qthelp $(ALLSPHINXOPTS) $(BUILDDIR)/qthelp
|
||||
@echo
|
||||
@echo "Build finished; now you can run "qcollectiongenerator" with the" \
|
||||
".qhcp project file in $(BUILDDIR)/qthelp, like this:"
|
||||
@echo "# qcollectiongenerator $(BUILDDIR)/qthelp/xCAT3.qhcp"
|
||||
@echo "To view the help file:"
|
||||
@echo "# assistant -collectionFile $(BUILDDIR)/qthelp/xCAT3.qhc"
|
||||
|
||||
applehelp:
|
||||
$(SPHINXBUILD) -b applehelp $(ALLSPHINXOPTS) $(BUILDDIR)/applehelp
|
||||
@echo
|
||||
@echo "Build finished. The help book is in $(BUILDDIR)/applehelp."
|
||||
@echo "N.B. You won't be able to view it unless you put it in" \
|
||||
"~/Library/Documentation/Help or install it in your application" \
|
||||
"bundle."
|
||||
|
||||
devhelp:
|
||||
$(SPHINXBUILD) -b devhelp $(ALLSPHINXOPTS) $(BUILDDIR)/devhelp
|
||||
@echo
|
||||
@echo "Build finished."
|
||||
@echo "To view the help file:"
|
||||
@echo "# mkdir -p $$HOME/.local/share/devhelp/xCAT3"
|
||||
@echo "# ln -s $(BUILDDIR)/devhelp $$HOME/.local/share/devhelp/xCAT3"
|
||||
@echo "# devhelp"
|
||||
|
||||
epub:
|
||||
$(SPHINXBUILD) -b epub $(ALLSPHINXOPTS) $(BUILDDIR)/epub
|
||||
@echo
|
||||
@echo "Build finished. The epub file is in $(BUILDDIR)/epub."
|
||||
|
||||
latex:
|
||||
$(SPHINXBUILD) -b latex $(ALLSPHINXOPTS) $(BUILDDIR)/latex
|
||||
@echo
|
||||
@echo "Build finished; the LaTeX files are in $(BUILDDIR)/latex."
|
||||
@echo "Run \`make' in that directory to run these through (pdf)latex" \
|
||||
"(use \`make latexpdf' here to do that automatically)."
|
||||
|
||||
latexpdf:
|
||||
$(SPHINXBUILD) -b latex $(ALLSPHINXOPTS) $(BUILDDIR)/latex
|
||||
@echo "Running LaTeX files through pdflatex..."
|
||||
$(MAKE) -C $(BUILDDIR)/latex all-pdf
|
||||
@echo "pdflatex finished; the PDF files are in $(BUILDDIR)/latex."
|
||||
|
||||
latexpdfja:
|
||||
$(SPHINXBUILD) -b latex $(ALLSPHINXOPTS) $(BUILDDIR)/latex
|
||||
@echo "Running LaTeX files through platex and dvipdfmx..."
|
||||
$(MAKE) -C $(BUILDDIR)/latex all-pdf-ja
|
||||
@echo "pdflatex finished; the PDF files are in $(BUILDDIR)/latex."
|
||||
|
||||
text:
|
||||
$(SPHINXBUILD) -b text $(ALLSPHINXOPTS) $(BUILDDIR)/text
|
||||
@echo
|
||||
@echo "Build finished. The text files are in $(BUILDDIR)/text."
|
||||
|
||||
man:
|
||||
$(SPHINXBUILD) -b man $(ALLSPHINXOPTS) $(BUILDDIR)/man
|
||||
@echo
|
||||
@echo "Build finished. The manual pages are in $(BUILDDIR)/man."
|
||||
|
||||
texinfo:
|
||||
$(SPHINXBUILD) -b texinfo $(ALLSPHINXOPTS) $(BUILDDIR)/texinfo
|
||||
@echo
|
||||
@echo "Build finished. The Texinfo files are in $(BUILDDIR)/texinfo."
|
||||
@echo "Run \`make' in that directory to run these through makeinfo" \
|
||||
"(use \`make info' here to do that automatically)."
|
||||
|
||||
info:
|
||||
$(SPHINXBUILD) -b texinfo $(ALLSPHINXOPTS) $(BUILDDIR)/texinfo
|
||||
@echo "Running Texinfo files through makeinfo..."
|
||||
make -C $(BUILDDIR)/texinfo info
|
||||
@echo "makeinfo finished; the Info files are in $(BUILDDIR)/texinfo."
|
||||
|
||||
gettext:
|
||||
$(SPHINXBUILD) -b gettext $(I18NSPHINXOPTS) $(BUILDDIR)/locale
|
||||
@echo
|
||||
@echo "Build finished. The message catalogs are in $(BUILDDIR)/locale."
|
||||
|
||||
changes:
|
||||
$(SPHINXBUILD) -b changes $(ALLSPHINXOPTS) $(BUILDDIR)/changes
|
||||
@echo
|
||||
@echo "The overview file is in $(BUILDDIR)/changes."
|
||||
|
||||
linkcheck:
|
||||
$(SPHINXBUILD) -b linkcheck $(ALLSPHINXOPTS) $(BUILDDIR)/linkcheck
|
||||
@echo
|
||||
@echo "Link check complete; look for any errors in the above output " \
|
||||
"or in $(BUILDDIR)/linkcheck/output.txt."
|
||||
|
||||
doctest:
|
||||
$(SPHINXBUILD) -b doctest $(ALLSPHINXOPTS) $(BUILDDIR)/doctest
|
||||
@echo "Testing of doctests in the sources finished, look at the " \
|
||||
"results in $(BUILDDIR)/doctest/output.txt."
|
||||
|
||||
coverage:
|
||||
$(SPHINXBUILD) -b coverage $(ALLSPHINXOPTS) $(BUILDDIR)/coverage
|
||||
@echo "Testing of coverage in the sources finished, look at the " \
|
||||
"results in $(BUILDDIR)/coverage/python.txt."
|
||||
|
||||
xml:
|
||||
$(SPHINXBUILD) -b xml $(ALLSPHINXOPTS) $(BUILDDIR)/xml
|
||||
@echo
|
||||
@echo "Build finished. The XML files are in $(BUILDDIR)/xml."
|
||||
|
||||
pseudoxml:
|
||||
$(SPHINXBUILD) -b pseudoxml $(ALLSPHINXOPTS) $(BUILDDIR)/pseudoxml
|
||||
@echo
|
||||
@echo "Build finished. The pseudo-XML files are in $(BUILDDIR)/pseudoxml."
|
263
make.bat
Normal file
263
make.bat
Normal file
@ -0,0 +1,263 @@
|
||||
@ECHO OFF
|
||||
|
||||
REM Command file for Sphinx documentation
|
||||
|
||||
if "%SPHINXBUILD%" == "" (
|
||||
set SPHINXBUILD=sphinx-build
|
||||
)
|
||||
set BUILDDIR=build
|
||||
set ALLSPHINXOPTS=-d %BUILDDIR%/doctrees %SPHINXOPTS% source
|
||||
set I18NSPHINXOPTS=%SPHINXOPTS% source
|
||||
if NOT "%PAPER%" == "" (
|
||||
set ALLSPHINXOPTS=-D latex_paper_size=%PAPER% %ALLSPHINXOPTS%
|
||||
set I18NSPHINXOPTS=-D latex_paper_size=%PAPER% %I18NSPHINXOPTS%
|
||||
)
|
||||
|
||||
if "%1" == "" goto help
|
||||
|
||||
if "%1" == "help" (
|
||||
:help
|
||||
echo.Please use `make ^<target^>` where ^<target^> is one of
|
||||
echo. html to make standalone HTML files
|
||||
echo. dirhtml to make HTML files named index.html in directories
|
||||
echo. singlehtml to make a single large HTML file
|
||||
echo. pickle to make pickle files
|
||||
echo. json to make JSON files
|
||||
echo. htmlhelp to make HTML files and a HTML help project
|
||||
echo. qthelp to make HTML files and a qthelp project
|
||||
echo. devhelp to make HTML files and a Devhelp project
|
||||
echo. epub to make an epub
|
||||
echo. latex to make LaTeX files, you can set PAPER=a4 or PAPER=letter
|
||||
echo. text to make text files
|
||||
echo. man to make manual pages
|
||||
echo. texinfo to make Texinfo files
|
||||
echo. gettext to make PO message catalogs
|
||||
echo. changes to make an overview over all changed/added/deprecated items
|
||||
echo. xml to make Docutils-native XML files
|
||||
echo. pseudoxml to make pseudoxml-XML files for display purposes
|
||||
echo. linkcheck to check all external links for integrity
|
||||
echo. doctest to run all doctests embedded in the documentation if enabled
|
||||
echo. coverage to run coverage check of the documentation if enabled
|
||||
goto end
|
||||
)
|
||||
|
||||
if "%1" == "clean" (
|
||||
for /d %%i in (%BUILDDIR%\*) do rmdir /q /s %%i
|
||||
del /q /s %BUILDDIR%\*
|
||||
goto end
|
||||
)
|
||||
|
||||
|
||||
REM Check if sphinx-build is available and fallback to Python version if any
|
||||
%SPHINXBUILD% 2> nul
|
||||
if errorlevel 9009 goto sphinx_python
|
||||
goto sphinx_ok
|
||||
|
||||
:sphinx_python
|
||||
|
||||
set SPHINXBUILD=python -m sphinx.__init__
|
||||
%SPHINXBUILD% 2> nul
|
||||
if errorlevel 9009 (
|
||||
echo.
|
||||
echo.The 'sphinx-build' command was not found. Make sure you have Sphinx
|
||||
echo.installed, then set the SPHINXBUILD environment variable to point
|
||||
echo.to the full path of the 'sphinx-build' executable. Alternatively you
|
||||
echo.may add the Sphinx directory to PATH.
|
||||
echo.
|
||||
echo.If you don't have Sphinx installed, grab it from
|
||||
echo.http://sphinx-doc.org/
|
||||
exit /b 1
|
||||
)
|
||||
|
||||
:sphinx_ok
|
||||
|
||||
|
||||
if "%1" == "html" (
|
||||
%SPHINXBUILD% -b html %ALLSPHINXOPTS% %BUILDDIR%/html
|
||||
if errorlevel 1 exit /b 1
|
||||
echo.
|
||||
echo.Build finished. The HTML pages are in %BUILDDIR%/html.
|
||||
goto end
|
||||
)
|
||||
|
||||
if "%1" == "dirhtml" (
|
||||
%SPHINXBUILD% -b dirhtml %ALLSPHINXOPTS% %BUILDDIR%/dirhtml
|
||||
if errorlevel 1 exit /b 1
|
||||
echo.
|
||||
echo.Build finished. The HTML pages are in %BUILDDIR%/dirhtml.
|
||||
goto end
|
||||
)
|
||||
|
||||
if "%1" == "singlehtml" (
|
||||
%SPHINXBUILD% -b singlehtml %ALLSPHINXOPTS% %BUILDDIR%/singlehtml
|
||||
if errorlevel 1 exit /b 1
|
||||
echo.
|
||||
echo.Build finished. The HTML pages are in %BUILDDIR%/singlehtml.
|
||||
goto end
|
||||
)
|
||||
|
||||
if "%1" == "pickle" (
|
||||
%SPHINXBUILD% -b pickle %ALLSPHINXOPTS% %BUILDDIR%/pickle
|
||||
if errorlevel 1 exit /b 1
|
||||
echo.
|
||||
echo.Build finished; now you can process the pickle files.
|
||||
goto end
|
||||
)
|
||||
|
||||
if "%1" == "json" (
|
||||
%SPHINXBUILD% -b json %ALLSPHINXOPTS% %BUILDDIR%/json
|
||||
if errorlevel 1 exit /b 1
|
||||
echo.
|
||||
echo.Build finished; now you can process the JSON files.
|
||||
goto end
|
||||
)
|
||||
|
||||
if "%1" == "htmlhelp" (
|
||||
%SPHINXBUILD% -b htmlhelp %ALLSPHINXOPTS% %BUILDDIR%/htmlhelp
|
||||
if errorlevel 1 exit /b 1
|
||||
echo.
|
||||
echo.Build finished; now you can run HTML Help Workshop with the ^
|
||||
.hhp project file in %BUILDDIR%/htmlhelp.
|
||||
goto end
|
||||
)
|
||||
|
||||
if "%1" == "qthelp" (
|
||||
%SPHINXBUILD% -b qthelp %ALLSPHINXOPTS% %BUILDDIR%/qthelp
|
||||
if errorlevel 1 exit /b 1
|
||||
echo.
|
||||
echo.Build finished; now you can run "qcollectiongenerator" with the ^
|
||||
.qhcp project file in %BUILDDIR%/qthelp, like this:
|
||||
echo.^> qcollectiongenerator %BUILDDIR%\qthelp\xCAT3.qhcp
|
||||
echo.To view the help file:
|
||||
echo.^> assistant -collectionFile %BUILDDIR%\qthelp\xCAT3.ghc
|
||||
goto end
|
||||
)
|
||||
|
||||
if "%1" == "devhelp" (
|
||||
%SPHINXBUILD% -b devhelp %ALLSPHINXOPTS% %BUILDDIR%/devhelp
|
||||
if errorlevel 1 exit /b 1
|
||||
echo.
|
||||
echo.Build finished.
|
||||
goto end
|
||||
)
|
||||
|
||||
if "%1" == "epub" (
|
||||
%SPHINXBUILD% -b epub %ALLSPHINXOPTS% %BUILDDIR%/epub
|
||||
if errorlevel 1 exit /b 1
|
||||
echo.
|
||||
echo.Build finished. The epub file is in %BUILDDIR%/epub.
|
||||
goto end
|
||||
)
|
||||
|
||||
if "%1" == "latex" (
|
||||
%SPHINXBUILD% -b latex %ALLSPHINXOPTS% %BUILDDIR%/latex
|
||||
if errorlevel 1 exit /b 1
|
||||
echo.
|
||||
echo.Build finished; the LaTeX files are in %BUILDDIR%/latex.
|
||||
goto end
|
||||
)
|
||||
|
||||
if "%1" == "latexpdf" (
|
||||
%SPHINXBUILD% -b latex %ALLSPHINXOPTS% %BUILDDIR%/latex
|
||||
cd %BUILDDIR%/latex
|
||||
make all-pdf
|
||||
cd %~dp0
|
||||
echo.
|
||||
echo.Build finished; the PDF files are in %BUILDDIR%/latex.
|
||||
goto end
|
||||
)
|
||||
|
||||
if "%1" == "latexpdfja" (
|
||||
%SPHINXBUILD% -b latex %ALLSPHINXOPTS% %BUILDDIR%/latex
|
||||
cd %BUILDDIR%/latex
|
||||
make all-pdf-ja
|
||||
cd %~dp0
|
||||
echo.
|
||||
echo.Build finished; the PDF files are in %BUILDDIR%/latex.
|
||||
goto end
|
||||
)
|
||||
|
||||
if "%1" == "text" (
|
||||
%SPHINXBUILD% -b text %ALLSPHINXOPTS% %BUILDDIR%/text
|
||||
if errorlevel 1 exit /b 1
|
||||
echo.
|
||||
echo.Build finished. The text files are in %BUILDDIR%/text.
|
||||
goto end
|
||||
)
|
||||
|
||||
if "%1" == "man" (
|
||||
%SPHINXBUILD% -b man %ALLSPHINXOPTS% %BUILDDIR%/man
|
||||
if errorlevel 1 exit /b 1
|
||||
echo.
|
||||
echo.Build finished. The manual pages are in %BUILDDIR%/man.
|
||||
goto end
|
||||
)
|
||||
|
||||
if "%1" == "texinfo" (
|
||||
%SPHINXBUILD% -b texinfo %ALLSPHINXOPTS% %BUILDDIR%/texinfo
|
||||
if errorlevel 1 exit /b 1
|
||||
echo.
|
||||
echo.Build finished. The Texinfo files are in %BUILDDIR%/texinfo.
|
||||
goto end
|
||||
)
|
||||
|
||||
if "%1" == "gettext" (
|
||||
%SPHINXBUILD% -b gettext %I18NSPHINXOPTS% %BUILDDIR%/locale
|
||||
if errorlevel 1 exit /b 1
|
||||
echo.
|
||||
echo.Build finished. The message catalogs are in %BUILDDIR%/locale.
|
||||
goto end
|
||||
)
|
||||
|
||||
if "%1" == "changes" (
|
||||
%SPHINXBUILD% -b changes %ALLSPHINXOPTS% %BUILDDIR%/changes
|
||||
if errorlevel 1 exit /b 1
|
||||
echo.
|
||||
echo.The overview file is in %BUILDDIR%/changes.
|
||||
goto end
|
||||
)
|
||||
|
||||
if "%1" == "linkcheck" (
|
||||
%SPHINXBUILD% -b linkcheck %ALLSPHINXOPTS% %BUILDDIR%/linkcheck
|
||||
if errorlevel 1 exit /b 1
|
||||
echo.
|
||||
echo.Link check complete; look for any errors in the above output ^
|
||||
or in %BUILDDIR%/linkcheck/output.txt.
|
||||
goto end
|
||||
)
|
||||
|
||||
if "%1" == "doctest" (
|
||||
%SPHINXBUILD% -b doctest %ALLSPHINXOPTS% %BUILDDIR%/doctest
|
||||
if errorlevel 1 exit /b 1
|
||||
echo.
|
||||
echo.Testing of doctests in the sources finished, look at the ^
|
||||
results in %BUILDDIR%/doctest/output.txt.
|
||||
goto end
|
||||
)
|
||||
|
||||
if "%1" == "coverage" (
|
||||
%SPHINXBUILD% -b coverage %ALLSPHINXOPTS% %BUILDDIR%/coverage
|
||||
if errorlevel 1 exit /b 1
|
||||
echo.
|
||||
echo.Testing of coverage in the sources finished, look at the ^
|
||||
results in %BUILDDIR%/coverage/python.txt.
|
||||
goto end
|
||||
)
|
||||
|
||||
if "%1" == "xml" (
|
||||
%SPHINXBUILD% -b xml %ALLSPHINXOPTS% %BUILDDIR%/xml
|
||||
if errorlevel 1 exit /b 1
|
||||
echo.
|
||||
echo.Build finished. The XML files are in %BUILDDIR%/xml.
|
||||
goto end
|
||||
)
|
||||
|
||||
if "%1" == "pseudoxml" (
|
||||
%SPHINXBUILD% -b pseudoxml %ALLSPHINXOPTS% %BUILDDIR%/pseudoxml
|
||||
if errorlevel 1 exit /b 1
|
||||
echo.
|
||||
echo.Build finished. The pseudo-XML files are in %BUILDDIR%/pseudoxml.
|
||||
goto end
|
||||
)
|
||||
|
||||
:end
|
53
source/advanced/confetty/confetty.rst
Normal file
53
source/advanced/confetty/confetty.rst
Normal file
@ -0,0 +1,53 @@
|
||||
|
||||
|
||||
Starting the confetty client
|
||||
============================
|
||||
|
||||
As the root user, running ``/opt/confluent/bin/confetty`` will open the confetty prompt ::
|
||||
|
||||
[root@c910f02c05p03 ~]# /opt/confluent/bin/confetty
|
||||
/ ->
|
||||
|
||||
Creating a non root user
|
||||
========================
|
||||
|
||||
It's recommenteed to create a non root user to use to connect to confetty
|
||||
|
||||
#. Create a non-root user on the management node: ::
|
||||
|
||||
useradd -m vhu
|
||||
|
||||
#. As root, create a non-root user in confetty: ::
|
||||
|
||||
/opt/confluent/bin/confetty create users/vhu
|
||||
|
||||
#. Set the password for the non-root user: ::
|
||||
|
||||
/opt/confluent/bin/confetty set users/vhu password="mynewpassword"
|
||||
password="********"
|
||||
|
||||
|
||||
Connecting to a remote server
|
||||
=============================
|
||||
|
||||
|
||||
In order to do remote sessions, keys must first be added to ``/etc/confluent``
|
||||
|
||||
* /etc/confluent/privkey.pem - private key
|
||||
* /etc/confluent/srvcert.pem - server cert
|
||||
|
||||
If you want to use the xCAT Keys, you can simple copy them into ``/etc/confluent`` ::
|
||||
|
||||
cp /etc/xcat/cert/server-key.pem /etc/confluent/privkey.pem
|
||||
cp /etc/xcat/cert/server-cert.pem /etc/confluent/srvcert.pem
|
||||
|
||||
|
||||
Start confetty, specify the server IP address: ::
|
||||
|
||||
confetty -s 127.0.0.1
|
||||
|
||||
|
||||
|
||||
TODO: Add text for exporting user/pass into environment
|
||||
|
||||
|
9
source/advanced/confetty/index.rst
Normal file
9
source/advanced/confetty/index.rst
Normal file
@ -0,0 +1,9 @@
|
||||
Confetty
|
||||
=========
|
||||
|
||||
Confetty is a client to confluent server
|
||||
|
||||
.. toctree::
|
||||
:maxdepth: 2
|
||||
|
||||
confetty.rst
|
146
source/advanced/confluent/confluent.rst
Normal file
146
source/advanced/confluent/confluent.rst
Normal file
@ -0,0 +1,146 @@
|
||||
Getting Started
|
||||
---------------
|
||||
|
||||
For xCAT 2.9.1 and later, confluent is intended to be used in conjunction with xCAT.
|
||||
The following documentation assumes that xCAT is already installed and configured on the management node.
|
||||
|
||||
Download
|
||||
--------
|
||||
|
||||
confluent
|
||||
^^^^^^^^^
|
||||
|
||||
The latest confluent rpms are built and provided for your convenience: `confluent rpms <https://sourceforge.net/projects/xcat/files/confluent/rpms>`_
|
||||
|
||||
The following example downloads the confluent tar package and creates a local repository on your management node::
|
||||
|
||||
mkdir ~/confluent
|
||||
cd ~/confluent
|
||||
wget https://path-to-confluent/confluent-X.X-repo.tbz2
|
||||
tar jxvf confluent-X.X-repo.tbz2
|
||||
cd confluent-X.X
|
||||
./mklocalrepo.sh
|
||||
|
||||
|
||||
confluent-dep
|
||||
^^^^^^^^^^^^^
|
||||
|
||||
The latest confluent dependency packages are provided for your convenience: `confluent-deps <http://sourceforge.net/projects/xcat/files/confluent-dep/>`_
|
||||
|
||||
The following example describes the steps for **rhels7.1** on **ppc64le**::
|
||||
|
||||
mkdkir ~/confluent
|
||||
cd ~/confluent
|
||||
wget https://path/to/confluent-dep/rh7/ppc64le/confluent-dep-rh7-ppc64le.tar.bz2
|
||||
tar -jxvf confluent-dep-rh7-ppc64le.tar.bz2
|
||||
cd confluent-dep-rh7-ppc64le/
|
||||
./mklocalrepo.sh
|
||||
|
||||
**Note:** If the OS/architecture you are looking for is not provided under confluent-dep,
|
||||
please send an email to the xcat-users mailing list: xcat-users@lists.sourceforge.net
|
||||
|
||||
|
||||
Install
|
||||
-------
|
||||
|
||||
*confluent and confluent-deps must be downloaded to the management node before installing*
|
||||
|
||||
xCAT 2.9.1 began shipping a new rpm ``xCAT-confluent``.
|
||||
|
||||
Installing ``xCAT-confluent`` via yum will pull in the confluent dependencies::
|
||||
|
||||
yum install xCAT-confluent
|
||||
|
||||
You may find it helpful to add the confluent paths into your system path::
|
||||
|
||||
CONFLUENTROOT=/opt/confluent
|
||||
export PATH=$CONFLUENTROOT/bin:$PATH
|
||||
export MANPATH=$CONFLUENTROOT/share/man:$MANPATH
|
||||
|
||||
Configuration
|
||||
-------------
|
||||
|
||||
Starting/Stopping confluent
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
To start confluent::
|
||||
|
||||
service confluent start
|
||||
|
||||
To stop confluent::
|
||||
|
||||
service confluent stop
|
||||
|
||||
If you want confluent daemon to start automatically at bootup, add confluent service to ``chkconfig``::
|
||||
|
||||
chkconfig --add confluent
|
||||
|
||||
Replacing conserver with confluent
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
A new keyword, ``consoleservice``, has been added to the xCAT site table to allow the system administrator to control between **conserver** and **confluent**. If ``consoleservice`` is not set, default behavior is to use **conserver**.
|
||||
|
||||
Set the consoleservice to confluent::
|
||||
|
||||
chdef -t site consoleservice='confluent'
|
||||
|
||||
Run ``makeconfluentcfg`` to create the confluent configuration files::
|
||||
|
||||
makeconfluentcfg
|
||||
|
||||
Use ``rcons`` as before to start the console session.::
|
||||
|
||||
rcons <singlenode>
|
||||
|
||||
# If using confluent, a timestamp will be shown on the
|
||||
# console title next to the node name
|
||||
<singlenode> [15:05]
|
||||
|
||||
|
||||
|
||||
Web Browser access
|
||||
------------------
|
||||
|
||||
Confluent-api and confluent-consoles are able to be accessed from the browser.
|
||||
It is **highly** recommended that you create a non-root user to access the sessions::
|
||||
|
||||
Create the non-root user on the management node
|
||||
# useradd -m vhu
|
||||
|
||||
Create a non-root user in confetty
|
||||
# /opt/confluent/bin/confetty create users/vhu
|
||||
|
||||
Set the password for the non-root user
|
||||
# /opt/confluent/bin/confetty set users/vhu password="mynewpassword"
|
||||
password="********"
|
||||
|
||||
Rest Explorer
|
||||
^^^^^^^^^^^^^
|
||||
|
||||
TODO: some intro text
|
||||
|
||||
Configure the httpd configuration for confluent-api by creating a ``confluent.conf`` file under ``/etc/httpd/conf.d/`` directory::
|
||||
|
||||
The example uses server ip: 10.2.5.3 and port 4005
|
||||
|
||||
cat /etc/httpd/conf.d/confluent.conf
|
||||
LoadModule proxy_http_module modules/mod_proxy_http.so
|
||||
<Location /confluent-api>
|
||||
ProxyPass http://10.2.5.3:4005
|
||||
</Location>
|
||||
|
||||
#restart httpd
|
||||
service httpd restart
|
||||
|
||||
Now point your browser to: ``http://<server ip>:<port>`` and log in with the non-root user and password created above.
|
||||
|
||||
Confluent consoles
|
||||
^^^^^^^^^^^^^^^^^^
|
||||
|
||||
confluent-web is provided in a subdirectory under the confluent project `confluent_web <https://sourceforge.net/p/xcat/confluent/ci/master/tree/confluent_web/>`_
|
||||
|
||||
Download the content of that directory to ``/var/www/html/confluent`` and point your browser to::
|
||||
|
||||
http://<server ip>/confluent/consoles.html
|
||||
|
||||
|
15
source/advanced/confluent/index.rst
Normal file
15
source/advanced/confluent/index.rst
Normal file
@ -0,0 +1,15 @@
|
||||
Confluent
|
||||
=========
|
||||
|
||||
Confluent is a new codebase with a few goals in mind:
|
||||
|
||||
* Augment xCAT 2.X series
|
||||
* Potentially serve in place of xCAT-server for the next generation of xCAT
|
||||
|
||||
**Disclaimer:** *Confluent code in conjunction with xCAT 2.X is currently BETA, use at your own risk*
|
||||
|
||||
|
||||
.. toctree::
|
||||
:maxdepth: 2
|
||||
|
||||
confluent.rst
|
7
source/advanced/docker/index.rst
Normal file
7
source/advanced/docker/index.rst
Normal file
@ -0,0 +1,7 @@
|
||||
Docker
|
||||
======
|
||||
|
||||
Placeholder for Docker related topics
|
||||
|
||||
.. toctree::
|
||||
:maxdepth: 2
|
10
source/advanced/index.rst
Normal file
10
source/advanced/index.rst
Normal file
@ -0,0 +1,10 @@
|
||||
Advanced Topics
|
||||
===============
|
||||
|
||||
.. toctree::
|
||||
:maxdepth: 2
|
||||
|
||||
confluent/index
|
||||
confetty/index
|
||||
docker/index
|
||||
mixed_cluster
|
87
source/advanced/mixed_cluster.rst
Normal file
87
source/advanced/mixed_cluster.rst
Normal file
@ -0,0 +1,87 @@
|
||||
Mixed Cluster Management
|
||||
========================
|
||||
|
||||
ppc64 mgmt node
|
||||
---------------
|
||||
|
||||
Provision x86_64 (bare metal)
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
In order to provision x86_64 ipmi-based machines from xCAT management node (ppc64), there are a few required xCAT dependency RPMs that must be installed:
|
||||
|
||||
* ``elilo-xcat``
|
||||
* ``xnba-undi``
|
||||
* ``syslinux-xcat``
|
||||
|
||||
Install these RPMs using the following command: ::
|
||||
|
||||
yum install elilo-xcat xnba-undi syslinux-xcat
|
||||
|
||||
On the ppc64 management node, obtain an x86_64 operating system ISO and add it into the xCAT osimage table by using the copycds command: ::
|
||||
|
||||
copycds /tmp/RHEL-6.6-20140926.0-Server-x86_64-dvd1.iso
|
||||
|
||||
Create a node definition for the x86_64 compute node, here is a sample: ::
|
||||
|
||||
lsdef -z c910f04x42
|
||||
# <xCAT data object stanza file>
|
||||
|
||||
c910f04x42:
|
||||
objtype=node
|
||||
arch=x86_64
|
||||
bmc=10.4.42.254
|
||||
bmcpassword=PASSW0RD
|
||||
bmcusername=USERID
|
||||
chain=runcmd=bmcsetup,shell
|
||||
cons=ipmi
|
||||
groups=all
|
||||
initrd=xcat/osimage/rhels6.6-x86_64-install-compute/initrd.img
|
||||
installnic=mac
|
||||
kcmdline=quiet repo=http://!myipfn!:80/install/rhels6.6/x86_64 ks=http://!myipfn!:80/install/autoinst/c910f04x42 ksdevice=34:40:b5:b9:c0:18 cmdline console=tty0 console=ttyS0,115200n8r
|
||||
kernel=xcat/osimage/rhels6.6-x86_64-install-compute/vmlinuz
|
||||
mac=34:40:b5:b9:c0:18
|
||||
mgt=ipmi
|
||||
netboot=xnba
|
||||
nodetype=osi
|
||||
os=rhels6.6
|
||||
profile=compute
|
||||
provmethod=rhels6.6-x86_64-install-compute
|
||||
serialflow=hard
|
||||
serialport=0
|
||||
serialspeed=115200
|
||||
|
||||
Provision the node using the following commands: ::
|
||||
|
||||
# The following prepares the kickstart file in /install/autoinst
|
||||
nodeset c910f04x42 osimage=rhels6.6-x86_64-install-compute
|
||||
|
||||
# Tells the BIOS to network boot on the next power on
|
||||
rsetboot c910f04x42 net
|
||||
|
||||
# Reboots the node
|
||||
rpower c910f04x42 boot
|
||||
|
||||
|
||||
|
||||
Provision x86_64 (diskless)
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
Troubleshooting
|
||||
^^^^^^^^^^^^^^^
|
||||
|
||||
**Error:** The following Error message comes out when running nodeset: ::
|
||||
|
||||
Error: Unable to find pxelinux.0 at /opt/xcat/share/xcat/netboot/syslinux/pxelinux.0
|
||||
|
||||
**Resolution:**
|
||||
|
||||
The syslinux network booting files are missing.
|
||||
Install the sylinux-xcat package provided in the xcat-deps repository: ``yum -y install syslinux-xcat``
|
||||
|
||||
|
||||
|
||||
x86_64 mgmt node
|
||||
----------------
|
||||
|
||||
Provision ppc64 compute nodes
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
292
source/conf.py
Normal file
292
source/conf.py
Normal file
@ -0,0 +1,292 @@
|
||||
# -*- coding: utf-8 -*-
|
||||
#
|
||||
# xCAT documentation build configuration file, created by
|
||||
# sphinx-quickstart on Thu May 28 14:34:34 2015.
|
||||
#
|
||||
# This file is execfile()d with the current directory set to its
|
||||
# containing dir.
|
||||
#
|
||||
# Note that not all possible configuration values are present in this
|
||||
# autogenerated file.
|
||||
#
|
||||
# All configuration values have a default; values that are commented out
|
||||
# serve to show the default.
|
||||
|
||||
import sys
|
||||
import os
|
||||
import shlex
|
||||
|
||||
# If extensions (or modules to document with autodoc) are in another directory,
|
||||
# add these directories to sys.path here. If the directory is relative to the
|
||||
# documentation root, use os.path.abspath to make it absolute, like shown here.
|
||||
#sys.path.insert(0, os.path.abspath('.'))
|
||||
|
||||
# -- General configuration ------------------------------------------------
|
||||
|
||||
# If your documentation needs a minimal Sphinx version, state it here.
|
||||
#needs_sphinx = '1.0'
|
||||
|
||||
# Add any Sphinx extension module names here, as strings. They can be
|
||||
# extensions coming with Sphinx (named 'sphinx.ext.*') or your custom
|
||||
# ones.
|
||||
extensions = [
|
||||
'sphinx.ext.autodoc',
|
||||
]
|
||||
|
||||
# Add any paths that contain templates here, relative to this directory.
|
||||
templates_path = ['_templates']
|
||||
|
||||
# The suffix(es) of source filenames.
|
||||
# You can specify multiple suffix as a list of string:
|
||||
# source_suffix = ['.rst', '.md']
|
||||
source_suffix = '.rst'
|
||||
|
||||
# The encoding of source files.
|
||||
#source_encoding = 'utf-8-sig'
|
||||
|
||||
# The master toctree document.
|
||||
master_doc = 'index'
|
||||
|
||||
# General information about the project.
|
||||
project = u'xCAT'
|
||||
copyright = u'2015, IBM Corporation'
|
||||
author = u'IBM Corporation'
|
||||
|
||||
# The version info for the project you're documenting, acts as replacement for
|
||||
# |version| and |release|, also used in various other places throughout the
|
||||
# built documents.
|
||||
#
|
||||
# The short X.Y version.
|
||||
version = '0.0.1'
|
||||
# The full version, including alpha/beta/rc tags.
|
||||
release = '0.0.1'
|
||||
|
||||
# The language for content autogenerated by Sphinx. Refer to documentation
|
||||
# for a list of supported languages.
|
||||
#
|
||||
# This is also used if you do content translation via gettext catalogs.
|
||||
# Usually you set "language" from the command line for these cases.
|
||||
language = None
|
||||
|
||||
# There are two options for replacing |today|: either, you set today to some
|
||||
# non-false value, then it is used:
|
||||
#today = ''
|
||||
# Else, today_fmt is used as the format for a strftime call.
|
||||
#today_fmt = '%B %d, %Y'
|
||||
|
||||
# List of patterns, relative to source directory, that match files and
|
||||
# directories to ignore when looking for source files.
|
||||
exclude_patterns = []
|
||||
|
||||
# The reST default role (used for this markup: `text`) to use for all
|
||||
# documents.
|
||||
#default_role = None
|
||||
|
||||
# If true, '()' will be appended to :func: etc. cross-reference text.
|
||||
#add_function_parentheses = True
|
||||
|
||||
# If true, the current module name will be prepended to all description
|
||||
# unit titles (such as .. function::).
|
||||
#add_module_names = True
|
||||
|
||||
# If true, sectionauthor and moduleauthor directives will be shown in the
|
||||
# output. They are ignored by default.
|
||||
#show_authors = False
|
||||
|
||||
# The name of the Pygments (syntax highlighting) style to use.
|
||||
pygments_style = 'sphinx'
|
||||
|
||||
# A list of ignored prefixes for module index sorting.
|
||||
#modindex_common_prefix = []
|
||||
|
||||
# If true, keep warnings as "system message" paragraphs in the built documents.
|
||||
#keep_warnings = False
|
||||
|
||||
# If true, `todo` and `todoList` produce output, else they produce nothing.
|
||||
todo_include_todos = False
|
||||
|
||||
|
||||
# -- Options for HTML output ----------------------------------------------
|
||||
|
||||
# The theme to use for HTML and HTML Help pages. See the documentation for
|
||||
# a list of builtin themes.
|
||||
import os
|
||||
on_rtd = os.environ.get('READTHEDOCS', None) == 'True'
|
||||
if on_rtd:
|
||||
html_theme = 'default'
|
||||
else:
|
||||
# some of the popular themes: alabaster, sphinx_rtd_theme, classic, nature
|
||||
html_theme = 'sphinx_rtd_theme'
|
||||
|
||||
# Theme options are theme-specific and customize the look and feel of a theme
|
||||
# further. For a list of options available for each theme, see the
|
||||
# documentation.
|
||||
#html_theme_options = {}
|
||||
|
||||
# Add any paths that contain custom themes here, relative to this directory.
|
||||
#html_theme_path = []
|
||||
|
||||
# The name for this set of Sphinx documents. If None, it defaults to
|
||||
# "<project> v<release> documentation".
|
||||
#html_title = None
|
||||
|
||||
# A shorter title for the navigation bar. Default is the same as html_title.
|
||||
#html_short_title = None
|
||||
|
||||
# The name of an image file (relative to this directory) to place at the top
|
||||
# of the sidebar.
|
||||
#html_logo = None
|
||||
|
||||
# The name of an image file (within the static path) to use as favicon of the
|
||||
# docs. This file should be a Windows icon file (.ico) being 16x16 or 32x32
|
||||
# pixels large.
|
||||
#html_favicon = None
|
||||
|
||||
# Add any paths that contain custom static files (such as style sheets) here,
|
||||
# relative to this directory. They are copied after the builtin static files,
|
||||
# so a file named "default.css" will overwrite the builtin "default.css".
|
||||
html_static_path = ['_static']
|
||||
|
||||
# Add any extra paths that contain custom files (such as robots.txt or
|
||||
# .htaccess) here, relative to this directory. These files are copied
|
||||
# directly to the root of the documentation.
|
||||
#html_extra_path = []
|
||||
|
||||
# If not '', a 'Last updated on:' timestamp is inserted at every page bottom,
|
||||
# using the given strftime format.
|
||||
#html_last_updated_fmt = '%b %d, %Y'
|
||||
|
||||
# If true, SmartyPants will be used to convert quotes and dashes to
|
||||
# typographically correct entities.
|
||||
#html_use_smartypants = True
|
||||
|
||||
# Custom sidebar templates, maps document names to template names.
|
||||
#html_sidebars = {}
|
||||
|
||||
# Additional templates that should be rendered to pages, maps page names to
|
||||
# template names.
|
||||
#html_additional_pages = {}
|
||||
|
||||
# If false, no module index is generated.
|
||||
#html_domain_indices = True
|
||||
|
||||
# If false, no index is generated.
|
||||
#html_use_index = True
|
||||
|
||||
# If true, the index is split into individual pages for each letter.
|
||||
#html_split_index = False
|
||||
|
||||
# If true, links to the reST sources are added to the pages.
|
||||
#html_show_sourcelink = True
|
||||
|
||||
# If true, "Created using Sphinx" is shown in the HTML footer. Default is True.
|
||||
#html_show_sphinx = True
|
||||
|
||||
# If true, "(C) Copyright ..." is shown in the HTML footer. Default is True.
|
||||
#html_show_copyright = True
|
||||
|
||||
# If true, an OpenSearch description file will be output, and all pages will
|
||||
# contain a <link> tag referring to it. The value of this option must be the
|
||||
# base URL from which the finished HTML is served.
|
||||
#html_use_opensearch = ''
|
||||
|
||||
# This is the file name suffix for HTML files (e.g. ".xhtml").
|
||||
#html_file_suffix = None
|
||||
|
||||
# Language to be used for generating the HTML full-text search index.
|
||||
# Sphinx supports the following languages:
|
||||
# 'da', 'de', 'en', 'es', 'fi', 'fr', 'hu', 'it', 'ja'
|
||||
# 'nl', 'no', 'pt', 'ro', 'ru', 'sv', 'tr'
|
||||
#html_search_language = 'en'
|
||||
|
||||
# A dictionary with options for the search language support, empty by default.
|
||||
# Now only 'ja' uses this config value
|
||||
#html_search_options = {'type': 'default'}
|
||||
|
||||
# The name of a javascript file (relative to the configuration directory) that
|
||||
# implements a search results scorer. If empty, the default will be used.
|
||||
#html_search_scorer = 'scorer.js'
|
||||
|
||||
# Output file base name for HTML help builder.
|
||||
htmlhelp_basename = 'xCAT3doc'
|
||||
|
||||
# -- Options for LaTeX output ---------------------------------------------
|
||||
|
||||
latex_elements = {
|
||||
# The paper size ('letterpaper' or 'a4paper').
|
||||
#'papersize': 'letterpaper',
|
||||
|
||||
# The font size ('10pt', '11pt' or '12pt').
|
||||
#'pointsize': '10pt',
|
||||
|
||||
# Additional stuff for the LaTeX preamble.
|
||||
#'preamble': '',
|
||||
|
||||
# Latex figure (float) alignment
|
||||
#'figure_align': 'htbp',
|
||||
}
|
||||
|
||||
# Grouping the document tree into LaTeX files. List of tuples
|
||||
# (source start file, target name, title,
|
||||
# author, documentclass [howto, manual, or own class]).
|
||||
latex_documents = [
|
||||
(master_doc, 'xCAT3.tex', u'xCAT3 Documentation',
|
||||
u'IBM Corporation', 'manual'),
|
||||
]
|
||||
|
||||
# The name of an image file (relative to this directory) to place at the top of
|
||||
# the title page.
|
||||
#latex_logo = None
|
||||
|
||||
# For "manual" documents, if this is true, then toplevel headings are parts,
|
||||
# not chapters.
|
||||
#latex_use_parts = False
|
||||
|
||||
# If true, show page references after internal links.
|
||||
#latex_show_pagerefs = False
|
||||
|
||||
# If true, show URL addresses after external links.
|
||||
#latex_show_urls = False
|
||||
|
||||
# Documents to append as an appendix to all manuals.
|
||||
#latex_appendices = []
|
||||
|
||||
# If false, no module index is generated.
|
||||
#latex_domain_indices = True
|
||||
|
||||
|
||||
# -- Options for manual page output ---------------------------------------
|
||||
|
||||
# One entry per manual page. List of tuples
|
||||
# (source start file, name, description, authors, manual section).
|
||||
man_pages = [
|
||||
(master_doc, 'xcat3', u'xCAT3 Documentation',
|
||||
[author], 1)
|
||||
]
|
||||
|
||||
# If true, show URL addresses after external links.
|
||||
#man_show_urls = False
|
||||
|
||||
|
||||
# -- Options for Texinfo output -------------------------------------------
|
||||
|
||||
# Grouping the document tree into Texinfo files. List of tuples
|
||||
# (source start file, target name, title, author,
|
||||
# dir menu entry, description, category)
|
||||
texinfo_documents = [
|
||||
(master_doc, 'xCAT3', u'xCAT3 Documentation',
|
||||
author, 'xCAT3', 'One line description of project.',
|
||||
'Miscellaneous'),
|
||||
]
|
||||
|
||||
# Documents to append as an appendix to all manuals.
|
||||
#texinfo_appendices = []
|
||||
|
||||
# If false, no module index is generated.
|
||||
#texinfo_domain_indices = True
|
||||
|
||||
# How to display URL addresses: 'footnote', 'no', or 'inline'.
|
||||
#texinfo_show_urls = 'footnote'
|
||||
|
||||
# If true, do not generate a @detailmenu in the "Top" node's menu.
|
||||
#texinfo_no_detailmenu = False
|
3
source/developers/git.rst
Normal file
3
source/developers/git.rst
Normal file
@ -0,0 +1,3 @@
|
||||
Git
|
||||
===
|
||||
|
10
source/developers/index.rst
Normal file
10
source/developers/index.rst
Normal file
@ -0,0 +1,10 @@
|
||||
Developers
|
||||
==========
|
||||
|
||||
This page is for developers interested in working with xCAT.
|
||||
|
||||
|
||||
.. toctree::
|
||||
:maxdepth: 2
|
||||
|
||||
git
|
7
source/guides/admin-guides/index.rst
Normal file
7
source/guides/admin-guides/index.rst
Normal file
@ -0,0 +1,7 @@
|
||||
Admin Guide
|
||||
===========
|
||||
|
||||
.. toctree::
|
||||
:maxdepth: 1
|
||||
|
||||
large_clusters/index.rst
|
@ -0,0 +1,40 @@
|
||||
Databases
|
||||
=========
|
||||
|
||||
xCAT Supports the following databases to be used by xCAT on the Management node
|
||||
|
||||
* SQLite
|
||||
* MySQL/MariaDB
|
||||
* PostgreSQL
|
||||
* DB2
|
||||
|
||||
|
||||
SQLite
|
||||
------
|
||||
|
||||
SQLite database is the default database used by xCAT and is initialized when xCAT is installed on the management node.
|
||||
|
||||
SQLite is a small, light-weight, daemon-less database that requires no configuration or maintenance. This database is sufficient for small to moderate size systems ( < 1000 nodes ) when xCAT hierarchy (*service nodes*) is not being used. The SQLite database cannot be used for hierarchy because service nodes requires remote access to the database and SQLite does not support remote access.
|
||||
|
||||
For hierarchy, you will need to use one of the following alternate databases.
|
||||
|
||||
MySQL/MariaDB
|
||||
-------------
|
||||
|
||||
.. toctree::
|
||||
:maxdepth: 2
|
||||
|
||||
mysql_install.rst
|
||||
mysql_configure.rst
|
||||
|
||||
|
||||
|
||||
PostgreSQL
|
||||
----------
|
||||
|
||||
.. toctree::
|
||||
:maxdepth: 2
|
||||
|
||||
postgres_install.rst
|
||||
postgres_configure.rst
|
||||
postgres_tips.rst
|
@ -0,0 +1,2 @@
|
||||
Configure MySQL
|
||||
===============
|
@ -0,0 +1,2 @@
|
||||
Install MySQL
|
||||
=============
|
@ -0,0 +1,9 @@
|
||||
Migrate xCAT to use PostgreSQL
|
||||
==============================
|
||||
|
||||
A utility is provided to migrate an existing xCAT database from SQLite to PostgreSQL. ::
|
||||
|
||||
pgsqlsetup -i -V
|
||||
|
||||
**While not recommended**, if you wish to manually migrate your xCAT database, see the following documentation:
|
||||
`Manually set up PostgreSQL <https://sourceforge.net/p/xcat/wiki/Setting_Up_PostgreSQL_as_the_xCAT_DB/#manually-setup-postgresql>`_
|
@ -0,0 +1,34 @@
|
||||
Install PostgreSQL
|
||||
==================
|
||||
|
||||
PostgreSQL packages are shipped as part of most Linux Distributions.
|
||||
|
||||
|
||||
Redhat Enterprise Linux
|
||||
-----------------------
|
||||
|
||||
Using yum, install the requires postgres rpms: ::
|
||||
|
||||
yum install postgresql-libs-* postgresql-server-* postgresql-*
|
||||
yum install perl-DBD-Pg*
|
||||
|
||||
|
||||
Suse Linux Enterprise Server
|
||||
----------------------------
|
||||
|
||||
**Note:** On SLES, ``perl-DBD`` packages are provided on the SDK iso images.
|
||||
|
||||
Using zyppr, install the requires postgres rpms: ::
|
||||
|
||||
zyppr install postgresql-libs-* postgresql-server-* postgresql-*
|
||||
zyppr install perl-DBD-Pg*
|
||||
|
||||
|
||||
Debian/Ubuntu
|
||||
-------------
|
||||
|
||||
Using apt, install the requires postgres packages: ::
|
||||
|
||||
apt install postgresql libdbd-pg-perl
|
||||
|
||||
|
@ -0,0 +1,53 @@
|
||||
PostgreSQL tips
|
||||
===============
|
||||
|
||||
Using PostgreSQL
|
||||
----------------
|
||||
|
||||
* Connect to the database
|
||||
|
||||
Use the psql command line utility to connect to the PostgreSQL database: ::
|
||||
|
||||
su - postgres
|
||||
psql -h <hostname> -U xcatadm -d xcatdb
|
||||
|
||||
|
||||
Useful Commands
|
||||
---------------
|
||||
|
||||
* Show create statement for a table, for example prescripts table. ::
|
||||
|
||||
/usr/bin/pg_dump xcatdb -U xcatadm -t prescripts
|
||||
|
||||
* Clean up the xcatdb completely from PostgreSQL: ::
|
||||
|
||||
su - postgres
|
||||
|
||||
# drop the xcatdb
|
||||
dropdb xcatdb
|
||||
|
||||
# remove the xcatadm database owner
|
||||
dropuser xcatadm
|
||||
|
||||
# clean up the postgresql files (necessary if you want to re-create the database)
|
||||
cd /var/lib/pgsql/data
|
||||
rm -rf *
|
||||
|
||||
* List databases: ::
|
||||
|
||||
su - postgres
|
||||
psql -l
|
||||
|
||||
* Access the database: ::
|
||||
|
||||
su - postgres
|
||||
psql xcatdb
|
||||
SELECT * FROM "pg_user"; Select all users
|
||||
SELECT * FROM "site"; Select the site table
|
||||
SELECT MAX(recid) from "auditlog";
|
||||
SELECT MIN(recid) from "auditlog";
|
||||
drop table zvm; Removes a table
|
||||
\dt Select all tables
|
||||
\? help
|
||||
\q exit
|
||||
|
7
source/guides/admin-guides/large_clusters/index.rst
Normal file
7
source/guides/admin-guides/large_clusters/index.rst
Normal file
@ -0,0 +1,7 @@
|
||||
Managing Large Clusters
|
||||
=======================
|
||||
|
||||
.. toctree::
|
||||
:maxdepth: 2
|
||||
|
||||
databases/index.rst
|
9
source/guides/install-guides/apt/index.rst
Normal file
9
source/guides/install-guides/apt/index.rst
Normal file
@ -0,0 +1,9 @@
|
||||
Installation Guide for Ubuntu Server LTS
|
||||
========================================
|
||||
|
||||
For the list of currently supported Ubuntu LTS operatin systems, see :ref:`ubuntu-os-support-label`.
|
||||
|
||||
.. toctree::
|
||||
:maxdepth: 2
|
||||
|
||||
../common/prepare_mgmt_node
|
20
source/guides/install-guides/common/install_guide.rst
Normal file
20
source/guides/install-guides/common/install_guide.rst
Normal file
@ -0,0 +1,20 @@
|
||||
|
||||
.. BEGIN_install_os_mgmt_node
|
||||
|
||||
|
||||
The system requirements for your xCAT management node largely depends on the size of the cluster you plan to manage and the type of provisioning used (diskful, diskless, system clones, etc). The majority of system load comes during cluster provisioning time.
|
||||
|
||||
**Memory Requirements:**
|
||||
|
||||
+--------------+-------------+
|
||||
| Cluster Size | Memory (GB) |
|
||||
+==============+=============+
|
||||
| Small (< 16) | 4-6 |
|
||||
+--------------+-------------+
|
||||
| Medium | 6-8 |
|
||||
+--------------+-------------+
|
||||
| Large | > 16 |
|
||||
+--------------+-------------+
|
||||
|
||||
|
||||
.. END_install_os_mgmt_node
|
76
source/guides/install-guides/common/prepare_mgmt_node.rst
Normal file
76
source/guides/install-guides/common/prepare_mgmt_node.rst
Normal file
@ -0,0 +1,76 @@
|
||||
Prepare the Management Node for xCAT Installation
|
||||
=================================================
|
||||
|
||||
These steps prepare the Management Node or xCAT Installation
|
||||
|
||||
Install an OS on the Management Node
|
||||
------------------------------------
|
||||
|
||||
The hardware requirements for your xCAT management node largely depends on the size of the cluster you plan to manage and the type of provisioning being used (diskful, diskless, system clones, etc). The majority of system load comes during cluster provisioning.
|
||||
|
||||
**Memory Recommendations:**
|
||||
|
||||
+--------------+-------------+
|
||||
| Cluster size | Memory (GB) |
|
||||
+==============+=============+
|
||||
| small (< 16) | 4-6 |
|
||||
+--------------+-------------+
|
||||
| medium | 6-8 |
|
||||
+--------------+-------------+
|
||||
| large | > 16 |
|
||||
+--------------+-------------+
|
||||
|
||||
Install any flavor of the supported operating system onto the management node.
|
||||
|
||||
The xCAT software RPMs will attempt to automatially install any base software provided by the Operating System if they are not already installed onto the machine. In order for this to succeed, the node must have a repository set up providing the base operating system packages.
|
||||
|
||||
Configure the Base OS Repository
|
||||
--------------------------------
|
||||
|
||||
xCAT uses Linux Package Managers (yum, zypper, apt, etc) to install and resolve dependency packages provded by the base operating system. Follow this section to create the repository for the base operating system on the management node
|
||||
|
||||
#. Copy the dvd .iso file onto the management node: ::
|
||||
|
||||
mkdir -p /tmp/iso
|
||||
scp <user>@<server>:/images/iso/rhels7.1/ppc64le/RHEL-LE-7.1-20150219.1-Server-ppc64le-dvd1.iso /tmp/iso
|
||||
|
||||
#. Mount the dvd iso to a directory on the management node. ::
|
||||
|
||||
#
|
||||
# [rhel] mounting at /mnt/iso/rhels7.1
|
||||
#
|
||||
mkdir -p /mnt/iso/rhels7.1
|
||||
mount -o loop /tmp/iso/RHEL-LE-7.1-20150219.1-Server-ppc64le-dvd1.iso /mnt/iso/rhels7.1
|
||||
|
||||
#
|
||||
# [sles] mounting at /mnt/iso/sles12
|
||||
#
|
||||
mkdir -p /mnt/iso/sles12
|
||||
mount -o loop /tmp/iso/SLE-12-Server-DVD-ppc64le-GM-DVD1.iso /mnt/iso/sles12
|
||||
|
||||
#. Create the local repository configuration file pointing to mounted iso image. ::
|
||||
|
||||
#
|
||||
# [rhel]
|
||||
#
|
||||
vi /etc/yum/yum.repos.d/rhels71-base.repo
|
||||
|
||||
#
|
||||
# [sles]
|
||||
#
|
||||
vi /etc/zypp/repos.d/sles12-base.repo
|
||||
|
||||
|
||||
|
||||
# Setting up OS Repository on Mgmt Node
|
||||
|
||||
Disable system services
|
||||
-----------------------
|
||||
|
||||
Disable the Firewall
|
||||
|
||||
|
||||
* Set up Network
|
||||
* Configure Network Interface Cards (NICs)
|
||||
* Install the Management Node OS
|
||||
* Supported OS and Hardware
|
9
source/guides/install-guides/index.rst
Normal file
9
source/guides/install-guides/index.rst
Normal file
@ -0,0 +1,9 @@
|
||||
Install Guides
|
||||
==============
|
||||
|
||||
.. toctree::
|
||||
:maxdepth: 1
|
||||
|
||||
yum/index
|
||||
zypper/index
|
||||
apt/index
|
2
source/guides/install-guides/yum/configure_xcat.rst
Normal file
2
source/guides/install-guides/yum/configure_xcat.rst
Normal file
@ -0,0 +1,2 @@
|
||||
Configure xCAT
|
||||
==============
|
11
source/guides/install-guides/yum/index.rst
Normal file
11
source/guides/install-guides/yum/index.rst
Normal file
@ -0,0 +1,11 @@
|
||||
Installation Guide for Red Hat Enterprise Linux
|
||||
===============================================
|
||||
|
||||
For the list of currently supported RHEL operating systems, see :ref:`rhels-os-support-label`.
|
||||
|
||||
.. toctree::
|
||||
:maxdepth: 2
|
||||
|
||||
prepare_mgmt_node
|
||||
install_xcat
|
||||
configure_xcat
|
162
source/guides/install-guides/yum/install_xcat.rst
Normal file
162
source/guides/install-guides/yum/install_xcat.rst
Normal file
@ -0,0 +1,162 @@
|
||||
Install xCAT
|
||||
============
|
||||
|
||||
xCAT consists of two software packages:
|
||||
|
||||
#. **xcat-core** xCAT's main software package.
|
||||
|
||||
The xcat-core package is provided in one of the following options:
|
||||
|
||||
* **Latest Release (Stable) Builds**
|
||||
|
||||
*This is the latest GA (Generally Availability) build that has been tested throughly*
|
||||
|
||||
* **Latest Snapshot Builds**
|
||||
|
||||
*This is the latest snapshot of the GA version build that may contain bug fixes but has not yet been tested throughly*
|
||||
|
||||
* **Development Builds**
|
||||
|
||||
*This is the snapshot builds of the new version of xCAT in development. This version has not been released yet, use as your own risk*
|
||||
|
||||
#. **xcat-dep** xCAT's dependency package. This is provided as a convenience for the user and contains dependency packages required by xCAT that are not provided by the operating system.
|
||||
|
||||
xCAT is installed by configuring software repositories for ``xcat-core`` and ``xcat-dep`` and using yum package manager. The software repositoreies can publically hosted (requires internet connectivity) or locally configured.
|
||||
|
||||
Configure xCAT Software Repository
|
||||
----------------------------------
|
||||
|
||||
Public Internet Repository
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
TODO: Need to fill this out
|
||||
|
||||
Locally Configured Repository
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
From the xCAT software download page: `<https://sourceforge.net/p/xcat/wiki/Download_xCAT/>`_, download ``xcat-core`` and ``xcat-dep``.
|
||||
|
||||
xcat-core
|
||||
^^^^^^^^^
|
||||
|
||||
#. Download xcat-core, if downloading the latest devepment build: ::
|
||||
|
||||
cd /root
|
||||
mkdir -p ~/xcat
|
||||
cd ~/xcat/
|
||||
wget http://sourceforge.net/projects/xcat/files/yum/devel/core-rpms-snap.tar.bz2
|
||||
|
||||
|
||||
#. Extract xcat-core: ::
|
||||
|
||||
cd ~/xcat
|
||||
tar jxvf core-rpms-snap.tar.bz
|
||||
|
||||
#. Configure the local repository, by runnin the ``mklocalrepo.sh`` script: ::
|
||||
|
||||
cd ~/xcat/xcat-core/
|
||||
./mklocalrepo.sh
|
||||
|
||||
|
||||
xcat-dep
|
||||
^^^^^^^^
|
||||
|
||||
Unless you are downloading ``xcat-dep`` for a specific GA version of xCAT, select the package with the latest timestamp.
|
||||
|
||||
|
||||
#. Download xcat-dep, if downloading xcat-dep from June 11, 2015, for Linux: ::
|
||||
|
||||
mkdir -p ~/xcat/
|
||||
cd ~/xcat
|
||||
wget http://sourceforge.net/projects/xcat/files/xcat-dep/2.x_Linux/xcat-dep-201506110324.tar.bz2
|
||||
|
||||
#. Extract xcat-dep: ::
|
||||
|
||||
cd ~/xcat/
|
||||
tar jxvf xcat-dep-201506110324.tar.bz2
|
||||
|
||||
#. Configure the local repository by switching to the architecture and os of the system you are installing on , and running the ``mklocalrepo.sh`` script: ::
|
||||
|
||||
cd ~/xcat/xcat-dep/
|
||||
# for redhat 6.5 on ppc64...
|
||||
cd rh6/ppc64
|
||||
./mklocalrepo.sh
|
||||
|
||||
Install xCAT
|
||||
------------
|
||||
|
||||
Install xCAT with the following command: ::
|
||||
|
||||
yum clean all (optional)
|
||||
yum install xCAT
|
||||
|
||||
|
||||
**Note:** During the install, you will need to accept the *xCAT Security Key* to proceed: ::
|
||||
|
||||
Retrieving key from file:///root/xcat/xcat-dep/rh6/ppc64/repodata/repomd.xml.key
|
||||
Importing GPG key 0xC6565BC9:
|
||||
Userid: "xCAT Security Key <xcat@cn.ibm.com>"
|
||||
From : /root/xcat/xcat-dep/rh6/ppc64/repodata/repomd.xml.key
|
||||
Is this ok [y/N]:
|
||||
|
||||
|
||||
Verify xCAT Installation
|
||||
------------------------
|
||||
|
||||
Quick verificaiton can be done with the following steps:
|
||||
|
||||
#. Source the profile to add xCAT Commands to your path: ::
|
||||
|
||||
source /etc/profile.d/xcat.sh
|
||||
|
||||
#. Check the xCAT Install version: ::
|
||||
|
||||
lsxcatd -a
|
||||
|
||||
#. Check to see the database is initialized by dumping the site table: ::
|
||||
|
||||
tabdump site
|
||||
|
||||
The output should similar to the following: ::
|
||||
|
||||
#key,value,comments,disable
|
||||
"blademaxp","64",,
|
||||
"domain","pok.stglabs.ibm.com",,
|
||||
"fsptimeout","0",,
|
||||
"installdir","/install",,
|
||||
"ipmimaxp","64",,
|
||||
...
|
||||
|
||||
Starting and Stopping
|
||||
---------------------
|
||||
|
||||
You can easily start, stop, restart, and check xCAT status using Linux systemd or systemctl:
|
||||
|
||||
* start xCAT: ::
|
||||
|
||||
service xcatd start
|
||||
systemctl xcatd.service start
|
||||
|
||||
* stop xCAT: ::
|
||||
|
||||
service xcatd stop
|
||||
systemctl xcatd.service stop
|
||||
|
||||
* restart xCAT: ::
|
||||
|
||||
service xcatd restart
|
||||
systemctl xcatd.service restart
|
||||
|
||||
* check xCAT status: ::
|
||||
|
||||
service xcatd status
|
||||
systemctl xcatd.service status
|
||||
|
||||
|
||||
Updating xCAT
|
||||
-------------
|
||||
|
||||
If at a later date you want to update xCAT, simply update the software repository and run: ::
|
||||
|
||||
yum clean metadata (or, yum clean all)
|
||||
yum update '*xCAT*'
|
29
source/guides/install-guides/yum/prepare_mgmt_node.rst
Normal file
29
source/guides/install-guides/yum/prepare_mgmt_node.rst
Normal file
@ -0,0 +1,29 @@
|
||||
Prepare the Management Node
|
||||
===========================
|
||||
|
||||
These steps prepare the Management Node or xCAT Installation
|
||||
|
||||
Install an OS on the Management Node
|
||||
------------------------------------
|
||||
|
||||
Install one of the supported operating systems :ref:`rhels-os-support-label` on to your target management node
|
||||
|
||||
.. include:: ../common/install_guide.rst
|
||||
:start-after: BEGIN_install_os_mgmt_node
|
||||
:end-before: END_install_os_mgmt_node
|
||||
|
||||
Configure the Base OS Repository
|
||||
--------------------------------
|
||||
|
||||
.. include:: yum_common.rst
|
||||
:start-after: BEGIN_configure_base_os_repository
|
||||
:end-before: END_configure_base_os_repository
|
||||
|
||||
|
||||
Set up Network
|
||||
--------------
|
||||
|
||||
The management node IP address should be set to a **static** ip address.
|
||||
|
||||
Modify the ifcfg-<nic> file under ``/etc/sysconfig/network-scripts`` and configure a static IP address.
|
||||
|
42
source/guides/install-guides/yum/yum_common.rst
Normal file
42
source/guides/install-guides/yum/yum_common.rst
Normal file
@ -0,0 +1,42 @@
|
||||
.. BEGIN_configure_base_os_repository
|
||||
|
||||
xCAT uses the yum package manager on RHEL Linux distributions to install and resolve dependency packages provded by the base operating system. Follow this section to create the repository for the base operating system on the management node
|
||||
|
||||
#. Copy the dvd .iso file onto the management node: ::
|
||||
|
||||
mkdir -p /tmp/iso
|
||||
scp <user>@<server>:/images/iso/rhels7.1/ppc64le/RHEL-LE-7.1-20150219.1-Server-ppc64le-dvd1.iso /tmp/iso
|
||||
|
||||
#. Mount the dvd iso to a directory on the management node. ::
|
||||
|
||||
#
|
||||
# Assuming we are mounting at /mnt/iso/rhels7.1
|
||||
#
|
||||
mkdir -p /mnt/iso/rhels7.1
|
||||
mount -o loop /tmp/iso/RHEL-LE-7.1-20150219.1-Server-ppc64le-dvd1.iso /mnt/iso/rhels7.1
|
||||
|
||||
#. Create the local repository configuration file pointing to mounted iso image. ::
|
||||
|
||||
cat /etc/yum/yum.repos.d/rhels71-base.repo
|
||||
[rhel-7-server]
|
||||
name=RHEL 7 SERVER packages
|
||||
baseurl=file:///mnt/iso/rhels71/Server
|
||||
enabled=1
|
||||
gpgcheck=1
|
||||
|
||||
|
||||
.. END_configure_base_os_repository
|
||||
|
||||
|
||||
|
||||
|
||||
.. BEGIN_disable_firewall
|
||||
.. DEPRECATED: Firewall instructions is not applicable after xCAT 2.8
|
||||
|
||||
The management node provides many services to the cluster nodes. Running a firewall on the management node can interfere with these services.
|
||||
If your cluster is running on a secure network, the easiest thing to do is disable the firewall on the management node::
|
||||
|
||||
service iptables stop
|
||||
service ip6tables stop
|
||||
|
||||
.. END_disable_firewall
|
11
source/guides/install-guides/zypper/index.rst
Normal file
11
source/guides/install-guides/zypper/index.rst
Normal file
@ -0,0 +1,11 @@
|
||||
Installation Guide for SUSE Linux Enterprise Server
|
||||
===================================================
|
||||
|
||||
For the list of currently supported SLES operating systems, see :ref:`sles-os-support-label`.
|
||||
|
||||
.. toctree::
|
||||
:maxdepth: 2
|
||||
|
||||
prepare_mgmt_node
|
||||
install_xcat
|
||||
configure_xcat
|
2
source/guides/install-guides/zypper/sles_support
Normal file
2
source/guides/install-guides/zypper/sles_support
Normal file
@ -0,0 +1,2 @@
|
||||
SLES 11
|
||||
SLES 12 LE
|
5
source/help.rst
Normal file
5
source/help.rst
Normal file
@ -0,0 +1,5 @@
|
||||
Need Help
|
||||
=========
|
||||
|
||||
If you're having trouble, please email the xcat users mailing list: xcat-user@list.sourceforge.net
|
||||
|
37
source/index.rst
Normal file
37
source/index.rst
Normal file
@ -0,0 +1,37 @@
|
||||
xCAT stands for E\ **x**\ treme **C**\ loud/\ **C**\ luster **A**\ dministration **T**\ oolkit.
|
||||
|
||||
xCAT offers complete management of clouds, clusters (HPC), grids, datacenters,
|
||||
renderfarms, online gaming infrastructure, and whatever tomorrows next buzzword may be.
|
||||
|
||||
xCAT enables the administrator to:
|
||||
|
||||
#. provision operating systems on physical (“bare metal”) or virtual machines.
|
||||
#. provision machines using scripted install, stateless, statelite, iSCSI, or cloning.
|
||||
#. remotely manage systems (lights out management, remote console support, distributed shell support).
|
||||
#. quickly configure and control management nodes services: dns, http, dhcp, tftp, nfs, etc.
|
||||
|
||||
**xCAT** is an open source project hosted on `SourceForge <http://sourceforge.net/p/xcat/wiki/Main_Page/>`_ and currently mirrored on `GitHub <https://github.com/xcat2/xcat-core/>`_. (We hope to be natively hosted on GitHub in the near future)
|
||||
|
||||
Enjoy!
|
||||
|
||||
Content
|
||||
=======
|
||||
|
||||
.. toctree::
|
||||
:maxdepth: 2
|
||||
|
||||
guides/install-guides/index
|
||||
guides/admin-guides/index
|
||||
developers/index
|
||||
advanced/index
|
||||
help
|
||||
notes/index
|
||||
|
||||
|
||||
Indices and tables
|
||||
==================
|
||||
|
||||
* :ref:`genindex`
|
||||
* :ref:`modindex`
|
||||
* :ref:`search`
|
||||
|
19
source/notes/hw_mgmt/hmc/index.rst
Normal file
19
source/notes/hw_mgmt/hmc/index.rst
Normal file
@ -0,0 +1,19 @@
|
||||
IBM HMC
|
||||
=======
|
||||
|
||||
IBM HMC stands for **IBM Hardware Management Console**.
|
||||
|
||||
Details about IBM Hardware Management console can be found on the following links:
|
||||
|
||||
* `<https://en.wikipedia.org/wiki/IBM_Hardware_Management_Console>`_
|
||||
* `<http://www.redbooks.ibm.com/abstracts/sg248232.html?Open>`_
|
||||
|
||||
Blah Blah....
|
||||
|
||||
**Topics:**
|
||||
|
||||
|
||||
.. toctree::
|
||||
:maxdepth: 2
|
||||
|
||||
vioserver
|
122
source/notes/hw_mgmt/hmc/new_profile.rst
Normal file
122
source/notes/hw_mgmt/hmc/new_profile.rst
Normal file
@ -0,0 +1,122 @@
|
||||
$ lspv
|
||||
NAME PVID VG STATUS
|
||||
hdisk0 00f60e589feeb90a rootvg active
|
||||
hdisk1 00f60e58afa65a6e vdiskvg active
|
||||
hdisk2 00f60e58286f497c vdisk2vg active
|
||||
hdisk3 00f60e5828740e18 vdisk3vg active
|
||||
hdisk4 00f60e5828755bf1 vdisk4vg active
|
||||
hdisk5 00f60e582875fcbd vdisk5vg active
|
||||
hdisk6 none None
|
||||
hdisk7 none None
|
||||
|
||||
Create AIX cluster (cluster 4)
|
||||
|
||||
Cluster 1:
|
||||
c910f02c06p02 - RHELS 6.6
|
||||
...
|
||||
c910f02c06p08
|
||||
|
||||
Cluster 2:
|
||||
c910f02c06p09 - SLES 11.3
|
||||
...
|
||||
c910f02c06p15
|
||||
|
||||
Cluster 3:
|
||||
c910f02c06p16 - RHELS 7.1
|
||||
...
|
||||
c910f02c06p22
|
||||
|
||||
c910f02c06p23 - 29
|
||||
1 mgmt node
|
||||
2 service node
|
||||
4 compute
|
||||
|
||||
|
||||
AIX DISK:
|
||||
|
||||
SVSA Physloc Client Partition ID
|
||||
--------------- -------------------------------------------- ------------------
|
||||
vhost21 U8233.E8B.100E58P-V1-C23 0x00000017
|
||||
|
||||
VTD vtdisk_p23
|
||||
Status Available
|
||||
LUN 0x8100000000000000
|
||||
Backing device vg5lv1
|
||||
Physloc
|
||||
Mirrored N/A
|
||||
|
||||
LINUX DISK:
|
||||
|
||||
$ mkvg -help
|
||||
Usage: mkvg [-f] [-vg VolumeGroup] PhysicalVolume ...
|
||||
|
||||
The mkvg command creates a new volume group, using the physical
|
||||
volumes represented by the PhysicalVolume parameter.
|
||||
|
||||
-f Forces the volume group to be created on the specified
|
||||
physical volume
|
||||
|
||||
-vg Specifies the volume group name rather than
|
||||
having the name generated automatically.
|
||||
|
||||
$ mkvg -vg vdisk6vg hdisk6
|
||||
vdisk6vg
|
||||
0516-1254 mkvg: Changing the PVID in the ODM.
|
||||
|
||||
$ lspv
|
||||
NAME PVID VG STATUS
|
||||
hdisk0 00f60e589feeb90a rootvg active
|
||||
hdisk1 00f60e58afa65a6e vdiskvg active
|
||||
hdisk2 00f60e58286f497c vdisk2vg active
|
||||
hdisk3 00f60e5828740e18 vdisk3vg active
|
||||
hdisk4 00f60e5828755bf1 vdisk4vg active
|
||||
hdisk5 00f60e582875fcbd vdisk5vg active
|
||||
hdisk6 00f60e586479d7ec vdisk6vg active
|
||||
hdisk7 none None
|
||||
|
||||
Create a logical volume of 1GB using 400PP
|
||||
|
||||
$ mklv -help
|
||||
Usage: mklv [-mirror] [-lv LogicalVolume | -prefix Prefix]
|
||||
[-type Type] VolumeGroup Size [PhysicalVolume ...]
|
||||
|
||||
Creates a logical volume.
|
||||
|
||||
-mirror Turns on mirroring.
|
||||
|
||||
-lv Specifies the logical volume name to use instead of
|
||||
using a system-generated name.
|
||||
|
||||
-prefix Specifies the Prefix to use instead of the prefix
|
||||
in a system-generated name for the new logical
|
||||
volume.
|
||||
|
||||
-type Sets the logical volume type.
|
||||
|
||||
$ mklv -lv vg6p23 vdisk6vg 400
|
||||
vg6p23
|
||||
|
||||
$ lsvg -lv vdisk6vg
|
||||
vdisk6vg:
|
||||
LV NAME TYPE LPs PPs PVs LV STATE MOUNT POINT
|
||||
vg6p23 jfs 400 400 1 closed/syncd N/A
|
||||
|
||||
|
||||
|
||||
Went into VIOSERVER profile
|
||||
- create new virtual adapter, and save the profile, number 32
|
||||
|
||||
Go to the LPAR profile, Virtual Adapter
|
||||
- duplicated the AIX to Linux
|
||||
- increased the max virtual adapter to 20
|
||||
- assigned the CLIENT SCSI to 12, and set the adapter to 32, which was the new virtual adapter ID created in the virtual server
|
||||
|
||||
Back in the vioserver profile, -> virtual adapter
|
||||
|
||||
- Only selected client partition can connect, select client partition p23 and give it client adapter 12
|
||||
|
||||
Select "this adapter is required for partition activition" so the "required=yes"
|
||||
|
||||
|
||||
lsdev -virtual
|
||||
|
306
source/notes/hw_mgmt/hmc/vioserver.rst
Normal file
306
source/notes/hw_mgmt/hmc/vioserver.rst
Normal file
@ -0,0 +1,306 @@
|
||||
Virtual I/O Server (vioserver)
|
||||
==============================
|
||||
|
||||
Expand the space of a logical volume
|
||||
------------------------------------
|
||||
|
||||
#. SSH into the VIO server: ::
|
||||
|
||||
ssh padmin@<vioserver hostname> # Default password is padmin
|
||||
|
||||
# If you need to get to the root user, once logged in:
|
||||
$ oem_setup_env
|
||||
|
||||
#. List out the physical volumes: ``lspv`` ::
|
||||
|
||||
$ lspv
|
||||
NAME PVID VG STATUS
|
||||
hdisk0 00f60e599ff13987 rootvg active
|
||||
hdisk1 00f60e59afa94070 vdiskvg active
|
||||
|
||||
#. List out the volume groups: ``lsvg`` ::
|
||||
|
||||
$ lsvg
|
||||
rootvg
|
||||
vdiskvg
|
||||
|
||||
#. Get more information about a specific volume group: ``lsvg <volume_group>`` ::
|
||||
|
||||
$ lsvg vdiskvg
|
||||
VOLUME GROUP: vdiskvg VG IDENTIFIER: 00f60e5900004c0000000147afa9411f
|
||||
VG STATE: active PP SIZE: 256 megabyte(s)
|
||||
VG PERMISSION: read/write TOTAL PPs: 546 (139776 megabytes)
|
||||
MAX LVs: 256 FREE PPs: 10 (2560 megabytes)
|
||||
LVs: 29 USED PPs: 536 (137216 megabytes)
|
||||
OPEN LVs: 29 QUORUM: 2 (Enabled)
|
||||
TOTAL PVs: 1 VG DESCRIPTORS: 2
|
||||
STALE PVs: 0 STALE PPs: 0
|
||||
ACTIVE PVs: 1 AUTO ON: yes
|
||||
MAX PPs per VG: 32512
|
||||
MAX PPs per PV: 1016 MAX PVs: 32
|
||||
LTG size (Dynamic): 1024 kilobyte(s) AUTO SYNC: no
|
||||
HOT SPARE: no BB POLICY: relocatable
|
||||
PV RESTRICTION: none INFINITE RETRY: no
|
||||
DISK BLOCK SIZE: 512 CRITICAL VG: no
|
||||
|
||||
#. List out the volume groups using the -lv option on lsvg: ``lsvg -lv <volume_group>`` ::
|
||||
|
||||
$ lsvg -lv vdiskvg
|
||||
vdiskvg:
|
||||
LV NAME TYPE LPs PPs PVs LV STATE MOUNT POINT
|
||||
vdisk00n02 jfs 160 160 1 open/syncd N/A
|
||||
vdisk00n03 jfs 160 160 1 open/syncd N/A
|
||||
vdisk00n04 jfs 40 40 1 open/syncd N/A
|
||||
vdisk00n05 jfs 40 40 1 open/syncd N/A
|
||||
vdisk00n06 jfs 40 40 1 open/syncd N/A
|
||||
vdisk00n07 jfs 4 4 1 open/syncd N/A
|
||||
vdisk00n08 jfs 4 4 1 open/syncd N/A
|
||||
vdisk00n09 jfs 4 4 1 open/syncd N/A
|
||||
vdisk00n10 jfs 4 4 1 open/syncd N/A
|
||||
....
|
||||
vdisk00n29 jfs 4 4 1 open/syncd N/A
|
||||
vdisk00n30 jfs 4 4 1 open/syncd N/A
|
||||
|
||||
#. The lsvg command shows how many PPs there are in the volume group.
|
||||
|
||||
#. Remove a LV vdev to change from open/syncd to closed/syncd: ``rmvdev -vdev <lv_name>`` ::
|
||||
|
||||
$ rmvdev -vdev vdisk00n30
|
||||
vtscsi28 deleted
|
||||
|
||||
$ lsvg -lv vdiskvg
|
||||
vdiskvg:
|
||||
LV NAME TYPE LPs PPs PVs LV STATE MOUNT POINT
|
||||
vdisk00n02 jfs 160 160 1 open/syncd N/A
|
||||
vdisk00n03 jfs 160 160 1 open/syncd N/A
|
||||
vdisk00n04 jfs 40 40 1 open/syncd N/A
|
||||
...
|
||||
...
|
||||
vdisk00n29 jfs 4 4 1 open/syncd N/A
|
||||
vdisk00n30 jfs 4 4 1 closed/syncd N/A
|
||||
|
||||
#. Now remove the lv using rmlv to free up the PP: ``rmlv <logical volume>`` ::
|
||||
|
||||
$ lsvg vdiskvg | grep FREE
|
||||
MAX LVs: 256 FREE PPs: 10 (2560 megabytes)
|
||||
|
||||
$ rmlv vdisk00n30
|
||||
Warning, all data contained on logical volume vdisk00n30 will be destroyed.
|
||||
rmlv: Do you wish to continue? y(es) n(o)? y
|
||||
rmlv: Logical volume vdisk00n30 is removed.
|
||||
|
||||
$ lsvg vdiskvg | grep FREE
|
||||
MAX LVs: 256 FREE PPs: 14 (3584 megabytes)
|
||||
|
||||
|
||||
#. Extend the Logical Volume: ::
|
||||
|
||||
$ extendlv vdisk00n07 40
|
||||
|
||||
$ lsvg -lv vdiskvg
|
||||
vdiskvg:
|
||||
LV NAME TYPE LPs PPs PVs LV STATE MOUNT POINT
|
||||
vdisk00n02 jfs 160 160 1 open/syncd N/A
|
||||
...
|
||||
vdisk00n07 jfs 44 44 1 open/syncd N/A
|
||||
...
|
||||
|
||||
|
||||
Add a physical volume into a volume group
|
||||
-----------------------------------------
|
||||
|
||||
#. List out the physical volumes: ``lspv`` ::
|
||||
|
||||
$ lspv
|
||||
NAME PVID VG STATUS
|
||||
hdisk0 00f60e599ff13987 rootvg active
|
||||
hdisk1 00f60e59afa94070 vdiskvg active
|
||||
hdisk2 none None
|
||||
hdisk3 none None
|
||||
hdisk4 none None
|
||||
hdisk5 none None
|
||||
hdisk6 none None
|
||||
hdisk7 none None
|
||||
|
||||
#. Get details for a volume group (VG) using: ``lsvg <volume_group>`` ::
|
||||
|
||||
$ lsvg vdiskvg
|
||||
VOLUME GROUP: vdiskvg VG IDENTIFIER: 00f60e5900004c0000000147afa9411f
|
||||
VG STATE: active PP SIZE: 256 megabyte(s)
|
||||
VG PERMISSION: read/write TOTAL PPs: 546 (139776 megabytes)
|
||||
MAX LVs: 256 FREE PPs: 18 (4608 megabytes)
|
||||
LVs: 7 USED PPs: 528 (135168 megabytes)
|
||||
OPEN LVs: 7 QUORUM: 2 (Enabled)
|
||||
TOTAL PVs: 1 VG DESCRIPTORS: 2
|
||||
STALE PVs: 0 STALE PPs: 0
|
||||
ACTIVE PVs: 1 AUTO ON: yes
|
||||
MAX PPs per VG: 32512
|
||||
MAX PPs per PV: 1016 MAX PVs: 32
|
||||
LTG size (Dynamic): 1024 kilobyte(s) AUTO SYNC: no
|
||||
HOT SPARE: no BB POLICY: relocatable
|
||||
PV RESTRICTION: none INFINITE RETRY: no
|
||||
DISK BLOCK SIZE: 512 CRITICAL VG: no
|
||||
|
||||
#. Extend the volume group: ``extendvg <volume_group> <device_name>`` ::
|
||||
|
||||
$ extendvg vdiskvg hdisk2
|
||||
Changing the PVID in the ODM.
|
||||
|
||||
Unable to add at least one of the specified physical volumes to the
|
||||
volume group. The maximum number of physical partitions (PPs) supported
|
||||
by the volume group must be increased. Use the lsvg command to display
|
||||
the current maximum number of physical partitions (MAX PPs per PV:) and
|
||||
chvg -factor to change the value.
|
||||
|
||||
extendvg: Unable to extend volume group.
|
||||
|
||||
$ lspv
|
||||
NAME PVID VG STATUS
|
||||
hdisk0 00f60e599ff13987 rootvg active
|
||||
hdisk1 00f60e59afa94070 vdiskvg active
|
||||
hdisk2 00f60e59529c77f2 None
|
||||
hdisk3 none None
|
||||
hdisk4 none None
|
||||
hdisk5 none None
|
||||
hdisk6 none None
|
||||
hdisk7 none None
|
||||
|
||||
|
||||
#. now what?....
|
||||
$ lsvg vdiskvg
|
||||
...
|
||||
MAX PPs per PV: 1016 MAX PVs: 32
|
||||
|
||||
$ chvg -factor 2 vdiskvg
|
||||
$ lsvg vdiskvg
|
||||
...
|
||||
MAX PPs per PV: 2032 MAX PVs: 16
|
||||
|
||||
Now let's take a look at doing the extend...
|
||||
|
||||
$ lsvg vdiskvg
|
||||
...
|
||||
|
||||
VG PERMISSION: read/write TOTAL PPs: 546 (139776 megabytes)
|
||||
MAX LVs: 256 FREE PPs: 18 (4608 megabytes)
|
||||
LVs: 7 USED PPs: 528 (135168 megabytes)
|
||||
|
||||
$ extendvg vdiskvg hdisk2
|
||||
|
||||
$ lsvg vdiskvg
|
||||
VG PERMISSION: read/write TOTAL PPs: 1663 (425728 megabytes)
|
||||
MAX LVs: 256 FREE PPs: 1135 (290560 megabytes) <=== SUCCESS!
|
||||
LVs: 7 USED PPs: 528 (135168 megabytes)
|
||||
|
||||
|
||||
$ lsvg -lv vdiskvg
|
||||
vdiskvg:
|
||||
LV NAME TYPE LPs PPs PVs LV STATE MOUNT POINT
|
||||
vdisk00n02 jfs 160 160 1 open/syncd N/A
|
||||
vdisk00n03 jfs 160 160 1 open/syncd N/A
|
||||
vdisk00n04 jfs 40 40 1 open/syncd N/A
|
||||
vdisk00n05 jfs 40 40 1 open/syncd N/A
|
||||
vdisk00n06 jfs 80 80 1 open/syncd N/A
|
||||
vdisk00n07 jfs 44 44 1 open/syncd N/A
|
||||
vdisk00n11 jfs 4 4 1 open/syncd N/A
|
||||
$ extendlv vdisk00n06 270
|
||||
|
||||
|
||||
Some error messages may contain invalid information
|
||||
for the Virtual I/O Server environment.
|
||||
|
||||
0516-622 extendlv: Warning, cannot write lv control block data.
|
||||
0516-622 extendlv: Warning, cannot write lv control block data.
|
||||
$ lsvg -lv vdiskvg
|
||||
vdiskvg:
|
||||
LV NAME TYPE LPs PPs PVs LV STATE MOUNT POINT
|
||||
vdisk00n02 jfs 160 160 1 open/syncd N/A
|
||||
vdisk00n03 jfs 160 160 1 open/syncd N/A
|
||||
vdisk00n04 jfs 40 40 1 open/syncd N/A
|
||||
vdisk00n05 jfs 40 40 1 open/syncd N/A
|
||||
vdisk00n06 jfs 350 350 2 open/syncd N/A <============
|
||||
vdisk00n07 jfs 44 44 1 open/syncd N/A
|
||||
vdisk00n11 jfs 4 4 1 open/syncd N/A
|
||||
|
||||
|
||||
Create multiple SCSI profile for an LPAR
|
||||
----------------------------------------
|
||||
|
||||
In this scenario, we are going to create another virtual SCSI profile for our management node ``c910f02c06p23`` so that we are able to switch profiles between AIX and Linux.
|
||||
|
||||
#. The current vhost for the server holding the AIX partition is: ::
|
||||
|
||||
SVSA Physloc Client Partition ID
|
||||
--------------- -------------------------------------------- ------------------
|
||||
vhost21 U8233.E8B.100E58P-V1-C23 0x00000017
|
||||
|
||||
VTD vtdisk_p23
|
||||
Status Available
|
||||
LUN 0x8100000000000000
|
||||
Backing device vg5lv1
|
||||
Physloc
|
||||
Mirrored N/A
|
||||
|
||||
#. Locate a physical volume to create the new volume group for LINUX. ::
|
||||
|
||||
$ lspv
|
||||
NAME PVID VG STATUS
|
||||
hdisk0 00f60e589feeb90a rootvg active
|
||||
hdisk1 00f60e58afa65a6e vdiskvg active
|
||||
hdisk2 00f60e58286f497c vdisk2vg active
|
||||
hdisk3 00f60e5828740e18 vdisk3vg active
|
||||
hdisk4 00f60e5828755bf1 vdisk4vg active
|
||||
hdisk5 00f60e582875fcbd vdisk5vg active
|
||||
hdisk6 none None
|
||||
hdisk7 none None
|
||||
|
||||
Will be using ``hdisk6`` to create the volume group
|
||||
|
||||
|
||||
#. Create the new volume group using the ``mkvg`` command: ::
|
||||
|
||||
$ mkvg -vg vdisk6vg hdisk6
|
||||
vdisk6vg
|
||||
0516-1254 mkvg: Changing the PVID in the ODM.
|
||||
|
||||
Verify the volume group was created: ::
|
||||
|
||||
$ lspv
|
||||
NAME PVID VG STATUS
|
||||
hdisk0 00f60e589feeb90a rootvg active
|
||||
...
|
||||
hdisk6 00f60e586479d7ec vdisk6vg active
|
||||
hdisk7 none None
|
||||
|
||||
#. Create a logical volume of 1GB using 400PP: ::
|
||||
|
||||
$ mklv -lv vg6p23 vdisk6vg 400
|
||||
vg6p23
|
||||
|
||||
$ lsvg -lv vdisk6vg
|
||||
vdisk6vg:
|
||||
LV NAME TYPE LPs PPs PVs LV STATE MOUNT POINT
|
||||
vg6p23 jfs 400 400 1 closed/syncd N/A
|
||||
|
||||
|
||||
|
||||
#. From the HMC GUI:
|
||||
|
||||
|
||||
Went into VIOSERVER profile
|
||||
- create new virtual adapter, and save the profile, number 32
|
||||
|
||||
Go to the LPAR profile, Virtual Adapter
|
||||
- duplicated the AIX to Linux
|
||||
- increased the max virtual adapter to 20
|
||||
- assigned the CLIENT SCSI to 12, and set the adapter to 32, which was the new virtual adapter ID created in the virtual server
|
||||
|
||||
Back in the vioserver profile, -> virtual adapter
|
||||
|
||||
- Only selected client partition can connect, select client partition p23 and give it client adapter 12
|
||||
|
||||
Select "this adapter is required for partition activition" so the "required=yes"
|
||||
|
||||
|
||||
lsdev -virtual
|
||||
|
8
source/notes/hw_mgmt/index.rst
Normal file
8
source/notes/hw_mgmt/index.rst
Normal file
@ -0,0 +1,8 @@
|
||||
Hardware Management
|
||||
===================
|
||||
|
||||
.. toctree::
|
||||
:maxdepth: 2
|
||||
|
||||
hmc/index
|
||||
ipmi/index
|
9
source/notes/hw_mgmt/ipmi/index.rst
Normal file
9
source/notes/hw_mgmt/ipmi/index.rst
Normal file
@ -0,0 +1,9 @@
|
||||
IPMI
|
||||
====
|
||||
|
||||
IPMI stands for **Intelligent Platform Management Interface**.
|
||||
|
||||
|
||||
.. toctree::
|
||||
:maxdepth: 2
|
||||
|
9
source/notes/index.rst
Normal file
9
source/notes/index.rst
Normal file
@ -0,0 +1,9 @@
|
||||
Notes
|
||||
=====
|
||||
|
||||
This section contains my own personal notes
|
||||
|
||||
.. toctree::
|
||||
:maxdepth: 2
|
||||
|
||||
hw_mgmt/index
|
33
source/xcat2_support_list.rst
Normal file
33
source/xcat2_support_list.rst
Normal file
@ -0,0 +1,33 @@
|
||||
Supported Architectures
|
||||
=======================
|
||||
|
||||
ppc64
|
||||
ppc64le
|
||||
x86_64
|
||||
|
||||
Supported Operating Systems
|
||||
===========================
|
||||
|
||||
.. _rhels-os-support-label:
|
||||
|
||||
Red Hat Enterprise Linux (RHEL) operating systems
|
||||
-------------------------------------------------
|
||||
|
||||
* rhels 6.X
|
||||
* rhels 7.1 (little endian)
|
||||
|
||||
.. _sles-os-support-label:
|
||||
|
||||
Suse Linux Enterprise Server (SLES) operating systems
|
||||
-----------------------------------------------------
|
||||
|
||||
* sles 11.3
|
||||
* sles 12.X
|
||||
|
||||
.. _ubuntu-os-support-label:
|
||||
|
||||
Ubuntu Server LTS
|
||||
-----------------
|
||||
|
||||
* ubuntu 14.04.1 (ppc64le)
|
||||
* ubuntu 14.04.2 (ppc64le)
|
Loading…
x
Reference in New Issue
Block a user