Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

LibreOffice Online 環境の構築 2018年版

811 views

Published on

2018年5月12日に開催された「LibreOffice Kaigi 2018」で発表した「LibreOffice Online 環境の構築 2018年版」の発表資料です。

Published in: Technology
  • Be the first to comment

  • Be the first to like this

LibreOffice Online 環境の構築 2018年版

  1. 1. LibreOffice Online環境の構築の構築構築 2018年版 アイクラフト株式会社株式会社 村上正記 1
  2. 2. 目次 ● 自己紹介 ● はじめに ● LibreOffice Online(LOOL) ● 発表に際しに際しし ● 構築環境 ● LibreOfficeのコンパイルコンパイル ● LibreOffice Onlineのコンパイルコンパイル ● 動作確認 ● LOOLをサービス化するサービス化する化するする ● LOOLをサービス化するほかのコンパイルサービス化するから呼び出呼び出び出出 す ● LOOLをサービス化するLBかませて使用してみる使用してみるして使用してみるみる ● 証明書に関してに関してして使用してみる ● LOOLのコンパイルデメリット ● まとめ
  3. 3. 自己紹介 ● 氏名 村上正記(Murakami Masaki) ● 所属 アイクラフト株式会社 顧客サービス部サービス化する部 – 2018年1月入社のコンパイル新人・・・のコンパイルわりに、存在感は断トツらしい存在感は断トツらしいは断トツらしいトツらしいら呼び出しい – それまではインフラ系の運用メインで、あちこちで働いていました。のコンパイル運用してみるメインで、存在感は断トツらしいあちこちで働いていました。いて使用してみるいました。 – 開発業務・・・運用してみる業務のコンパイル中ででExcelVBA組んでましたが何かんでましたが何か何かか ● 業務 – サーバー・ネットワークのコンパイル運用してみる保守、存在感は断トツらしい時々構築 – 「LibreBOX」のコンパイルマーケティング・営業なども (https://www.icraft.jp/modules/pico01/index.php?content_id=42 )
  4. 4. はじめに ● 昨年3月、存在感は断トツらしい弊社所属 内藤が、「が何か、存在感は断トツらしい「LibreOffice Online環境のコンパイル構築」というタイトタイト ルで、存在感は断トツらしいLibreOffice Onlineのコンパイルインス化するトールについて使用してみる発表に際ししました。 ● 今回は、改めては、存在感は断トツらしい改めてめて使用してみるLibreOffice Onlineのコンパイルインス化するトールをサービス化するコンパイルのコンパイル段階から始めから呼び出始めめ て使用してみるみた結果や、その後に行った検証の結果、またその他の知見について発表しや、存在感は断トツらしいそのコンパイル後に行った検証の結果、またその他の知見について発表しに行った検証の結果、またその他の知見について発表しった検証のコンパイル結果や、その後に行った検証の結果、またその他の知見について発表し、存在感は断トツらしいまたそのコンパイル他の知見について発表しのコンパイル知見について発表しについて使用してみる発表に際しし ます。
  5. 5. LibreOffice Online(LOOL) ● Webブラウザで利用可能な、オンライン版で利用してみる可能な、オンライン版な、存在感は断トツらしいオンライン版LibreOffice ● 当然ながらなが何から呼び出OSSなのコンパイルで、存在感は断トツらしいいろいろと手を加えて利用することが可能をサービス化する加えて利用することが可能えて使用してみる利用してみるすることが何か可能な、オンライン版 ● owncloud/nextcloudから呼び出簡単に呼び出し可能に呼び出び出出し可能な、オンライン版 – 弊社ではnextcloudと組んでましたが何かみ合わせて利用していますわせて使用してみる利用してみるして使用してみるいます ● オンプレミス化する環境でGoogle DocumentやMS Office Online的環境をサービス化する提供したした い場合わせて利用していますに最適 ● 今回は、改めてはコンパイルから呼び出行った検証の結果、またその他の知見について発表しうタイト前提でお話ししますが、話ししますが、ししますが何か、存在感は断トツらしいdocker環境もあります。 – 「Collabora Online Development Edition(CODE)」 – 簡単に呼び出し可能に環境構築したい方はこちらでもはこちら呼び出でも
  6. 6. 発表に際しに際しし ● 以下はは2017年当時に発表に際しした内容 ● 1年たって使用してみる・・・ほとんど状況は変わっていません!は変わっていません!わって使用してみるいません! – 「LibreOffice Online 構築」でGoogle検索した結果のトップはいまだに弊社の記事した結果や、その後に行った検証の結果、またその他の知見について発表しのコンパイルトップはいまだに弊社のコンパイル記事 – 弊社記事が何かヒットするのコンパイルはありが何かたいことではありますが何か ● なら呼び出ばもうタイト一度発表に際ししようタイト、存在感は断トツらしいと。 ● 合わせて利用していますわせて使用してみるこのコンパイル1年間で少しだけ知見がたまったので、それも含めてで少しだけ知見がたまったので、それも含めてしだけ知見がたまったので、それも含めて知見について発表しが何かたまったのコンパイルで、存在感は断トツらしいそれも含めてめて使用してみる あれこれ調べてみても、構築に関する情報はあまり出てこないべてみても、構築に関する情報はあまり出てこない構築に関する情報はあまり出てこない関する情報はあまり出てこないする情報はあまり出てこない情報はあまり出てこないはあまり出てこない出てこないてこない 何度か構築した経験もあるので公開してみよう、ということでか構築した経験もあるので公開してみよう、ということで構築した経験もあるので公開してみよう、ということで経験もあるので公開してみよう、ということでもある情報はあまり出てこないの構築で公開してみよう、ということで公開してみよう、ということでしてみよう、構築に関する情報はあまり出てこないということで公開してみよう、ということで 出てこないてくる情報はあまり出てこない情報はあまり出てこないはほとんどがUbuntuで公開してみよう、ということでの構築手順  → CentOSで公開してみよう、ということでの構築構築手順を試してみよう!試してみよう!してみよう!
  7. 7. 構築環境 ● 構築には以下はのコンパイル環境をサービス化する使用してみるしました – CentOS 7.3.1611 ● Minimal Installした状態から各種パッケージを適用から呼び出各種パッケージを適用パッケージを適用をサービス化する適用してみる – 2018年2月6日時点でのでのコンパイルLibreOffice のコンパイルgitクローン – LibreOfficeOnline のコンパイルgitクローンも – WebSocketライブラリにはpocoをサービス化する利用してみる $ git clone git://anongit.freedesktop.org/libreoffice/core $ git clone git://anongit.freedesktop.org/libreoffice/online $ wget https://pocoproject.org/releases/poco-1.8.1/poco-1.8.1-all.tar.gz
  8. 8. LibreOfficeのコンパイルコンパイル ● LOOLをサービス化する動かして使用してみるいるコア部分ははLibreOfficeです。 ● なのコンパイルで、存在感は断トツらしいLOOLをサービス化するコンパイルする前に、存在感は断トツらしいLibreOfficeをサービス化するコンパイルします。 ● CentOSでも、存在感は断トツらしいコンパイルは簡単に呼び出し可能です。 ● ・・・と思いきや、いきや、存在感は断トツらしいLibreOffice 6.0になったせいか、存在感は断トツらしいnasmのコンパイルインス化するトールをサービス化するし ないとLibreOfficeが何かコンパイルできませんでした。 ● なのコンパイルでnasmをサービス化するインス化するトール $ wget https://www.nasm.us/pub/nasm/releasebuilds/2.13.03/nasm-2.13.03.tar.gz $ tar nasm-2.13.03.tar.gz $ cd nasm-2.13.03.tar.gz $ ./configure $ make $ sudo make install
  9. 9. LibreOfficeのコンパイルコンパイル ● いよいよLibreOfficeのコンパイルコンパイルです。 ● makeにはマシンリソース化するが何かかなりかかります。 – コンパイルのコンパイル時間で少しだけ知見がたまったので、それも含めてもですが何か、存在感は断トツらしいディス化するク空きスペースも大量にきス化するペース化するも大量にに – 7GB前後に行った検証の結果、またその他の知見について発表しのコンパイル空きスペースも大量にきス化するペース化するだと、存在感は断トツらしいファイルが何かいっぱいになって使用してみるコンパイルが何か途中でで止まってしまいまって使用してみるしまい ました。 ● コンパイル結果や、その後に行った検証の結果、またその他の知見について発表しが何か必要なだけなので、インストールはしません。なだけ知見がたまったので、それも含めてなのコンパイルで、存在感は断トツらしいインス化するトールはしません。 ● 初心者がはまるポイント・・・が何かはまるポイント・・・rootでコンパイルしない $ sudo yum install yum-utils $ sudo yum-builddep libreoffice $ cd core $ ./autogen.sh –with-lang=”ja” $ make
  10. 10. LibreOffice Onlineのコンパイルコンパイル ● そのコンパイルまえに、存在感は断トツらしいpocoをサービス化するインス化するトールします。 ● npmもインス化するトールします。nコマンドを使って最新版にしておきます。をサービス化する使って使用してみる最新版にして使用してみるお話ししますが、きます。 ● 依存関して係も解消しておきます。も解消しておきます。して使用してみるお話ししますが、きます。 $ tar zxvf poco-1.8.1-all.tar.gz $ cd poco-1.8.1-all $ ./configure --prefix=/opt/poco $ make $ sudo make install $ sudo yum install libcap-devel epel-release $ sudo yum install npm $ sudo npm install -g n $ sudo n latest $ sudo npm update -g npm $ sudo npm install -g jake
  11. 11. LibreOffice Onlineのコンパイルコンパイル ● LOOLコンパイル・・・はまだできません。 ● CentOSが何か最小構成なので日本語フォントが入っていません。ここで入れてなのコンパイルで日本語フォントが入っていません。ここで入れてフォントが何か入って使用してみるいません。ここで入れて使用してみる お話ししますが、きます。 ● 今回は、改めてはIPAフォントをサービス化する入れて使用してみるいますが何か、存在感は断トツらしいライセンス化するをサービス化するお話ししますが、持ちであればちであればMORIS AWAそのコンパイルほかお話ししますが、好きなものを入れてください。きなものコンパイルをサービス化する入れて使用してみるください。 $ sudo yum install ipa-gothic-fonts ipa-mincho-fonts ipa-pgothic-fonts ipapmincho- fonts
  12. 12. LibreOffice Onlineのコンパイルコンパイル ● お話ししますが、待ちどうさまでした。いよいよちどうタイトさまでした。いよいよLOOLのコンパイルコンパイルです。 ● 弊社では別途LibreOfficeをサービス化するコンパイルしたマシンから呼び出 /core/include /core/instdir 2つの構築ディレクト株式会社リをコピーした状態で動くことを確認しています。を試してみよう!コピーした状態で動くことを確認しています。した経験もあるので公開してみよう、ということで状態で動くことを確認しています。で公開してみよう、ということで動くことを確認しています。くことを試してみよう!確認しています。しています。 $ cd ~/online $ ./autogen $ ./configure --enable-silent-rules –with-lokit-path=${HOME}/core/include --with-lo-path=${HOME}/core/instdir –with-poco-includes=/opt/poco/include --with-poco-libs=/opt/poco/lib --enable-debug $ make
  13. 13. LibreOffice Onlineのコンパイルコンパイル ● LOOLが何かコンパイルできたら呼び出、存在感は断トツらしい証明書に関して関して係も解消しておきます。をサービス化するコピーします。 ● キャッシュディレクトリをサービス化する作成なので日本語フォントが入っていません。ここで入れてしましょうタイト。 ● 起動します。 $ cd ~/online $ sudo mkdir /etc/loolwsd $ sudo cp etc/* /etc/loolwsd $ sudo mkdir -p /usr/local/var/cache/loolwsd $ sudo chown ${LOGNAME} /usr/local/var/cache/loolwsd
  14. 14. 動作確認 ● 以下はのコンパイルURLをサービス化するたたくと、存在感は断トツらしい動作確認が何かできます。 ● デフォルトでLOOLサーバーに入って使用してみるいる「Hello World.odt」をサービス化する開くと
  15. 15. LOOLをサービス化するサービス化する化するする ● make runしたままでは不都合わせて利用していますなのコンパイルで、存在感は断トツらしいサービス化する化するします。 $ sudo vim /usr/lib/systemd/system/lool.service [Unit] Description = LibreOffice Online daemon [Service] ExecStart = /home/{USER}/online/loolwsd --o:sys_template_path=/home/{USER}/online/systemplate --o:lo_template_path=/home/{USER}/core/instdir --o:child_root_path=/home/{USER}/online/jails --o:storage.filesystem[@allow]=true --o:admin_console.username=admin --o:admin_console.password=admin Restart = always Type = simple User = {USER} [Install] WantedBy = multi-user.target $ sudo ln -s /usr/lib/systemd/system/lool.service /etc/systemd/system/lool.service
  16. 16. LOOLをサービス化するサービス化する化するする ● サービス化するとして使用してみる登録します。します。 ● ● サービス化するとして使用してみる起動します。 $ sudo systemctl start lool $ sudo systemctl daemon-reload
  17. 17. LOOLをサービス化するほかのコンパイルサービス化するから呼び出呼び出び出出す ● nextcloudから呼び出のコンパイル例 「有効にする」にする」」 をクリックするだけクリックする」だけ
  18. 18. LOOLをサービス化するほかのコンパイルサービス化するから呼び出呼び出び出出す ● LOOLサーバーのコンパイル指定箇所
  19. 19. LOOLをサービス化するほかのコンパイルサービス化するから呼び出呼び出び出出す ● LOOLのコンパイルWOPI設定変わっていません!更が必要です。が何か必要なだけなので、インストールはしません。です。 – online/loolwsd.xml のコンパイル設定 <storage desc="Backend storage"> <filesystem allow="false" /> <wopi desc="Allow/deny wopi storage. Mutually exclusive with webdav." allow="true"> <host desc="Regex pattern of hostname to allow or deny." allow="true">localhost</host> <host desc="Regex pattern of hostname to allow or deny." allow="true">10.[0-9]{1,3}.[0-9]{1,3}.[0-9]{1,3}</host> <host desc="Regex pattern of hostname to allow or deny." allow="true">172.1[6789].[0-9]{1,3}.[0-9]{1,3}</host> <host desc="Regex pattern of hostname to allow or deny." allow="true">172.2[0-9].[0-9]{1,3}.[0-9]{1,3}</host> <host desc="Regex pattern of hostname to allow or deny." allow="true">172.3[01].[0-9]{1,3}.[0-9]{1,3}</host> <host desc="Regex pattern of hostname to allow or deny." allow="true">192.168.[0-9]{1,3}.[0-9]{1,3}</host> <host desc="Regex pattern of hostname to allow or deny." allow="false">192.168.1.1</host> <max_file_size desc="Maximum document size in bytes to load. 0 for unlimited." type="uint">0</max_file_size> </wopi> <webdav desc="Allow/deny webdav storage. Mutually exclusive with wopi." allow="false"> <host desc="Hostname to allow" allow="false">localhost</host> </webdav> </storage> nextcloudなど LOOLをクリックするだけ呼び出すび出す出すす サーバーのFQDN nextcloudなど LOOLをクリックするだけ呼び出すび出す出すす サーバーのFQDNに 変更するする」
  20. 20. LOOLをサービス化するLBかませた環境で使用してみるして使用してみるみる ● LOOLとnextcloudをサービス化する同居させた環境で使用してみるさせた環境で使用してみるして使用してみるみる – リソース化する利用してみる率は高くない・・・は高くない・・・くない・・・ – なのコンパイルに同時に複数ファイルで接続しようとすると、ファイルで接続しようとすると、しようタイトとすると、存在感は断トツらしいLOOLが何かうタイトまく処理できないできない – もともと1ノードを使って最新版にしておきます。で同時に多数ファイルで接続しようとすると、のコンパイルセッションをサービス化する処理できないすることをサービス化する想定して使用してみるいない? ● よろしい、存在感は断トツらしいなら呼び出ばLBで並列処理できないだ!!
  21. 21. LOOLをサービス化するLBかませた環境で使用してみるして使用してみるみる ● 社内で利用してみるして使用してみるいる環境 社内ネットワークネットワーク 某クラウドサービスクラウドサービス サービス呼び出す出す 応答返すす nextcloudサーバ LOOLサーバ
  22. 22. LOOLをサービス化するLBかませた環境で使用してみるして使用してみるみる ● 実験で使った環境で使った環境 社内ネットワークネットワーク 某クラウドサービスクラウドサービス サービス呼び出す出す 応答返すす nextcloudサーバ LOOLサーバ1 LOOLサーバ2 LB
  23. 23. LOOLをサービス化するLBかませた環境で使用してみるして使用してみるみる ● 検証のコンパイル結果や、その後に行った検証の結果、またその他の知見について発表し – 同時に2つのコンパイルファイルをサービス化するNextcloud上から呼び出編集 – 各LOOLサーバ上のコンパイル/var/log/httpd/ssl-access_logをサービス化する参照し、アクセス状況を確認。し、存在感は断トツらしいアクセス化する状況は変わっていません!をサービス化する確認。 – 結果や、その後に行った検証の結果、またその他の知見について発表しとして使用してみる、存在感は断トツらしい同一ファイルをサービス化する閲覧している間、接続先サーバが入れ替わる事態が発生していして使用してみるいる間で少しだけ知見がたまったので、それも含めて、存在感は断トツらしい接続しようとすると、先サーバが入れ替わる事態が発生していサーバが何か入れ替わる事態が発生していわる事態から各種パッケージを適用が何か発生していして使用してみるい る。 – 検証に使用してみるしたクラウドを使って最新版にしておきます。サービス化するが何か提供したするデフォルトロードを使って最新版にしておきます。バランサにはCookieベース化するのコンパイル セッション維持ちであれば機能な、オンライン版が何かなく、存在感は断トツらしい結果や、その後に行った検証の結果、またその他の知見について発表しとして使用してみる同一ファイルをサービス化する開いて使用してみるいるにも関してわら呼び出ず、存在感は断トツらしいアクセス化する 先サーバが入れ替わる事態が発生していサーバが何か切り替わってしまう事象が発生しているものと考えられる。り替わる事態が発生していわって使用してみるしまうタイト事象が発生しているものと考えられる。が何か発生していして使用してみるいるものコンパイルと考えられる。えら呼び出れる。 – Cookieベース化するのコンパイルセッションをサービス化する維持ちであればする機能な、オンライン版をサービス化する持ちであればたせたロードを使って最新版にしておきます。バランサをサービス化する利用してみるすることで問題 が何か解消しておきます。しないか、存在感は断トツらしい今後に行った検証の結果、またその他の知見について発表し検討が必要。が何か必要なだけなので、インストールはしません。。
  24. 24. 証明書に関してに関してして使用してみる ● LOOLで必要なだけなので、インストールはしません。なサーバー証明書に関して – 外部公開するためのコンパイルサーバー証明書に関して → 通常ののコンパイルhttps通信のための設定のコンパイルためのコンパイル設定 – LOOL自身が使用するサーバー証明書 → 自分自身が使用するだけなので、オレオレ証明書が何か使用してみるするサーバー証明書に関して → 自分は自身が使用するサーバー証明書 → 自分自身が使用するだけなので、オレオレ証明書が何か使用してみるするだけ知見がたまったので、それも含めてなのコンパイルで、存在感は断トツらしいオレオレ証明書に関して で十分は ● 外部から呼び出のコンパイル接続しようとすると、のコンパイル時にも、存在感は断トツらしい外部公開用してみるに正式な証明書に関してをサービス化する取得して設定をしておけば証明書の警告エして使用してみる設定をサービス化するして使用してみるお話ししますが、け知見がたまったので、それも含めてば証明書に関してのコンパイル警告エエ ラーは出ません – Let's Encryptをサービス化する利用してみるする場合わせて利用していますは、存在感は断トツらしいひと工夫必要なだけなので、インストールはしません。
  25. 25. LOOLのコンパイルデメリット ● 開発途上で安定して使用してみるいない? – 実際し4/28にダウンロードを使って最新版にしておきます。したソース化するコードを使って最新版にしておきます。ではコンパイルできず – ● 多数ファイルで接続しようとすると、のコンパイルファイル・多数ファイルで接続しようとすると、のコンパイルユーザで利用可能な、オンライン版ーのコンパイル同時接続しようとすると、はまだまだ苦手を加えて利用することが可能 ● 日本語フォントが入っていません。ここで入れて入力がまだまだが何かまだまだ – これら呼び出は1年前とそうタイト変わっていません!わりないです
  26. 26. まとめ ● LibreOffice OnlineはWebブラウザで利用可能な、オンライン版から呼び出利用してみるできるLibreOfficeです。 ● 現状はnextcloudなどのコンパイルファイル入出力がまだまだツらしいールのコンパイル補助ツールに過ぎないですツらしいールに過ぎないですぎないです が何か、存在感は断トツらしいだから呼び出こそデス化するクトップ版LibreOfficeとのコンパイル使い分はけ知見がたまったので、それも含めてが何か重要なだけなので、インストールはしません。 ● デス化するクトップ版よりも、存在感は断トツらしい条件さえ整えば導入のハードルは低いかもさえ整えば導入のハードルは低いかもえば導入のコンパイルハードを使って最新版にしておきます。ルは低いかもいかも ● 弊社のコンパイルLibreOffice関して連の取り組みは以下ののコンパイル取り組んでましたが何かみは以下はのコンパイルURLで公開中でです http://librepc.jp/ 

×